• 9307阅读
  • 4回复

qt无法打开lib文件 [复制链接]

上一主题 下一主题
离线huangturen
 

只看楼主 倒序阅读 楼主  发表于: 2013-12-20
我用qt开发时需要用boost库,库和其中的一个lib文件都添加了,但是构建时依然提示无法打开:-1: 错误:LNK1104: 无法打开文件“libboost_thread-vc100-mt-gd-1_55.lib”


这是我的.pro里面的内容:

INCLUDEPATH += $$quote(E:/boost_1_55_0b1)
INCLUDEPATH
+= $$quote(E:/boost_1_55_0b1)/stage
INCLUDEPATH
+= $$quote(D:/Cpp/Include)
QT
       += core gui
greaterThan(QT_MAJOR_VERSION, 4): QT += widgets
TARGET = tobii
TEMPLATE
= app
SOURCES += main.cpp\      
mainwindow.cpp \    
../../Cpp/Samples/tobiictl/MainLoopRunner.cpp \    
../../Cpp/Samples/tobiictl/App.cpp
HEADERS  += mainwindow.h \    
../../Cpp/Samples/tobiictl/MainLoopRunner.h \    
../../Cpp/Samples/tobiictl/App.h
FORMS    += mainwindow.ui
unix|win32: LIBS += -L$$PWD/E:/boost_1_55_0b1/stage/lib/ -lboost_thread-vc100-mt-gd-1_55
INCLUDEPATH += $$PWD/E:/boost_1_55_0b1/stage
DEPENDPATH
+= $$PWD/E:/boost_1_55_0b1/stage
win32: PRE_TARGETDEPS += $$PWD/E:/boost_1_55_0b1/stage/lib/boost_thread-vc100-mt-gd-1_55.lib
else:unix: PRE_TARGETDEPS += $$PWD/E:/boost_1_55_0b1/stage/lib/libboost_thread-vc100-mt-gd-1_55.a


而且这个lib文件我看了是存在,怎么办呢?

离线friendbaby

只看该作者 1楼 发表于: 2013-12-20
通常编译器是不会出错的,既然出错,绝对是你哪里疏忽了。
遇到此类问题,需要一点一点的检查
Smiling is best language , can express everything , also can conceal everything.
离线XChinux

只看该作者 2楼 发表于: 2013-12-20
你的.pro文件写得简单些吧,
像下面这样区分开,然后正试试,另外,gd,是debug版的,你确认是要链接debug版的boost库?
win32 {
}

unix {
}
二笔 openSUSE Vim N9 BB10 XChinux@163.com 网易博客 腾讯微博
承接C++/Qt、Qt UI界面、PHP及预算报销系统开发业务
离线huangturen

只看该作者 3楼 发表于: 2013-12-20
回 2楼(XChinux) 的帖子
貌似还是不行,我把其中的LIBS改了一下还是不行

Error: dependent 'd:\Qt\tobii\E:\boost_1_55_0b1\stage\lib\libboost_thread-vc100-mt-gd-1_55d.lib' does not exist.
jom: D:\Qt\build-tobii-Qt_4_8_5_4_8_5_??2-Debug\Makefile [debug] Error 2
10:14:01: 进程"C:\Qt\qtcreator-2.8.1\bin\jom.exe"退出,退出代码 2 。
Error while building/deploying project tobii (kit: Qt 4.8.5 (4.8.5) - 临时2)
当执行步骤 'Make'时
10:14:01: Elapsed time: 00:01.

我的工程在D盘,boost库在E盘,那个lib文件也是存在的,为啥就是不存在呢?????????????????
离线ppdayz

只看该作者 4楼 发表于: 2013-12-23
回 3楼(huangturen) 的帖子
unix|win32: LIBS += -L$$PWD/E:/boost_1_55_0b1/stage/lib/ -lboost_thread-vc100-mt-gd-1_55

你这句话写的。。。$$PWD指的就是你的项目位置
连起来就是d:\Qt\tobii\E:\boost_1_55_0b1\stage\lib\libboost_thread-vc100-mt-gd-1_55d.lib
你可以看下“d:\Qt\tobii\E:\boost_1_55_0b1\stage\lib\”这个目录下面有没有libboost_thread-vc100-mt-gd-1_55d.lib文件
unix|win32: LIBS += -LE:/boost_1_55_0b1/stage/lib/ -lboost_thread-vc100-mt-gd-1_55.lib
我想楼主要的是这个
快速回复
限100 字节
 
上一个 下一个