相关疑难解决方法(0)

构建用于静态链接的Boost(MinGW)

我正在使用bjam为MinGW构建Boost(我正在使用System和FileSystem):

bjam --toolset=gcc stage
Run Code Online (Sandbox Code Playgroud)

它构建良好,但我希望能够静态链接到它(我必须有一个文件的最终产品)所以我试过:

bjam --link=static --toolset=gcc stage
Run Code Online (Sandbox Code Playgroud)

但我得到了相同的输出.有任何想法吗?

连续编辑第二个问题我在发帖后回答了几个问题:p猜我会把这个问题留给其他人.

bjam --build-type=complete --toolset=gcc stage
Run Code Online (Sandbox Code Playgroud)

肯定会建立动态和静态.

c++ linker boost build bjam

29
推荐指数
2
解决办法
3万
查看次数

提升lib构建配置变化

我是新手 - 你可以告诉我有什么区别b/w升级lib的以下变化以及在这种情况下需要链接到哪一个?

  • libboost_unit_test_framework-vc80-1_35.lib
  • libboost_unit_test_framework-VC80-GD-1_35.lib
  • libboost_unit_test_framework-VC80-MT-1_35.lib
  • libboost_unit_test_framework-VC80-MT-GD-1_35.lib
  • libboost_unit_test_framework-VC80-MT-S-1_35.lib
  • libboost_unit_test_framework-VC80-MT-SGD-1_35.lib
  • libboost_unit_test_framework-VC80-S-1_35.lib
  • libboost_unit_test_framework-VC80-SGD-1_35.lib

那么,我实际上要了解的是_gd,mt,sgd事物的整个分类.

c++ linker boost

18
推荐指数
3
解决办法
1万
查看次数

2> LINK:致命错误LNK1104:无法打开文件'libboost_filesystem-vc120-mt-sgd-1_58.lib'

难怪因为没有这样的文件...\boost_1_58_0\stage\lib.我该怎么办?我只有:

boost_1_58_0\stage\lib\libboost_filesystem-vc120-mt-s-1_58.lib
boost_1_58_0\stage\lib\libboost_filesystem-vc120-s-1_58.lib
Run Code Online (Sandbox Code Playgroud)

在那里.尝试使用各种选项进行编译提升 --build-type=complete(最终解决它的问题)(链接器错误LNK1104中的"穷人"解决方案与'libboost_filesystem-vc100-mt-s-1_49.lib')得到:

> b2 toolset=msvc threadapi=win32 link=static runtime-link=static \
variant=release address-model=32 --with-filesystem --with-locale --with-regex \
--with-system --with-iostreams --build-type=complete
Run Code Online (Sandbox Code Playgroud)

在我正在导入的项目的自述文件中建议的命令行 - 仍然没有乐趣.这是一个CMake项目我为构建MSVS解决方案付出了一些努力.

注意:仔细观察CMake gui时我的问题解决了:

在此输入图像描述

我意识到,当我右键单击"解决方案">配置管理器>更改为发布版本时,调试配置无法构建且确定无误.问题仍然存在 - 我如何获得libboost_filesystem-vc120-mt- sgd -1_58.lib构建?

boost cmake msvc12

6
推荐指数
1
解决办法
2万
查看次数

标签 统计

boost ×3

c++ ×2

linker ×2

bjam ×1

build ×1

cmake ×1

msvc12 ×1