1

我正在尝试使用 WinXP 构建由Borland Rad Studio XE提供的boost_1_39。最新版本的 Developer Studio 提供 boost_1_39 安装程序,但不提供预建库。

使用bjam

\tools\jam\src\bin.ntx86\bjam --build-dir=c:\boostsource --toolset=borland -d +1 

我收到以下错误:

...patience...
...patience...
...patience...
...found 4685 targets...
...updating 970 targets...
common.mkdir c:\boostsource\boost\bin.v2\libs\math\build\borland\debug\link-static\threading-multi
borland.compile.c++ c:\boostsource\boost\bin.v2\libs\math\build\borland\debug\link-static\threading-multi\acosh.obj
libs\math\build\..\src\tr1\acosh.cpp:
borland.compile.c++ c:\boostsource\boost\bin.v2\libs\math\build\borland\debug\link-static\threading-multi\asinh.obj
libs\math\build\..\src\tr1\asinh.cpp:
Warning W8072 .\boost/format/alt_sstream_impl.hpp 108: Suspicious pointer arithmetic in function basic_altstringbuf<char,std::char_traits<char>,std::a
llocator<char> >::seekoff(__int64,std::_Iosb<int>::_Seekdir,std::_Iosb<int>::_Openmode)
Warning W8072 .\boost/format/alt_sstream_impl.hpp 108: Suspicious pointer arithmetic in function basic_altstringbuf<char,std::char_traits<char>,std::a
llocator<char> >::seekoff(__int64,std::_Iosb<int>::_Seekdir,std::_Iosb<int>::_Openmode)
Warning W8072 .\boost/format/alt_sstream_impl.hpp 126: Suspicious pointer arithmetic in function basic_altstringbuf<char,std::char_traits<char>,std::a
llocator<char> >::seekoff(__int64,std::_Iosb<int>::_Seekdir,std::_Iosb<int>::_Openmode)
Warning W8072 .\boost/format/alt_sstream_impl.hpp 126: Suspicious pointer arithmetic in function basic_altstringbuf<char,std::char_traits<char>,std::a
llocator<char> >::seekoff(__int64,std::_Iosb<int>::_Seekdir,std::_Iosb<int>::_Openmode)
borland.compile.c++ c:\boostsource\boost\bin.v2\libs\math\build\borland\debug\link-static\threading-multi\atanh.obj
libs\math\build\..\src\tr1\atanh.cpp:
borland.compile.c++ c:\boostsource\boost\bin.v2\libs\math\build\borland\debug\link-static\threading-multi\cbrt.obj
libs\math\build\..\src\tr1\cbrt.cpp:
Error E2188 .\boost/fusion/container/vector/detail/deref_impl.hpp 32: Expression syntax
Error E2040 .\boost/fusion/container/vector/detail/deref_impl.hpp 32: Declaration terminated incorrectly
Error E2451 .\boost/fusion/container/vector/detail/deref_impl.hpp 38: Undefined symbol 'element'
Error E2299 .\boost/fusion/container/vector/detail/deref_impl.hpp 38: Cannot generate template specialization from 'detail::cref_result<T>'
Error E2451 .\boost/fusion/container/vector/detail/deref_impl.hpp 39: Undefined symbol 'element'
Error E2228 .\boost/fusion/container/vector/detail/deref_impl.hpp 39: Too many error or warning messages
*** 6 errors in Compile ***

有没有办法用 Borland XE 提供的 bcc32 6.31 版构建最新的 boost 库?

4

2 回答 2

2

The combinations of bcc32 and boost::program_options didn't work so well in 1_39. (and that's why it didn't ship with the .lib files for it) You'll probably have to set up a parallel installation of 1_34_1 of boost and tweak it a bit to rebuild the program_options libraries.

于 2011-02-10T18:26:11.960 回答
2

您是否指的是 XE 版本的 IDE 未安装的特定库?大部分库已经随产品一起提供。

我看到的库如下:

  • 约会时间
  • 文件系统
  • IO 流
  • 正则表达式
  • 序列化
  • 信号
  • 系统
  • 线
  • 测试

当然,boost 提供的大部分内容都是头文件的形式,因此不需要编译。

于 2011-02-10T15:21:35.097 回答