M'kay所以我是Qt
的新手,我正在尝试将boost/filesystem
lib包含到我的项目中。但是,当我尝试构建它时,我总是会收到此错误:
LNK1104:文件“libboost_filesystem-vc140-mt-1_61.lib”不能 打开。
现在,我知道这个库需要事先构建,所以,正如我在Boost-Website上所描述的那样:
bootstrap
.\b2
它建立得很好。我还使用Qt对话框将libary添加到我的项目中,我的.pro文件如下所示:
QT += core gui
greaterThan(QT_MAJOR_VERSION, 4): QT += widgets
TARGET = ProjectName
TEMPLATE = app
SOURCES += main.cpp\
mainwindow.cpp \
someclass.cpp \
someclass2.cpp
HEADERS += mainwindow.h \
someclass.h \
someclass2.h
FORMS += mainwindow.ui
win32:CONFIG(release, debug|release): LIBS += -L$$PWD/libarys -llibboost_filesystem-vc140-mt-1_61
else:win32:CONFIG(debug, debug|release): LIBS += -L$$PWD/libarys -llibboost_filesystem-vc140-mt-1_61
else:unix: LIBS += -L$$PWD/libarys -llibboost_filesystem-vc140-mt-1_61
INCLUDEPATH += $$PWD/boost
DEPENDPATH += $$PWD/boost
显然,我做错了什么,但我无法弄明白,究竟是什么。互联网知道这个问题,但似乎没有“简单”的解决方案。
答案 0 :(得分:0)
原来,我的项目不喜欢lib-version。
我重建了我的lib文件:
>b2 --build-dir="destination/directory" toolset=msvc --build-type=complete link=static threading=multi --with-filesystem stage
然后,我在
中使用了库release/link-static/runtime-link-static/threading-multi/
这是:
libboost_filesystem-vc140-mt-s-1_61
并为.pro文件重新运行qmake。然后构建并执行应用程序,错误就消失了。