|
View:
New views
6 Messages
—
Rating Filter:
Alert me
|
|
|
changing file output suffixesHi, (Originally posted in Boost-users, apologies for the
repetition :)). Our toolchain generates files ending in ".doj" for
objects, so I've been trying to configure my custom toolset module to use this.
My original module is based on acc.jam but qcc.jam had something that looked
like it would do the trick, so I lifted that and chucked into my module: import type ; type.set-generated-target-suffix
OBJ : <toolset>bfin : doj ; type.set-generated-target-suffix
STATIC_LIB : <toolset>bfin : dlb ; However my build of Boost now fails, with a fairly long
error tracing: smclemo@edin-angus /usr/src/boost_1_39_0 $ bjam toolset=bfin WARNING: No python installation configured and
autoconfiguration
failed. See http://www.boost.org/libs/python/doc/building.html
for configuration instructions or pass --without-python to
suppress this message and silently skip all Boost.Python targets Building C++ Boost. After the build, the headers will be located at C:\cygwin\usr\src\boost_1_39_0 The libraries will be located at
C:\cygwin\usr\src\boost_1_39_0\stage\lib Use 'bjam install --prefix=<path>' if you
wish to install headers and libraries to a different location and remove the
source tree. C:/cygwin/usr/src/boost_1_39_0/tools/build/v2/build\property.jam:613:
in find-replace from module object(property-map)@1 error: Ambiguous key <target-type>OBJ
<asynch-exceptions>off
<conditional>@Jamfile</C:/cygwin/usr/src/boost_1_39_0>%Jamfile</C:/cygwin/usr/src/boost_1_39_0>.handle-static-runtime
<debug-symbols>on <define>BOOST_ALL_NO_LIB=1
<define>BOOST_DATE_TIME_STATIC_LINK <define>DATE_TIME_INLINE
<exception-handling>on <extern-c-nothrow>off <hardcode-dll-paths>true
<host-os>windows <include>. <inlining>off
<install-dependencies>off <link>static <main-target-type>LIB
<optimization>off <os>NT <preserve-test-targets>on
<profiling>off <python-debugging>off <python>2.5
<rtti>on <runtime-debugging>on <runtime-link>shared
<stdlib>native <suppress-import-lib>false
<symlink-location>project-relative
<tag>@Jamfile</C:/cygwin/usr/src/boost_1_39_0>%Jamfile</C:/cygwin/usr/src/boost_1_39_0>.tag
<target-os>windows <target>object(file-target)@429
<threadapi>win32 <threading>multi
<toolset-bfin:version>8.0.7.1 <toolset>bfin
<user-interface>console <variant>debug
<warnings-as-errors>off <warnings>on <snip> I'm guessing I'm doing something probably a bit stupid or
missing something (I'm still at the fiddling around stage yet, so this is very
likely). I've attached the module (bfin.jam) - hopefully someone is able to
point me in the right direction. Thanks, - Sean _______________________________________________ Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost-build |
|
|
Re: changing file output suffixesOn Friday 26 June 2009 McLemon, Sean wrote:
> Hi, > > > > (Originally posted in Boost-users, apologies for the repetition :)). Our > toolchain generates files ending in ".doj" for objects, so I've been > trying to configure my custom toolset module to use this. My original > module is based on acc.jam but qcc.jam had something that looked like it > would do the trick, so I lifted that and chucked into my module: > > > > import type ; > > > > type.set-generated-target-suffix OBJ : <toolset>bfin : doj ; > > type.set-generated-target-suffix STATIC_LIB : <toolset>bfin : dlb ; Try adding target-os=linux to command line. If you are on cygwin, then cygwin is the default value of target-os -- and I presume your are not actually creating cygwin binaries. Let me know if you want an extra value of target-os, or if you want a certain error message if trying to you bfin toolset with inappropriate target os. - Volodya _______________________________________________ Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost-build |
|
|
Re: changing file output suffixes> Try adding
> > target-os=linux > > to command line. Thanks! It's good that my objects are now building - but supplying target-os=linux does seem a little strange as I'm not really building for any OS. Another target may be an idea, but it's not a huge deal: target-os=none, or target-os=bare_metal perhaps. Also, even though the object files are being created correctly I'm getting "the system cannot find the path specified", eg: /c/analog/tools5.0_andromeda/ccblkfn -c -DBOOST_ALL_NO_LIB=1 -DBOOST_MATH_TR1_DYN_LINK=1 -DNDEBUG -O -always-inline -threads -eh -I"." -o "bin.v2\libs\math\build\bfin-8.0.7.1\release\target-os-linux\threading-m ulti\acosh.doj" "libs\math\build\..\src\tr1\acosh.cpp" -D_LITTLE_ENDIAN -c++ -full-cpplib ...failed bfin.compile.c++ bin.v2\libs\math\build\bfin-8.0.7.1\release\target-os-linux\threading-mu lti\acosh.doj... bfin.compile.c++ bin.v2\libs\math\build\bfin-8.0.7.1\release\target-os-linux\threading-mu lti\asinh.doj The system cannot find the path specified. ... etc Afterwards I manually verified that the files exist, and they do. - Sean _______________________________________________ Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost-build |
|
|
Re: changing file output suffixesOn Friday 26 June 2009 McLemon, Sean wrote:
> > Try adding > > > > target-os=linux > > > > to command line. > Thanks! It's good that my objects are now building - but supplying > target-os=linux does seem a little strange as I'm not really building > for any OS. Another target may be an idea, but it's not a huge deal: > target-os=none, or target-os=bare_metal perhaps. GCC uses 'eabi' and 'elf' on some targets to mean bare metal. We can either use those, in indeed introduce 'bare' as target-os. > Also, even though the object files are being created correctly I'm > getting "the system cannot find the path specified", eg: > > /c/analog/tools5.0_andromeda/ccblkfn -c -DBOOST_ALL_NO_LIB=1 > -DBOOST_MATH_TR1_DYN_LINK=1 -DNDEBUG -O -always-inline -threads -eh > -I"." -o > "bin.v2\libs\math\build\bfin-8.0.7.1\release\target-os-linux\threading-m > ulti\acosh.doj" "libs\math\build\..\src\tr1\acosh.cpp" > -D_LITTLE_ENDIAN -c++ -full-cpplib > > ...failed bfin.compile.c++ > bin.v2\libs\math\build\bfin-8.0.7.1\release\target-os-linux\threading-mu > lti\acosh.doj... > bfin.compile.c++ > bin.v2\libs\math\build\bfin-8.0.7.1\release\target-os-linux\threading-mu > lti\asinh.doj > The system cannot find the path specified. > > ... etc > > Afterwards I manually verified that the files exist, and they do. I'm confused. Are the object files created? (Which would suggest that error message comes from compiler) Or the compilation fails, while the /c/analog/tools5.0_andromeda/ccblkfn file exists? I'd suggest you try to specify the path using Windows paths and see what happens. - Volodya _______________________________________________ Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost-build |
|
|
Re: changing file output suffixes> GCC uses 'eabi' and 'elf' on some targets to mean bare metal. We can
> either > use those, in indeed introduce 'bare' as target-os. I think "elf" makes more sense. If it's possible that would be a useful addition for us. > I'm confused. Are the object files created? (Which would suggest that > error > message comes from compiler) Or the compilation fails, while the > /c/analog/tools5.0_andromeda/ccblkfn file exists? I'd suggest you try > to > specify the path using Windows paths and see what happens. Quite embarassingly I think we can chalk this one up to "User error" :) When I changed the "using bfin: ..." line in my user-config.jam to the below (i.e. using windows paths) I no longer get the message (I do get a wonderful compiler crash, but that is due to using an non-mature development compiler): using bfin : 8.0.7.1 : c:/analog/tools5.0_andromeda/ccblkfn ; Thanks again for your help, Volodya - Sean _______________________________________________ Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost-build |
|
|
Re: changing file output suffixesOn Tuesday 30 June 2009 McLemon, Sean wrote:
> > GCC uses 'eabi' and 'elf' on some targets to mean bare metal. We can > > either > > use those, in indeed introduce 'bare' as target-os. Hi Sean, > I think "elf" makes more sense. If it's possible that would be a useful > addition for us. I've added 'elf' as a new value of target-os. > > I'm confused. Are the object files created? (Which would suggest that > > error > > message comes from compiler) Or the compilation fails, while the > > /c/analog/tools5.0_andromeda/ccblkfn file exists? I'd suggest you try > > to > > specify the path using Windows paths and see what happens. > > Quite embarassingly I think we can chalk this one up to "User error" :) > When I changed the "using bfin: ..." line in my user-config.jam to the > below (i.e. using windows paths) I no longer get the message (I do get a > wonderful compiler crash, but that is due to using an non-mature > development compiler): > > using bfin : 8.0.7.1 : c:/analog/tools5.0_andromeda/ccblkfn ; Good to know it's not Boost.Build fault :-). Should you need any further tweaks from Boost.Build, let us know. Hopefully support for your compiler can be added to SVN in near future. - Volodya _______________________________________________ Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost-build |
| Free embeddable forum powered by Nabble | Forum Help |