Hello, 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 This seems to fail as it brings up the usage screen instead of producing anything useful, how can I get it to work correctly? even going into the boost subdirectory and pointing to a destination of /int_ptr gave the same result. 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? Thanks very much, Geoff
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 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.
This seems to fail as it brings up the usage screen instead of producing anything useful, how can I get it to work correctly? even going into the boost subdirectory and pointing to a destination of /int_ptr gave the same result.
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.
AMDG 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
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? In Christ, Steven Watanabe
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
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.
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
John Maddock wrote:
Whatever gets me boost::intrusive_ptr... Does that mean I should be importing smart_ptr instead?
Yes, that's the library containing intrusive_ptr. But if you just want the headers then boost/intrusive_ptr.hpp will bring in fewer dependencies still.
John.
That's great, and even better! Now about that patch which modifies defines and namespace names, do you or does anyone else know who wrote it? Maybe they still have it and could submit it now..
participants (3)
-
Geoff Hilton
-
John Maddock
-
Steven Watanabe