boost_1_39编译静态库问题

tdjdyq 2009-08-18 10:38:42
E:\boost_1_39_0>bjam --toolset-msvc-9.0 --without-python --prefix="f:\boost_1_39
_build" link=static runtime-link=static threading=multi debug release install

为什么我这样编译带有s库文件明
libboost_regex-vc90-mt-sgd.lib
libboost_regex-vc90-mt-sgd-1_39.lib
但是vc2008debug的时候,找这个文件:LNK1104: cannot open file 'libboost_regex-vc90-mt-gd-1_39.lib'
...全文
297 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
liuchangyu23 2009-08-24
  • 打赏
  • 举报
回复
可以尝试把 C++编译选项的 Runtime library设置为MTD。

建议编译所有类库,省得不必要的麻烦。
tdjdyq 2009-08-24
  • 打赏
  • 举报
回复
改成:
bjam --toolset-msvc-9.0 --build-type=complete --without-python --prefix="f:\boost_1_39
_build" link=static runtime-link=static threading=multi install
还是一样
LINK : fatal error LNK1104: cannot open file 'libboost_regex-vc90-mt-gd-1_39.lib'
我想连静态库,为什么它要打开动态库形式呢?
thy38 2009-08-19
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 fallening 的回复:]
悄悄问一下,boost不都是.hpp文件么,只要复制粘贴就可以了,为什么还需要编译?
[/Quote]

好多要用生成的库的。
thy38 2009-08-19
  • 打赏
  • 举报
回复
把工程设置为Static DLL。
老邓 2009-08-18
  • 打赏
  • 举报
回复
比如我的:

MinGW命令行下编译boost

一、用批处理配置命令行
set PATH=%CD%\bin;%PATH%

二、自定义boost的编译选项、链接选项
打开tools\build\v2\user-config.jam,找到GCC configuration
# Configure specific gcc version for QPSOFT.COM
using gcc : 4.4.1 : "g++.exe" :
<compileflags>-O2
<compileflags>-pipe
<compileflags>-mthreads
<linkflags>-s ;

三、通过cmd,执行该批处理,并在命令行下执行以下步骤
1. 编译bjam工具:进入tools\jam\src,执行:build gcc ,完成后在tools\jam\src\bin.ntx86下得到bjam.exe
2. 将bjam.exe拷贝到tools\bcp目录下,执行:bjam --toolset=gcc-4.4.1 ,完成后在bin.v2\tools\bcp\gcc-mingw-4.4.1\release\link-static得到bcp.exe
3. 将bjam.exe拷贝到boost解压目录下,编译相应库:bjam --with-date_time --build-type=complete threading=multi runtime-link=static --libdir=".\lib" --toolset=gcc-4.4.1 stage
4. 拷贝bcp.exe到boost解压目录下,并创建新目录foo,提取所需要的头文件:bcp boost/lexical_cast.hpp boost/format.hpp boost/algorithm/string.hpp boost/date_time.hpp boost/scoped_ptr.hpp boost/scoped_array.hpp boost/shared_array.hpp boost/intrusive_ptr.hpp boost/lambda/lambda.hpp foo
发现问题,随时用bjam --help查询。
老邓 2009-08-18
  • 打赏
  • 举报
回复
改成:
bjam --toolset-msvc-9.0 --build-type=complete --without-python --prefix="f:\boost_1_39
_build" link=static runtime-link=static threading=multi install
sujiewen 2009-08-18
  • 打赏
  • 举报
回复
我只想要静态库呢
taodm 2009-08-18
  • 打赏
  • 举报
回复
你还是build complete吧。别折腾了。
fallening 2009-08-18
  • 打赏
  • 举报
回复
悄悄问一下,boost不都是.hpp文件么,只要复制粘贴就可以了,为什么还需要编译?

64,651

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