Some days ago I compiled Boost ver. 1.53.0 for VS2012. It works fine, compiles fine. Now I want to use Boost with Qt Creator. In the .pro file I've included
INCLUDEPATH += C:\boost\boost_1_53_0\ -lboost_filesystem
LIBS += C:/boost/boost_1_53_0/stage/lib/
Run Code Online (Sandbox Code Playgroud)
But when I compile I get 2 errors:
:-1: error: cannot find C:/boost/boost_1_53_0/stage/lib/: Permission denied
collect2.exe:-1: error: error: ld returned 1 exit status
Run Code Online (Sandbox Code Playgroud)
What should I do? I've googled but seems I'm the first with this error.
Sig*_*erm 22
INCLUDEPATH += C:\boost\boost_1_53_0\ -lboost_filesystem
LIBS += C:/boost/boost_1_53_0/stage/lib/
Run Code Online (Sandbox Code Playgroud)
错误.
读这个.
解:
INCLUDEPATH += C:/boost/boost_1_53_0/
LIBS += "-LC:/boost/boost_1_53_0/stage/lib/"
Run Code Online (Sandbox Code Playgroud)
Boost具有复杂的库名称("libboost_filesystem-vc90-mt-1_53.lib"),并且在msvc的情况下,它会自动链接它们.)如果要链接其他lib,可以这样做:
LIBS += "-LMyLibraryPath" -lmylib
Run Code Online (Sandbox Code Playgroud)
MyLibraryPath是库路径,mylib是您要链接的库.
我是第一个犯这个错误的人.
错误最有可能发生,因为编译器尝试打开目录,就好像它是一个文件或类似的东西.