Including Relevant Boost Libraries with C++ Source (Using Visual Studio)
I have a project I'm working on (for school) that I'm digging into the Boost libraries for the solutions. I need some way to distribute the required Boost source code with my application so that it can be compiled without the libraries being installed on the system doing the compiling. (School computers lack just about anything you can mention. The school just installed CVS last year. But they do have VS2005)
Note: I'm using Visual Studio 2005 on Vista. I have Boost 1.34.1 on my system I used the . The documentation I've come across says something about using BCP command but that command doesn't seem to copy anything. (I'm using absolute path to call BCP so I don't end up calling the wrong command.)
Edit: I am trying to use the RegEx libraries.
Edit: The command I'm using for BCP is:
"c:\Program Files\boost\boost_1_34_1\bin\bcp.exe" boost/regex.hpp regex\
And it returns:
no errors detected
It relies on the collection you are making use of. If you are making use of a header - just collection (a lot of the boost collections are, some remarkable exemptions are signals, serialisation and also date/time) you can simply replicate those header documents. Or else you'll require to replicate the cpp documents, also. My pointer is to simply include them right into your task.
So, below is what you do: you remove the boost include course from your task setups (device - >options - >projects and also remedies - >vc+npls directory sites - >include documents). Attempt to compile. Consider that include falls short. Replicate that documents from your boost directory site to your task directory site. Soap, rinse, repeat till your task assembles.
If you are making use of a collection that requires.cpp documents, you'll get a mistake at link time. Replicate all.cpp documents of the collection you make use of to your task directory site and also add them all to your remedy. Restore and also go across fingers.
For an extra thorough solution, please blog post which collections you are making use of.
I've found this prior to, installing boost right into my tasks. Each specific boost collection features numerous task apply for constructing with various make systems (Jam, make, Visual Studio 6
I constantly favor to create a new task documents and also installed boost straight right into my task. It is rather straightforward, you simply require to add every one of the resource documents and also set the task alternatives effectively. There is one caution, nonetheless, which is you have to call the collection result documents the as boost does, due to the fact that their include documents rely on that.
As soon as you've done this, you can disperse the boost collections similar to any kind of various other documents in your task.
This appears a little bit weird to me. If you are dispersing resource code, after that individuals you are dispersing to need to have the ability to install boost. After that if they currently have boost, there is no replication and also complication, or if they do not and also you require a constructed collection, they will certainly construct the proper collection for their system. If individuals you are dispersing are unqualified mounting boost, after that I would certainly recommend dispersing binaries in an install plan to make it as very easy as feasible for them.