Sponsored Content
Top Forums Programming Using boost in program created by g++ Post 302750539 by kbw on Tuesday 1st of January 2013 07:03:16 PM
Old 01-01-2013
You haven't said what you want to do with the path processing. But you can use strchr() to get each directory or use strrchr() to get to the filename directly.

Regarding your build system, I think it's best to have a make file in each program directory, then have a single make file in the top level program directory that calls the others. You can do it like this:
Code:
SUBDIRS = getmisfit getpdf getvel raytrac rdt 

.PHONY: subdirs $(SUBDIRS)

subdirs: $(SUBDIRS)

$(SUBDIRS):
        $(MAKE) -C $@

See: GNU `make'

Also, GNU Make has a lot of built in rules. It already defines CC and CXX macros for the C and C++ compilers. Flags common to both compilers are set with CPPFLAGS and LDFLAGS for linker options.

As your set of programs probably all need common paths, you should set them in a separate make include file in the programs directory.

The raytrac make file will look something like:
Code:
include "../common.mk"

OBJS: raytrac

all: raytrac

clean:
        -rm raytrac *.o

raytrac: $(OBJS)
        $(LINK.cc) $^ -o $@
        cp $@ $(BIN)

Do that for each project.

common.mk has:
Code:
BIN = ../../bin/
CXXFLAGS += ../../library/boost_52_0/
LDFLAGS += -L ../../library/boost_52_0/libs -l <libname>

Clearly you don't need to specify Boost if you're not using it (by using the string routines instead).

LINKcc is GNU Make's C++ link rule. You can see all the rules by running:
Code:
make -p

 

7 More Discussions You Might Find Interesting

1. Linux

How do I boost the Linux performace

Hi All, I installed Linux recently on my PC and finding it difficult to boost its performance. It takes hell lot of time to open Mozilla, text pad , & even the booting process is too slow, many a times I got to manually power off to shutdown the computer. I will be glad if you could help me... (18 Replies)
Discussion started by: jayfriend
18 Replies

2. Solaris

Sun Studio 10 + Boost 1.36

Is it possible to build Boost 1.35 using Sun Studio 10? I can build Boost 1.35 using Sun Studio 11 successful. However, i'm unable to build it using Sun Studio 10 using the exact method. I really apprecaite if any expert can help on this. Thanks, (2 Replies)
Discussion started by: shingpui
2 Replies

3. Solaris

boost thread not accessible to boost::move error

Hi All I am working unders Sun Solaris and I am not "/opt/boost/boost/thread/detail/thread.hpp", line 344: Error: boost::thread::thread(boost::thread&) is not accessible from boost::move(boost::detail::thread_move_t<boost::thread>). Do you know if there are other solutions other than... (2 Replies)
Discussion started by: manustone
2 Replies

4. Programming

Boost C++ ASIO Networking

Hi, Based on the following example in the Boost C++ website: www. boost.org/doc/libs/1_47_0/doc/html/boost_asio/example/echo/async_tcp_echo_server.cpp]doc/html/boost_asio/example/echo/async_tcp_echo_server.cpp I tried to create a similar TCP server that waits to accept a client connection... (0 Replies)
Discussion started by: tanlccc
0 Replies

5. Solaris

how to install boost 1_49_0 in solaris

hi guys, i downloaded boost1_49_0 tar.gz... then unzip and untar... how to install boost 1_49_0 in solaris plz help me (1 Reply)
Discussion started by: coolboys
1 Replies

6. UNIX for Dummies Questions & Answers

How do I declare boost?

Hello all, I am trying to "make" a database system, VDB (Veritas Data Base), and when I run "make" I receive the following error: VDBException.h:19: error: expected `)' before '*' token VDBException.h:20: error: expected `)' before '*' token VDBException.h:43: error: expected `)' before '*'... (4 Replies)
Discussion started by: Tyler_92
4 Replies

7. Programming

Boost.Test and CMake

Hi, I just started using CMake and the Boost Libraries. In this progress I encountered some problems. One of these problems is combining Boost unit tests with cmake. I don't know how to set the whole project up. I tried to set up a simple test project. This contains a main.cpp a comp.cpp and the... (0 Replies)
Discussion started by: ElCoyote
0 Replies
Locale::Codes::LangFam(3pm)				 Perl Programmers Reference Guide			       Locale::Codes::LangFam(3pm)

NAME
Locale::Codes::LangFam - standard codes for language extension identification SYNOPSIS
use Locale::Codes::LangFam; $lext = code2langfam('apa'); # $lext gets 'Apache languages' $code = langfam2code('Apache languages'); # $code gets 'apa' @codes = all_langfam_codes(); @names = all_langfam_names(); DESCRIPTION
The "Locale::Codes::LangFam" module provides access to standard codes used for identifying language families, such as those as defined in ISO 639-5. Most of the routines take an optional additional argument which specifies the code set to use. If not specified, the default ISO 639-5 language family codes will be used. SUPPORTED CODE SETS
There are several different code sets you can use for identifying language families. A code set may be specified using either a name, or a constant that is automatically exported by this module. For example, the two are equivalent: $lext = code2langfam('apa','alpha'); $lext = code2langfam('apa',LOCALE_LANGFAM_ALPHA); The codesets currently supported are: alpha This is the set of three-letter (lowercase) codes from ISO 639-5 such as 'apa' for Apache languages. This is the default code set. ROUTINES
code2langfam ( CODE [,CODESET] ) langfam2code ( NAME [,CODESET] ) langfam_code2code ( CODE ,CODESET ,CODESET2 ) all_langfam_codes ( [CODESET] ) all_langfam_names ( [CODESET] ) Locale::Codes::LangFam::rename_langfam ( CODE ,NEW_NAME [,CODESET] ) Locale::Codes::LangFam::add_langfam ( CODE ,NAME [,CODESET] ) Locale::Codes::LangFam::delete_langfam ( CODE [,CODESET] ) Locale::Codes::LangFam::add_langfam_alias ( NAME ,NEW_NAME ) Locale::Codes::LangFam::delete_langfam_alias ( NAME ) Locale::Codes::LangFam::rename_langfam_code ( CODE ,NEW_CODE [,CODESET] ) Locale::Codes::LangFam::add_langfam_code_alias ( CODE ,NEW_CODE [,CODESET] ) Locale::Codes::LangFam::delete_langfam_code_alias ( CODE [,CODESET] ) These routines are all documented in the Locale::Codes::API man page. SEE ALSO
Locale::Codes The Locale-Codes distribution. Locale::Codes::API The list of functions supported by this module. http://www.loc.gov/standards/iso639-5/id.php ISO 639-5 . AUTHOR
See Locale::Codes for full author history. Currently maintained by Sullivan Beck (sbeck@cpan.org). COPYRIGHT
Copyright (c) 2011-2013 Sullivan Beck This module is free software; you can redistribute it and/or modify it under the same terms as Perl itself. perl v5.18.2 2013-11-04 Locale::Codes::LangFam(3pm)
All times are GMT -4. The time now is 12:40 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy