« Return to Thread: help with boost 1.35 variant specification

Re: help with boost 1.35 variant specification

by ki11roy :: Rate this Message:

Reply to Author | View in Thread

Volodya,

It means that ICU library compiled with another version of compiler (gcc in this case), so it leads to problems with Boost.Regex compilation. I've solved this by rebuilding of ICU from sources with my current version of GCC.

WBR,
Andrew

Vladimir Prus wrote:
Steve M. Robbins wrote:

> Hi,
>
> We have been building boost (up to 1.34.1) for Debian/linux using
>
> $(JAM) variant=release,debug threading=single,multi
>
> where $(JAM) is the path to bjam (built from the boost sources)
> together with the options -d2, --user-config and -sHAVE_ICU=1.
>
> The user config file contains:
>
>   using gcc : 4.2 : g++-4.2 : <define>_REENTRANT ;
>   using python : 2.4 : /usr ;
>   using python : 2.5 : /usr ;
>
>
> This always resulted in four static libraries and four
> shared libraries for, say, the date-time library.
>
> With 1.35, however, I get the four shared libs but only one
> static lib:
>
>   steve@riemann{boost_1_35_0}grep 'gcc.link.dll.*date' ../boost_1.35.0-1_i386.build
>   gcc.link.dll bin.v2/libs/date_time/build/gcc-4.2/release/libboost_date_time-gcc42-1_35.so.1.35.0
>   gcc.link.dll
>  
bin.v2/libs/date_time/build/gcc-4.2/release/threading-multi/libboost_date_time-gcc42-mt-1_35.so.1.35.0
>   gcc.link.dll bin.v2/libs/date_time/build/gcc-4.2/debug/libboost_date_time-gcc42-d-1_35.so.1.35.0
>   gcc.link.dll
>  
bin.v2/libs/date_time/build/gcc-4.2/debug/threading-multi/libboost_date_time-gcc42-mt-d-1_35.so.1.35.0
>
>   steve@riemann{boost_1_35_0}grep 'gcc.archive.*date' ../boost_1.35.0-1_i386.build
>   gcc.archive
>   ../../../bin.v2/libs/date_time/build/gcc-4.2/release/link-static/threading-multi/libboost_date_time-gcc42-mt-1_35.a
>
> How do I get all 8 library builds back?

Assuming you really want those 8 library variants (just in case -- which other libraries
in Debian build that many?) you can use:

        $(JAM) variant=release,debug threading=single,multi link=shared,static

> I have read a couple of posts about --build-type=complete, so I tried adding that to $(JAM),
> but this gives a completely inpenetrable error:
>
> Skipping build of:  ./headers  <build>no in common properties
> Skipping build of:  ./build_all  <build>no in common properties
> Skipping build of:  libs/regex/build/icucore  <build>no in common properties
> Skipping build of:  libs/regex/build/icuin  <build>no in common properties
> Skipping build of:  libs/regex/build/icudata  <build>no in common properties
> /usr/local/src/Packages/boost/upstream/1.35/boost_1_35_0/tools/build/v2/kernel/class.jam:93: in
> new *** argument error
> * rule object(searched-lib-target)@2059.__init__ ( name : project : shared ? : search * : action )
> * called with: ( icudata icui18n icuuc : object(project-target)@212 : true :  :
> object(null-action)@2058 :  :  :  :  ) * extra argument icui18n
.........
> /usr/local/src/Packages/boost/upstream/1.35/boost_1_35_0/tools/build/v2/kernel/bootstrap.jam:132:
> in boost-build /usr/local/src/Packages/boost/upstream/1.35/boost_1_35_0/boost-build.jam:11: in
> module scope make: *** [build-stamp] Error 1
>
> What does this mean: did I invoke bjam incorrectly or is some jam file broken?

I don't understand what that means, either. Can you provide the output with extra --debug-building
option? Might be that building regex statically got broken somehow.

- Volodya


_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost-build

 « Return to Thread: help with boost 1.35 variant specification