C++ LINK1104无法使用visual studio 2008命令提示符打开boost静态库
我正在尝试编译一个使用静态boost库的cpp文件。我正在使用VisualStudio2008命令提示符,因为我还没有设置VS项目文件 我使用的命令是(从包含源代码的文件夹中运行):C++ LINK1104无法使用visual studio 2008命令提示符打开boost静态库,c++,visual-studio-2008,boost,C++,Visual Studio 2008,Boost,我正在尝试编译一个使用静态boost库的cpp文件。我正在使用VisualStudio2008命令提示符,因为我还没有设置VS项目文件 我使用的命令是(从包含源代码的文件夹中运行): cl/EHsc/I“C:\Program Files\boost\boost\u 1\u 53\u 0”Client.cpp 错误是: LINK:致命错误LNK1104:无法打开文件'libboost_system-vc90-mt-s-1_53.lib' 但是,文件“libboost_system-vc90-mt-
cl/EHsc/I“C:\Program Files\boost\boost\u 1\u 53\u 0”Client.cpp
错误是:
LINK:致命错误LNK1104:无法打开文件'libboost_system-vc90-mt-s-1_53.lib'
但是,文件“libboost_system-vc90-mt-s-1_53.lib”可以在“C:\Program Files\boost\boost_1_53_0\stage\lib”中找到,所以我的理解是我已经正确安装了boost,只是无法链接到它
我试着直接使用
cl/EHsc/I“C:\Program Files\boost\boost\u 1\u 53\u 0”/I“C:\Program Files\boost\boost\u 1\u 53\u 0\stage\lib\”Client.cpp
这就产生了同样的错误
我还尝试使用/link直接链接到它,如下所示:
cl/EHsc/I“C:\Program Files\boost\boost\u 1\u 53\u 0”/link“C:\Program Files\boost\boost\u 1\u 53\u 0\stage\lib\libboost\u system-vc90-mt-s-1\u 53.lib”Client.cpp
返回一个不同的错误:
cl:命令行错误D8003:缺少源文件名
我好像把编译器标记打错了?但我不知道在哪里/如何
还有一个类似的问题,但解决方案涉及如何设置VisualStudio/项目文件。由于我没有项目文件,是否有一个简单的解决方案,我看不到上述问题,或者我需要设置一个项目
提前谢谢你的帮助 需要告知链接器库文件的位置。您与上一个命令行非常接近,但文件名必须位于/link
选项之前。这应该起作用:
cl/EHsc/I“C:\Program Files\boost\boost_1_53_0”Client.cpp/link“C:\Program Files\boost\boost_1_53_0\stage\lib\libboost_system-vc90-mt-s-1_53.lib”
此外,当链接到同一目录中的多个库时,使用LIBPATH
选项告诉链接器在何处查找.lib文件更为简洁
cl/EHsc/I“C:\Program Files\boost\boost_1_53_0”Client.cpp/link“libboost_system-vc90-mt-s-1_53.lib”/LIBPATH:“C:\Program Files\boost\boost_1_53_0\stage\lib\”
谢谢这就成功了,/LIBPATH提示也为我节省了一些时间。耶:)@Praetorian,节省了我的时间。谢谢