|
Boost Users : |
Subject: [Boost-users] FW: boost [regex] library icu building problems
From: Alex Perry (alex.perry_at_[hidden])
Date: 2009-03-28 14:25:57
Hi I hope this is the appropriate list for posting this message if not my apologies and could someone please redirect me.
I seem to have a problem building the boost.regex library with icu support on windows with the msvc toolset (MS Visual Studio 2005 professional).
Boost version is 1.35.0 (icu 3.8.1)
I have built this using bjam with a command like:-
bjam -sHAVE_ICU=1 --toolset=msvc stage
This all seems to work perfectly well and the library boost_regex-vc80-mt-1_35.lib and .dll are created which work (very well) and give me the required unicode regex support.
Unfortunately we have a memory leak in our application which I cant catch using valgrind on our linux version so am suspecting a problem with windows specific code. I was trying to recompile our application so that it used the debug version of the crt so that I could put in some memory tracking calls to find out what was wrong.
However I have hit a snag with the boost library trying to do this.
Compiling our application with _DEBUG, BOOST_REGEX_DYN_LINK defined and /MDd (debug crt ) boost swaps to using the boost_regex-vc80-mt-gd-1_35.lib library.
I seem to have some difficulty building this version of the library with the optional icu support included.
I did :-
Bjam sHAVE_ICU=1 toolset=msvc build-type=complete stage
But get an error in this case (I dont for build-type=minimal). The full output from bjam is below Im not quite sure what this error is meaning and what it is complaining about do I need to configure something in common properties here? - if someone with more experience of bjam than me could point me towards the problem I would be very grateful.
The icuroot is pointing to where a copy of icu is living (d:/dependencies/icu/3.8.1/icu on this machine) and I have built a debug version of icu just in case this is what was wanted (using the provided allinone.sln shipped with the icu source) but doesnt appear to make any difference.
Thanks in advance for your time
Alex Perry
Output from bjam:-
bjam -sHAVE_ICU=1 --toolset=msvc --build-type=complete stage
warning: Graph library does not contain optional GraphML reader.
note: to enable GraphML support, set EXPAT_INCLUDE and EXPAT_LIBPATH to the
note: directories containing the Expat headers and libraries, respectively.
warning: skipping optional Message Passing Interface (MPI) library.
note: to enable MPI support, add "using mpi ;" to user-config.jam.
note: to suppress this message, pass "--without-mpi" to bjam.
note: otherwise, you can safely ignore this message.
Skipping build of: ./stage <build>no in common properties
Skipping build of: ./stage <build>no in common properties
Skipping build of: ./stage <build>no in common properties
Skipping build of: ./stage <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
D:/dependencies/Boost/boost_1_35_0/tools/build/v2/kernel\class.jam:93: in new
*** argument error
* rule object(searched-lib-target)@4237.__init__ ( name : project : shared ? : search * : action )
* called with: ( icudata icui18n icuuc : object(project-target)@209 : true : /D:/dependencies/ICU/3.8.1/icu/lib : object(null-ac
tion)@4236 : : : : )
* extra argument icui18n
D:/dependencies/Boost/boost_1_35_0/tools/build/v2/tools\builtin.jam:349:see definition of rule '__init__' being called
D:/dependencies/Boost/boost_1_35_0/tools/build/v2/tools\builtin.jam:592: in object(searched-lib-generator)@6.run
D:/dependencies/Boost/boost_1_35_0/tools/build/v2/build\generators.jam:859: in try-one-generator-really
D:/dependencies/Boost/boost_1_35_0/tools/build/v2/build\generators.jam:920: in try-one-generator
D:/dependencies/Boost/boost_1_35_0/tools/build/v2/build\generators.jam:1131: in construct-really
D:/dependencies/Boost/boost_1_35_0/tools/build/v2/build\generators.jam:1204: in generators.construct
D:/dependencies/Boost/boost_1_35_0/tools/build/v2/tools\builtin.jam:496: in object(lib-generator)@5.run
D:/dependencies/Boost/boost_1_35_0/tools/build/v2/build\generators.jam:859: in try-one-generator-really
D:/dependencies/Boost/boost_1_35_0/tools/build/v2/build\generators.jam:920: in try-one-generator
D:/dependencies/Boost/boost_1_35_0/tools/build/v2/build\generators.jam:1131: in construct-really
D:/dependencies/Boost/boost_1_35_0/tools/build/v2/build\generators.jam:1204: in generators.construct
D:/dependencies/Boost/boost_1_35_0/tools/build/v2/build\targets.jam:1368: in construct
D:/dependencies/Boost/boost_1_35_0/tools/build/v2/build\targets.jam:1206: in object(typed-target)@221.generate
D:/dependencies/Boost/boost_1_35_0/tools/build/v2/build\targets.jam:742: in generate-really
D:/dependencies/Boost/boost_1_35_0/tools/build/v2/build\targets.jam:715: in object(main-target)@818.generate
D:/dependencies/Boost/boost_1_35_0/tools/build/v2/build\targets.jam:254: in object(project-target)@209.generate
D:/dependencies/Boost/boost_1_35_0/tools/build/v2/build\targets.jam:858: in targets.generate-from-reference
D:/dependencies/Boost/boost_1_35_0/tools/build/v2/build\targets.jam:1129: in generate-dependencies
D:/dependencies/Boost/boost_1_35_0/tools/build/v2/build\targets.jam:1179: in object(install-target-class)@97.generate
D:/dependencies/Boost/boost_1_35_0/tools/build/v2/build\targets.jam:742: in generate-really
D:/dependencies/Boost/boost_1_35_0/tools/build/v2/build\targets.jam:715: in object(main-target)@365.generate
D:/dependencies/Boost/boost_1_35_0/tools/build/v2/build\targets.jam:858: in targets.generate-from-reference
D:/dependencies/Boost/boost_1_35_0/tools/build/v2/build\targets.jam:1129: in generate-dependencies
D:/dependencies/Boost/boost_1_35_0/tools/build/v2/build\targets.jam:1179: in object(alias-target-class)@103.generate
D:/dependencies/Boost/boost_1_35_0/tools/build/v2/build\targets.jam:742: in generate-really
D:/dependencies/Boost/boost_1_35_0/tools/build/v2/build\targets.jam:715: in object(main-target)@369.generate
D:/dependencies/Boost/boost_1_35_0/tools/build/v2\build-system.jam:658: in load
D:\dependencies\Boost\boost_1_35_0\tools\build\v2/kernel\modules.jam:267: in import
D:\dependencies\Boost\boost_1_35_0\tools\build\v2/kernel/bootstrap.jam:132: in boost-build
D:\dependencies\Boost\boost_1_35_0\boost-build.jam:11: in module scope
Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net