Building bcp with Jam V2 and como

I attempted to build bcp with Jam V2 and como under Win2k with the latest CVS source and the latest bjam.exe. My como installation is in H:\Utilities\Comeau directory and is already set up to use a back end compiler. I executed: bjam --v2 -sCOMO_PATH=H:\Utilities\Comeau -sTOOLS=como from the boost\tools\bcp directory and received this output indicating an error: "H:/Programming/Version Control/CVS/Home/boost/tools/build/v2/util\order.jam:38:in loaderror: no native rule "add-pair" defined in module "class@order." H:\Programming\Version Control\CVS\Home\boost\tools\build\v2/kernel\modules.jam:259: in import H:/Programming/Version Control/CVS/Home/boost/tools/build/v2/tools\unix.jam:16:in load H:\Programming\Version Control\CVS\Home\boost\tools\build\v2/kernel\modules.jam:259: in import H:/Programming/Version Control/CVS/Home/boost/tools/build/v2/build\toolset.jam:259: in toolset.inherit H:/Programming/Version Control/CVS/Home/boost/tools/build/v2/tools\gcc.jam:19: in load H:\Programming\Version Control\CVS\Home\boost\tools\build\v2/kernel\modules.jam:259: in import..\..\project-root.jam:2: in modules.load H:/Programming/Version Control/CVS/Home/boost/tools/build/v2/build\project-roots.jam:160: in object(project-root-object)@1.initialize H:/Programming/Version Control/CVS/Home/boost/tools/build/v2/build\project-roots.jam:52: in project-roots.load H:/Programming/Version Control/CVS/Home/boost/tools/build/v2/build\project.jam:61: in project.load H:/Programming/Version Control/CVS/Home/boost/tools/build/v2\build-system.jam:75: in load H:\Programming\Version Control\CVS\Home\boost\tools\build\v2/kernel\modules.jam:259: in import H:\Programming\Version Control\CVS\Home\boost\tools\build\v2/kernel/bootstrap.jam:120: in boost-build H:\Programming\Version Control\CVS\Home\boost\boost-build.jam:12: in module scope" What am I missing or what did I do wrong ? Finally it would be nice if Boost could distribute some batch files ( or Unix shells ) for each compiler toolset in which all the builder would have to do is to enter the mandatory information, as optional arguments since the environment variable might be already set, for that toolset in order to trigger off the build, rather than have to worry about command line arguments. I know the command line isn't complicated but anything to simplify the end user's or developer's burden in using Boost Build would get my vote. I have no doubt it is an excellent system, but it is a bear to learn, when all one wants is to simply build portions of Boost. I know this sounds lazy but then I am a very lazy programmer in all but programming and documentation where I am just mildly lazy <g> .

Edward Diener wrote:
I attempted to build bcp with Jam V2 and como under Win2k with the latest CVS source and the latest bjam.exe. My como installation is in H:\Utilities\Comeau directory and is already set up to use a back end compiler. I executed:
bjam --v2 -sCOMO_PATH=H:\Utilities\Comeau -sTOOLS=como
Wait a minute! Do you have Comeau toolset for V2? I'm asking because I'm not aware that it exists, and besides, the "-s" syntax is not used for any V2 toolset, and also "-sTOOLS" syntax is also not used for Boost.Build V2. So, it seems like you are trying to use Boost.Build V2 just like V1. For example, if Comeau toolset for V2 is written, one would put using comeau : : H:\Utilities\Comeau ; into user-config.jam and then run bjam --v2 comeau
from the boost\tools\bcp directory and received this output indicating an error:
"H:/Programming/Version Control/CVS/Home/boost/tools/build/v2/util\order.jam:38:in loaderror: no native rule "add-pair" defined in module "class@order."
Try updating your bjam and rebuilding it.
Finally it would be nice if Boost could distribute some batch files ( or Unix shells ) for each compiler toolset in which all the builder would have to do is to enter the mandatory information, as optional arguments since the environment variable might be already set, for that toolset in order to trigger off the build, rather than have to worry about command line arguments. I know the command line isn't complicated but anything to simplify the end user's or developer's burden in using Boost Build would get my vote. I have no doubt it is an excellent system, but it is a bear to learn, when all one wants is to simply build portions of Boost. I know this sounds lazy but then I am a very lazy programmer in all but programming and documentation where I am just mildly lazy <g> .
This possibly can be done. - Volodya

