[英]Missing A Detail About Boost (.lib files)
在使用某些Boost库时,我在哪里可以找到用于链接程序的lib文件? 决定尝试其线程功能,但我得到了
错误6致命错误LNK1104:无法打开文件'libboost_thread-vc90-mt-gd-1_42.lib'InviewviewPractice
在我包括之后
错误6致命错误LNK1104:无法打开文件'libboost_thread-vc90-mt-gd-1_42.lib'InviewviewPractice
我找不到哪里获取.lib文件在boost网站上正确链接? 有小费吗? :)
我使用的另一种解决方案是创建您自己的包装器项目,其中包含您正在使用的boost。 通常在VS.Net中,这只是添加boost/libs/blah
子目录中的cpp文件的问题。 它们编译得非常干净,因此您通常不需要对项目进行任何其他设置。 如果您想要从SCM自动化构建并且您不想签入二进制文件,我发现这种技术很有用。 它也非常快,因为你只需要构建你需要的位。 另一个优点是,创建与项目相关的配置更容易,即调试/发布,静态/动态,32/64位。 但有一点需要通过在构建项目时定义BOOST_ALL_NO_LIB
来禁用自动链接选项。
或者,您需要使用jam工具为您需要的配置构建原始库。
这完全取决于您使用的操作系统/编译器。
我建议你下载boost源代码并学习如何构建Boost。
导致此问题的原因是Boost安装默认情况下不安装线程库。 您必须在安装期间专门选择线程库。 因此,重新运行安装并选择线程库并选择编译器版本以下载相应的文件。 在本例中,对于文件“'libboost_thread-vc90-mt-gd-1_42.lib”,您需要为升级库版本1.42选择版本VC ++编译器9.0调试的多线程。
我希望这有帮助...
我使用boost版本1.44和预构建的安装程序遇到了相同的链接错误。 我解压缩了“libboost_data_time_vc100-mt-gd-144.zip”,其中只包含缺少的.lib,这似乎解决了这个问题。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.