John Maddock wrote:
I've been reconsidering the use of bcp to import boost code into a public-facing portion of our api for intrusive_ptr, I've read the documentation somewhat, and tried using the command as follows:
C:\Program Files\boost\boost_1_41_0\>bcp intrusive_ptr ../../intrusive_ptr
What directory is it being run from? If it doesn't know where the Boost root directory is then the "intrusive_ptr" arg will be flagged as an error leading to the help screen. So either... use the --boost=path option to set the location of the boost tree, or else cd into Boost's root directory and:
bcp boost/intrusive_ptr.hpp destination-path
to get just the header and it's dependencies, or else:
bcp intrusive destination-path
Well this is embarrassing. C:\Program Files\boost\boost_1_41_0>bcp -v BCP - Bulk Copy Program for Microsoft SQL Server. Copyright (c) 1991-1998, Microsoft Corp. All Rights Reserved. Version: 9.00.4035.00 Woops! Apparently I assumed I had already compiled it.
to get all of the "intrusive" library and it's dependencies - including those of the example and test programs - ie quite a lot of code.
Using "intrusive_ptr" as a name failed, because there is no such library name in boost... it's spelled "intrusive" instead.
Do you mean smart_ptr instead of intrusive?
Ah, yes quite right, good catch!
Thanks, John.
Whatever gets me boost::intrusive_ptr... Does that mean I should be importing smart_ptr instead?
Also, I read about a way to rename the namespaces/defines in boost to limit/prevent clashing with client code, how do I go about triggering this?
It's not present in bcp - there was a modified version, but the changes/patches never got submitted :-(
You would need to contact the original author of those messages for more info.
HTH, John.
The thread that prompted me to ask about the namespace/defines renaming is here http://lists.boost.org/Archives/boost/2005/09/93902.php . How might we go about tracking down the original author of these fabled patches? I've searched all the boost lists in Thunderbird with "[boost][tools][bcp]" (as per the subject of the linked message) without success. Thanks very much for your replies and help! Geoff