Qt--在.pro文件中添加链接库的写法
要在Qt中使用OpenCV,按照OpenCV与Qt的环境搭建及Demo中的步骤配置了Qt Creator的编译选项,选择MSVC,再修改.pro文件:
INCLUDEPATH += D:\Program Files\opencv\opencv3.4.0\build\include
CONFIG(debug, debug|release): {
LIBS += -LD:\Program Files\opencv\opencv3.4.0\build\x64\vc14\lib \
-lopencv_world340d
} else:CONFIG(release, debug|release): {
LIBS += -LD:\Program Files\opencv\opencv3.4.0\build\x64\vc14\lib \
-lopencv_world340
}
结果qmake没什么问题,编译时报错了……提示“LNK1146: 没有用选项“/LIBPATH:”指定的参数”
百度之,发现问题是我的路径名里有空格(点也不行)。INCLUDEPATH直接加上双引号就行,而对于链接库,CSDN里给的解决方法都是使用MSVC的#pragma comment,但这样对跨平台有点影响啊……
无奈只好去找.pro文件编写的官方文档,在 Variables | qmake Manual这里我找到了想要的内容:
那么第一个-L用双引号加上就行啦~
修改并使编译成功的代码:
INCLUDEPATH += "D:\Program Files\opencv\opencv3.4.0\build\include"
CONFIG(debug, debug|release): {
LIBS += "-LD:\Program Files\opencv\opencv3.4.0\build\x64\vc14\lib" -lopencv_world340d
} else:CONFIG(release, debug|release): {
LIBS += "-LD:\Program Files\opencv\opencv3.4.0\build\x64\vc14\lib" -lopencv_world340
}
/*****************************
QT Creator 添加外部库的方法:
1.代码撰写
1.1 附加头文件包含目录
1.1.1 INCLUDEPATH += ./boost/include \
src/thirdpart/include //用相对路径的方法包含了两include
1.1.2 INCLUDEPATH += D:/boost/include \
E:/vms/include //使用绝对路径包含两个include
1.2 链接库
1.2.1 LIBS += -LD:/vms/Libraries/ -lib1 \
-LD:/vms/Libraries/ -lib2 \ //注意 -L 以及跟路径间没有空格
1.2.2 LIBS += D:/vms/Libraries/lib1 \ //使用绝对路径没有-L -l
1.2.3 LIBS += $$PWD/Libraries/lib1 \ //相对路径(只适用于windows的静态库)
注意(.lib .a是静态库 ; .so 是动态库) , 对于配置了动态库的必须把相应的dll至于exe执行目录或者在环境变量中配置路径
2. 通过右键项目,点击添加库(不知道为什么有时候可以,有时候不行)
选择外部库
/*************************
win32 { INCLUDEPATH += 'C:/Program Files (x86)/IVI Foundation/VISA/WinNT/Include' LIBS+='C:/Program Files (x86)/IVI Foundation/VISA/WinNT/lib/msc/visa32.lib' }
/***********************
#INCLUDEPATH += E:\whh\softTool\Qt\files\OpenCV-MinGW-Build-OpenCV-4.1.1-x64\include #INCLUDEPATH += E:\whh\softTool\Qt\files\OpenCV-MinGW-Build-OpenCV-4.1.1-x64\include\opencv2 #LIBS += E:\whh\softTool\Qt\files\OpenCV-MinGW-Build-OpenCV-4.1.1-x64\x64\mingw\bin\libopencv_*.dll INCLUDEPATH +=.\OpenCV-MinGW-Build-OpenCV-4.1.1-x64\include INCLUDEPATH += .\OpenCV-MinGW-Build-OpenCV-4.1.1-x64\include\opencv2 LIBS += .\OpenCV-MinGW-Build-OpenCV-4.1.1-x64\x64\mingw\bin\libopencv_*.dll
相关文章
- Qt文件路径分隔符
- Windows下 Qt 资源文件(.qrc)文件 的 编写与应用
- QT中操作Txt文件(Qt中QString与QByteArray互相转化方法)
- Qt工程pro文件的配置和头文件和库的添加
- QT中连接Mysql数据库及增删改查实例
- 关于QT下配置OpenCV3.4.0后出现 error: undefined reference to ‘cv::xxx‘的问题及解决方案,直接使用编译好的opencv库
- qt-重写event(),事件过滤器,定时器,事件总结
- 解决qt程序运行时的cannot create Qt for Embedded Linux data directory: /tmp/qtembedded-0出错情形
- 【QT】Qt项目demo:数据在ui界面上显示,鼠标双击可弹窗显示具体信息
- 【QT】无法在QT创建者中打开包含文件pcap.h(C1083)
- 基于QT(C++)+MySQL 实现(界面)疫情下低风险旅行模拟系统【100010641】
- 嵌入式Qt(实验二)——Qt文件IO
- QT基础——QML及其相关的qt模块
- Qt开发经验小技巧131-140
- Qt编写安防视频监控系统34-onvif事件订阅
- Qt编写气体安全管理系统6-地图监控
- Qt编写自定义控件52-颜色下拉框
- Qt编写自定义控件44-天气仪表盘
- Qt之QLCDNumber
- 报错 qt.qpa.plugin: Could not load the Qt platform plugin “xcb“ in ““ even though it was found
- Linux Qt5 二. QT中.pro文件的语法
- Qt编程之qrc文件的链接
- Qt编程之QImage类小结
- ubuntu qt :-1: error cannot find lgl
- Qt 快速入门指南
- 【正点原子Linux连载】第十六章 Serial Port 摘自【正点原子】I.MX6U嵌入式Qt开发指南V1.0.2
- Qt Write and Read XML File 读写XML文件
- Qt 线程同步(QMutex、QWaitCondition、QSemaphore)