
I'm updating a small C program to take in a options from either environment variables, or a config file and having long heard of boost as a great resource decided to give the program_options module a try. Since the utility is small and I don't have any current plans for other boost functionality it doesn't make sense to include the full BOOST library, so I tried to use bcp to get only the files I'm interested in. I was able to get a subset of boost code that I should be able to use with bcp, however I don't know how to compile the program_options library for linking in my code.
From a bit of googling it looks like bjam is the build tool, but it doesn't seem to be included with the subset of files I have.
How would I go about incorporating boost so that all of the necessary source and associated utilities are included for an end user to build from. I should be able to issue a series of simple commands (looks like ./bootstrap.sh and make) to build and install my library with statically linked in boost. -Will Voorhees

Hi, On Mon, Jun 27, 2011 at 10:17 PM, William Voorhees <voorhees@cs.uoregon.edu>wrote:
I'm updating a small C program to take in a options from either environment variables, or a config file and having long heard of boost as a great resource decided to give the program_options module a try. Since the utility is small and I don't have any current plans for other boost functionality it doesn't make sense to include the full BOOST library, so I tried to use bcp to get only the files I'm interested in. I was able to get a subset of boost code that I should be able to use with bcp, however I don't know how to compile the program_options library for linking in my code.
I have a similar problem. I want to pack boost together with an application, but want to save space. I've used bcp to get only the necessary headers, but I'm having trouble generating the libraries. First, I issued the following bcp command to copy the required libraries to /boost_minimal/boost find /path/to/my/app | xargs {} bcp --scan {} /boost_minimal As Voorhees said, no building script is copied. In my case, I manually copied all files at the root of the original directory and the tools directory. Then I ran ./bootstrap.sh --prefix=/some/dir ./bjam ./bjam install It generated headers in /some/dir/include, but no libraries in /some/dir/lib, which would happen if I did this on the original boost dir. I guess I'm missing some step when copying the build files to boost_minimal. I also don't know how to do that with rypplite tool (because I don't know beforehand which libraries to get). Can anyone help me? Thanks!
From a bit of googling it looks like bjam is the build tool, but it doesn't seem to be included with the subset of files I have.
How would I go about incorporating boost so that all of the necessary source and associated utilities are included for an end user to build from. I should be able to issue a series of simple commands (looks like ./bootstrap.sh and make) to build and install my library with statically linked in boost.
-Will Voorhees _______________________________________________ Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost

First, I issued the following bcp command to copy the required libraries to /boost_minimal/boost
find /path/to/my/app | xargs {} bcp --scan {} /boost_minimal
As Voorhees said, no building script is copied.
By default bcp copies source files, but not Boost.Build, you can get Boost.Build as well with a: bcp build /boost_minimal Unfortunately, someone has added a new vital build file (boostcpp) to root which doesn't get copied.... I'll fix that in bcp.
In my case, I manually copied all files at the root of the original directory and the tools directory. Then I ran
./bootstrap.sh --prefix=/some/dir ./bjam ./bjam install
It generated headers in /some/dir/include, but no libraries in /some/dir/lib, which would happen if I did this on the original boost dir. I guess I'm missing some step when copying the build files to boost_minimal.
Not necessarily: is there actually anything for it to build? Remember a lot of Boost is header only - which libraries are you missing? HTH, John.

Hi, thanks for your answer. On Sun, Aug 14, 2011 at 9:01 AM, John Maddock <boost.regex@virgin.net>wrote:
First, I issued the following bcp command to copy the required libraries
to /boost_minimal/boost
find /path/to/my/app | xargs {} bcp --scan {} /boost_minimal
As Voorhees said, no building script is copied.
By default bcp copies source files, but not Boost.Build, you can get Boost.Build as well with a:
bcp build /boost_minimal
Unfortunately, someone has added a new vital build file (boostcpp) to root which doesn't get copied.... I'll fix that in bcp.
This command also does not copy bootstrap.*. Am I missing another command?
In my case, I manually
copied all files at the root of the original directory and the tools directory. Then I ran
./bootstrap.sh --prefix=/some/dir ./bjam ./bjam install
It generated headers in /some/dir/include, but no libraries in /some/dir/lib, which would happen if I did this on the original boost dir. I guess I'm missing some step when copying the build files to boost_minimal.
Not necessarily: is there actually anything for it to build? Remember a lot of Boost is header only - which libraries are you missing?
I think so, bcp copied filesystem, regex, python and thread. Actually, I was using --boost=<path to boost include/libs>. Changing it to --boost=<path to boost sources> made the libs dir to be copied too. But now I'm getting a build error: error: Unable to find file or target named error: '../../filesystem/build//boost_filesystem' error: referred from project at error: 'libs/wave/build' It seems the build script is missing something or did I miss some step? Thanks,
HTH, John. ______________________________**_________________ Unsubscribe & other changes: http://lists.boost.org/** mailman/listinfo.cgi/boost<http://lists.boost.org/mailman/listinfo.cgi/boost>

On Tue, Aug 16, 2011 at 10:40 AM, Guilherme Kunigami <kunigami.dev@gmail.com
wrote:
Hi, thanks for your answer.
On Sun, Aug 14, 2011 at 9:01 AM, John Maddock <boost.regex@virgin.net>wrote:
First, I issued the following bcp command to copy the required libraries
to /boost_minimal/boost
find /path/to/my/app | xargs {} bcp --scan {} /boost_minimal
As Voorhees said, no building script is copied.
By default bcp copies source files, but not Boost.Build, you can get Boost.Build as well with a:
bcp build /boost_minimal
Unfortunately, someone has added a new vital build file (boostcpp) to root which doesn't get copied.... I'll fix that in bcp.
This command also does not copy bootstrap.*. Am I missing another command?
In my case, I manually
copied all files at the root of the original directory and the tools directory. Then I ran
./bootstrap.sh --prefix=/some/dir ./bjam ./bjam install
It generated headers in /some/dir/include, but no libraries in /some/dir/lib, which would happen if I did this on the original boost dir. I guess I'm missing some step when copying the build files to boost_minimal.
Not necessarily: is there actually anything for it to build? Remember a lot of Boost is header only - which libraries are you missing?
I think so, bcp copied filesystem, regex, python and thread.
Actually, I was using --boost=<path to boost include/libs>. Changing it to --boost=<path to boost sources> made the libs dir to be copied too.
But now I'm getting a build error:
error: Unable to find file or target named error: '../../filesystem/build//boost_filesystem' error: referred from project at error: 'libs/wave/build'
Adding the filesystem library explicitly with "bcp fylesystem ..." did the trick, but that's strange it was not added in the first place.
It seems the build script is missing something or did I miss some step?
Thanks,
HTH, John. ______________________________**_________________ Unsubscribe & other changes: http://lists.boost.org/** mailman/listinfo.cgi/boost<http://lists.boost.org/mailman/listinfo.cgi/boost>

But now I'm getting a build error:
error: Unable to find file or target named error: '../../filesystem/build//boost_filesystem' error: referred from project at error: 'libs/wave/build'
Adding the filesystem library explicitly with "bcp fylesystem ..." did the trick, but that's strange it was not added in the first place.
It's a bug - or rather filesystem doesn't follow the normal Boost directory convention which means the source files and build script weren't auto-magically found. Will fix shortly, John.
participants (3)
-
Guilherme Kunigami
-
John Maddock
-
William Voorhees