赞
踩
一:pro文件常用配置参数
序号 | qmake 变量 | 含义 | 例子 |
---|---|---|---|
1 | #XXX | 注释, 从“#”开始,到这一行结束 | #comment |
2 | CONFIG | 配置信息 | CONFIG += console |
CONFIG -= app_bundle | |||
3 | DEFINES | 定义宏 | DEFINES -= UNICODE |
DEFINES += SHAREDLIBRARY | |||
4 | DEPENDPATH | 程序编译时依赖的相关路径 | DEPENDPATH += $$PWD/Debug |
5 | DESTDIR | 指定生成的应用程序放置的目录 | DESTDIR += ../bin |
6 | exists !exists | 判断一个文件不存在,如果不存在,停止 qmake | !exists( main.cpp ){error(“No main.cpp file found”“)} |
7 | FORMS | 工程中包含的.ui 设计文件 | FORMS += widget.ui |
8 | HEADERS | 指定头文件 | HEADERS = widget.h |
9 | INCLUDEPATH | 头文件包含路径 | INCLUDEPATH += “D:\include” |
INCLUDEPATH += $$PWD/include | |||
10 | LIBS | LIBS += -L folderPath //引入的 lib 文件的路径 | LIBS += -L”D:\lib” |
LIBS += -L$$PWD/lib | |||
LIBS += -lLibName //引入 lib 文件 | LIBS += -luser32 \ lAdvapi32 | ||
11 | MOC_DIR | 指定moc命令将含 Q_OBJECT 的头文件转换成标准.h文件的存放目录 | MOC_DIR += ../moc |
12 | OBJECTS_DIR | 指定目标文件的存放目录 | OBJECTS_DIR += ../obj |
13 | QT | 加入库模块 | greaterThan(QT_MAJOR_VERSION, 4): QT += widgets QT += core gui |
14 | RC_FILE | 指定程序图标 | RC_FILE = logo.rc |
15 | RESOURCES | 工程中包含的资源文件 | RESOURCES += iamges.qrc |
16 | SOURCES | 指定源文件 | SOURCES = *.cpp |
对于多源文件,可用空格分开 | SOURCES = 1.cpp 2.cpp 3.cpp | ||
或者每一个文件可以被列在一个分开的行里面,通过反斜线另起一行 | SOURCES = widget.cpp \ main.cpp | ||
一个更冗长的方法是单独地列出每一个文件,就像这样 | SOURCES += hello.cpp SOURCES += main.cpp | ||
17 | TARGET | 指定程序名,如果不设置,程序名自动设为项目名 | TARGET = filename |
18 | TEMPLATE | 设置程序模版 | |
app(生成应用程序,默认) | TEMPLATE = app | ||
subdirs(生成 makefile 文件编译 subdirs 指定的子文件夹) | TEMPLATE = subdirs | ||
lib(生成库文件) | TEMPLATE = lib | ||
19 | UI_DIR | 指定 uic 命令将.ui 文件转化成 ui_*.h 文件的存放的目录 | UI_DIR += ../ui |
20 | win32{…} linux{…} | 平台相关性处理 | win32{ LIBS += -luser32 \ -lAdvapi32 } |
linux{ QT += x11extras } |
二:Qt配置第三方库,以下以安装在本机绝对路径下的opencv为例,包括windows以及linux系统。pro文件写法:
- QT += core gui
-
- greaterThan(QT_MAJOR_VERSION, 4): QT += widgets
-
- TARGET = Opencv
- TEMPLATE = app
-
- #INCLUDEPATH and LIBS depend on opencv's path where is installed in your computer
- win32{
- INCLUDEPATH += "D:\\Program Files (x86)\\opencv\\build\\include"
- LIBS += -L"D:\\Program Files (x86)\\opencv\\build\\x86\\vc12\\lib"
-
- CONFIG(debug, debug|release){
- LIBS += -lopencv_core2413d \
- -lopencv_highgui2413d \
- -lopencv_imgproc2413d \
- -lopencv_video2413d \
- -lopencv_objdetect2413d
- }else{
- LIBS += -lopencv_core2413 \
- -lopencv_highgui2413 \
- -lopencv_imgproc2413 \
- -lopencv_video2413 \
- -lopencv_objdetect2413 \
- }
- }
-
- linux{
- INCLUDEPATH += "/usr/local/include"
- LIBS += -L"/home/Installer/opencv-2.4.13/opencv-2.4.13/lib"
-
- CONFIG(debug, debug|release){
- LIBS += -lopencv_cored \
- -lopencv_highguid \
- -lopencv_imgprocd \
- -lopencv_videod \
- -lopencv_objdetectd \
- }else{
- LIBS += -lopencv_core \
- -lopencv_highgui \
- -lopencv_imgproc \
- -lopencv_video \
- -lopencv_objdetect \
- }
- }
-
- SOURCES +=\
- facedetect.cpp
使用Qt Creator进行参数编译的方法,项目->运行->arguments,例如xxx.exe cascade=”data/haarcascades/haarcascade_frontalface_alt.xml” scale=1.3 lena.jpg
linux安装opencv步骤:
1.安装cmake
2.安装libgtk2.0-dev 和 pkg-config(一定要相对于下面安装步骤提前安装)
3.进入opencv源码目录,cmake CMakeList
4.make && make install
5.配置环境变量
sudo gedit /etc/ld.so.conf.d/opencv.conf(没有该文件的话自行创建),为文件添加内容/usr/local/lib
6.配置库
sudo ldconfig
7.更改环境变量
sudo gedit /etc/bash.bashrc,在文件末尾添加,PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig
export PKG_CONFIG_PATH
8.重启终端使配置生效。
例程测试:
1.进入opencv/sample/c目录
2.终端输入 ./build_all.sh (如果build_all.sh没有执行权限,chmod +x build_all.sh使之获得执行权限)
3../facedetect –cascade=”/usr/local/share/OpenCV/haarcascades/haarcascade_frontalface_alt.xml” –scale=1.5 lena.jpg
(也可以不带参数,自行测试)
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。