"Vladimir Prus" <ghost@cs.msu.su> wrote in message news:c48eli$5n8$1@sea.gmane.org...
Edward Diener wrote:
I attempted to build bcp with Jam V2 and como under Win2k with the latest CVS source and the latest bjam.exe. My como installation is in H:\Utilities\Comeau directory and is already set up to use a back end compiler. I executed:
bjam --v2 -sCOMO_PATH=H:\Utilities\Comeau -sTOOLS=como
Wait a minute! Do you have Comeau toolset for V2? I'm asking because I'm not aware that it exists
Comeau compiler ? Of course it exists. What do you mean by Comeau toolset for V2 ? Do you mean that bjam V2 does not support the toolsets that bjam V1 supports ? If this is the case, certainly it should be documented.
, and besides, the "-s" syntax is not used for any V2 toolset, and also "-sTOOLS" syntax is also not used for Boost.Build V2.
I had not realized that at all. I never dreamed that the bjam V2 command line syntax was incompatible with bjam V1. I am surmising now that one is really not supposed to be using bjam V2 at all yet, or that the documentation for using bjam V2 is incomplete. I naturally assumed that bjam V2 was usable, given the Jamfile.V2 files for each Jamfile.
So, it seems like you are trying to use Boost.Build V2 just like V1.
Yes, exactly.
For example, if Comeau toolset for V2 is written, one would put
using comeau : : H:\Utilities\Comeau ;
into user-config.jam and then run
bjam --v2 comeau
OK, evidently the way to use bjam V2, from the user's point of view, is different from bjam V1. I naively assumed that bjam V2 would support the same command line syntax as bjam V1 in ordser to be backward compatible. I have now looked at Boost.Build V2 User Manual. It appears much more complicated to use than V1 but I will follow the suggestion above and see if I can build it correctly. Thanks for the info !
from the boost\tools\bcp directory and received this output indicating
an
error:
"H:/Programming/Version Control/CVS/Home/boost/tools/build/v2/util\order.jam:38:in loaderror: no native rule "add-pair" defined in module "class@order."
Try updating your bjam and rebuilding it.
I have the latest bjam executable for Windows from sourceforge. Does this not support V2 ?

Edward Diener wrote:
Comeau compiler ? Of course it exists. What do you mean by Comeau toolset for V2 ? Do you mean that bjam V2 does not support the toolsets that bjam V1 supports ? If this is the case, certainly it should be documented.
I'll try to put V2-vs-V1 part into the docs.
Try updating your bjam and rebuilding it.
I have the latest bjam executable for Windows from sourceforge. Does this not support V2 ?
I'm afraid no. The error message you posted, for example, means that your bjam does not have a builtin feature that I've recently added for optimization purposes. - Volodya

"Edward Diener" <eddielee@tropicsoft.com> writes:
"Vladimir Prus" <ghost@cs.msu.su> wrote...
Edward Diener wrote:
I attempted to build bcp with Jam V2 and como under Win2k with the latest CVS source and the latest bjam.exe. My como installation is in H:\Utilities\Comeau directory and is already set up to use a back end compiler. I executed:
bjam --v2 -sCOMO_PATH=H:\Utilities\Comeau -sTOOLS=como
Wait a minute! Do you have Comeau toolset for V2? I'm asking because I'm not aware that it exists
Comeau compiler ?
No, a "comeau toolset" file.
Of course it exists. What do you mean by Comeau toolset for V2 ?
A file which interfaces Boost.Build with the Comeau compiler.
Do you mean that bjam V2 does not support the toolsets that bjam V1 supports ?
There's no bjam v2, only Boost.Build v2, but yeah, BBv2 doesn't support all the same toolsets as v1 yet.
If this is the case, certainly it should be documented.
You seem to overlook the fact that BBv2 is pre-release software. It isn't reasonable to expect it to have complete documentation or support for everything in v1 yet. We're going to get it to support the same toolsets as v1 does before it is released.
, and besides, the "-s" syntax is not used for any V2 toolset, and also "-sTOOLS" syntax is also not used for Boost.Build V2.
I had not realized that at all. I never dreamed that the bjam V2 command line syntax was incompatible with bjam V1.
That's one way to put it. It's a big improvement, and also a fairly big change.
I am surmising now that one is really not supposed to be using bjam V2 at all yet, or that the documentation for using bjam V2 is incomplete. I naturally assumed that bjam V2 was usable, given the Jamfile.V2 files for each Jamfile.
I guess natural assumptions aren't always safe assumptions ;->
So, it seems like you are trying to use Boost.Build V2 just like V1.
Yes, exactly.
For example, if Comeau toolset for V2 is written, one would put
using comeau : : H:\Utilities\Comeau ;
into user-config.jam and then run
bjam --v2 comeau
OK, evidently the way to use bjam V2, from the user's point of view, is different from bjam V1. I naively assumed that bjam V2 would support the same command line syntax as bjam V1 in ordser to be backward compatible. I have now looked at Boost.Build V2 User Manual. It appears much more complicated to use than V1 but I will follow the suggestion above and see if I can build it correctly. Thanks for the info !
It won't work until we have the v2 Comeau toolset. Maybe you should try BBv1 if you want BBv1 command-line compatibility ;-)
from the boost\tools\bcp directory and received this output indicating an error:
"H:/Programming/Version Control/CVS/Home/boost/tools/build/v2/util\order.jam:38:in loaderror: no native rule "add-pair" defined in module "class@order."
Try updating your bjam and rebuilding it.
I have the latest bjam executable for Windows from sourceforge. Does this not support V2 ?
BBv2 from CVS may use features not in any released bjam executable. The solution is to rebuild bjam. -- Dave Abrahams Boost Consulting www.boost-consulting.com

