bjam: rule SubInclude unknown in module Jamfile
Hi, I'm trying to make pmade software's netxx package available via darwinports, but I'm running into some trouble from bjam. In particular, while doing the build, bjam fails like this: ... DEBUG: Assembled command: 'cd "/Users/andrestechert/darwinports/dports-local/devel/netxx/work/netxx -0.4.2" && NETXX_JAM=bjam MACOSX_DEPLOYMENT_TARGET=10.3 bjam --prefix=/opt/local -sTOOLS=darwin -sBOOST_BUILD_PATH=/opt/local/share/boost-build/' Jamfile:4: in modules.load rule SubInclude unknown in module Jamfile. /opt/local/share/boost-build/build/project.jam:255: in load-jamfile /opt/local/share/boost-build/build/project.jam:67: in project.load /opt/local/share/boost-build/build-system.jam:75: in load /opt/local/share/boost-build//kernel/modules.jam:259: in import /opt/local/share/boost-build//kernel/bootstrap.jam:120: in boost-build /opt/local/share/boost-build//boost-build.jam:1: in module scope ... I can't find any related bugs in the archive and strings `which bjam` | grep SubInclude yields: rule SubInclude which indicates to me that jambase.c is properly including SubInclude into the bjam binary. Anyone have a hint as to why bjam wouldn't be able to find the SubInclude rule? Apologies if this is a newbie question, this is my first adventure with boost.jam... Thanks in advance, Andre
Andre Stechert wrote:
Apologies if this is a newbie question, this is my first adventure with boost.jam...
It's actually a Perforce/Jam question. SubInclude is a rule present in the Perforce/Jam build system. For Boost.Build that rule is not present. The reason it's not present for you is that you are invoking "bjam", which *only* includes the Boost.Build functionality. If you want the Perforce functionality you need to invoke it as "jam". In Darwin/MacOSX that will likely invoke the Apple supplied jam instead of Boost.Jam which is likely what you really want. But if you instead want to invoke Boost.Jam with the Perforce behavior link or copy "bjam" to make it available as "jam", and execute that. -- -- Grafik - Don't Assume Anything -- Redshift Software, Inc. - http://redshift-software.com -- rrivera/acm.org - grafik/redshift-software.com - 102708583/icq
Thanks very much for the prompt and spot-on answer. cd /opt/local/bin sudo ln -s bjam jam followed by the usual darwinports build commands worked very nicely. The /opt/local/... stuff is a darwinports-ism. Cheers, Andre On Mar 7, 2005, at 5:26 PM, Rene Rivera wrote:
Andre Stechert wrote:
Apologies if this is a newbie question, this is my first adventure with boost.jam...
It's actually a Perforce/Jam question. SubInclude is a rule present in the Perforce/Jam build system. For Boost.Build that rule is not present. The reason it's not present for you is that you are invoking "bjam", which *only* includes the Boost.Build functionality. If you want the Perforce functionality you need to invoke it as "jam". In Darwin/MacOSX that will likely invoke the Apple supplied jam instead of Boost.Jam which is likely what you really want. But if you instead want to invoke Boost.Jam with the Perforce behavior link or copy "bjam" to make it available as "jam", and execute that.
-- -- Grafik - Don't Assume Anything -- Redshift Software, Inc. - http://redshift-software.com -- rrivera/acm.org - grafik/redshift-software.com - 102708583/icq
_______________________________________________ Boost-users mailing list Boost-users@lists.boost.org http://lists.boost.org/mailman/listinfo.cgi/boost-users
spelunk vb: explore natural caves splunk vb : explore IT infrastructure
Andre Stechert
Hi,
I'm trying to make pmade software's netxx package available via darwinports, but I'm running into some trouble from bjam. In particular, while doing the build, bjam fails like this:
... DEBUG: Assembled command: 'cd "/Users/andrestechert/darwinports/dports-local/devel/netxx/work/netxx-0.4.2" && NETXX_JAM=bjam MACOSX_DEPLOYMENT_TARGET=10.3 bjam --prefix=/opt/local -sTOOLS=darwin -sBOOST_BUILD_PATH=/opt/local/share/boost-build/' Jamfile:4: in modules.load rule SubInclude unknown in module Jamfile. /opt/local/share/boost-build/build/project.jam:255: in load-jamfile /opt/local/share/boost-build/build/project.jam:67: in project.load /opt/local/share/boost-build/build-system.jam:75: in load /opt/local/share/boost-build//kernel/modules.jam:259: in import /opt/local/share/boost-build//kernel/bootstrap.jam:120: in boost-build /opt/local/share/boost-build//boost-build.jam:1: in module scope ...
I can't find any related bugs in the archive and
strings `which bjam` | grep SubInclude
yields:
rule SubInclude
The bjam executable's behavior depens on its name. If argv[0] isn't "bjam," it will act differently. It appears in your case argv[0] might be "NETXX_JAM=bjam". -- Dave Abrahams Boost Consulting www.boost-consulting.com
participants (3)
-
Andre Stechert
-
David Abrahams
-
Rene Rivera