"David Abrahams" <dave@boost-consulting.com> wrote in message news:u65cmp69q.fsf@boost-consulting.com...
"Edward Diener" <eddielee@tropicsoft.com> writes:
Do you mean that bjam V2 does not support the toolsets that bjam V1 supports ?
There's no bjam v2, only Boost.Build v2, but yeah, BBv2 doesn't support all the same toolsets as v1 yet.
If this is the case, certainly it should be documented.
You seem to overlook the fact that BBv2 is pre-release software. It isn't reasonable to expect it to have complete documentation or support for everything in v1 yet. We're going to get it to support the same toolsets as v1 does before it is released.
OK, I certainly didn't realize this. I will stick with version 1 until version 2 is completed and ready for use. I do think, for those who want to try it, that the documentation should always be updated with a list of which toolsets are supported; otherwise it is a guessing game with which compilers it works as the natural asssumption, given no list, is that it works with the same set of compilers as version 1.

I attempted to build bcp with Jam V2 and como under Win2k with the latest CVS source and the latest bjam.exe. My como installation is in H:\Utilities\Comeau directory and is already set up to use a back end compiler.
I can't comment on bjam -v2, but it builds just fine with the usual bjam version 1, with VC7.1: bjam -sTOOLS=vc7.1 John.

John Maddock wrote:
I attempted to build bcp with Jam V2 and como under Win2k with the latest CVS source and the latest bjam.exe. My como installation is in H:\Utilities\Comeau directory and is already set up to use a back end compiler.
I can't comment on bjam -v2, but it builds just fine with the usual bjam version 1, with VC7.1:
bjam -sTOOLS=vc7.1
It doesn't build with bjam --v2. Should it ? There is a jamfile.v2 in the bcp directory. Is bjam version 2 and the Build System version 2 still works in progress which end users should not use. I can't make out whether version 2 is completed and errors should be reported when it doesn't work or whether I should stick with using version 1 and assume that version 2 will be ready sometime in the future. I also find the version 2 docs and explanations less than helpful. Any enlightenment on this situation would be welcome.

Edward Diener wrote:
John Maddock wrote:
I attempted to build bcp with Jam V2 and como under Win2k with the latest CVS source and the latest bjam.exe. My como installation is in H:\Utilities\Comeau directory and is already set up to use a back end compiler.
I can't comment on bjam -v2, but it builds just fine with the usual bjam version 1, with VC7.1:
bjam -sTOOLS=vc7.1
It doesn't build with bjam --v2. Should it ?
For a toolset supported by V2, it should. In particular, vc7.1 is supported and should work.
There is a jamfile.v2 in the bcp directory. Is bjam version 2 and the Build System version 2 still works in progress which end users should not use. I can't make out whether version 2 is completed and errors should be reported when it doesn't work or whether I should stick with using version 1 and assume that version 2 will be ready sometime in the future.
Definitely, errors should be reported and will be appreciated. V2 is not 100% ready (e.g. the "install" functionality is missing), but overall is expected to work. I use it daily to build both my project and Boost.
I also find the version 2 docs and explanations less than helpful. Any enlightenment on this situation would be welcome.
If you could report your observation at jamboost@yahoogroups.com mailing list we can see what can be improved. - Volodya
participants (4)
-
David Abrahams
-
Edward Diener
-
John Maddock
-
Vladimir Prus