Linux Qt入门:工程构建笔记一
小白入门QT,如何修改.pro文件,以及如何生成release版
本文仅对初级操作,使工程可以编译使用。
1 .pro文件设置
这个文件是整个项目的配置文件,各个字段的含义和写法:
首先是下面两句,具体是和系统版本有关。
- QT += core gui
- greaterThan(QT_MAJOR_VERSION, 4): QT += widgets
- TARGET = DevInit # 定义文件名字,这个在创建工程的时候就定好,不用动
- CONFIG+=debug_and_release # 这里是添加debug和release功能的,必须加上。
- SOURCES += main.cpp\ #使用到的源文件、头文件和ui界面定义放在这里便于构建
- DevInitDlg.cpp
- HEADERS += DevInitDlg.h\
- InitializeDevDlg.h
- FORMS += DevInitDlg.ui\
- InitializeDevDlg.ui\
- GetIPDlg.ui
- INCLUDEPATH += /usr/local/include \ # 头文件的路径,这里是添加了opencv的路径
- /usr/local/include/opencv \
- /usr/local/include/opencv2
- QMAKE_LIBS_OPENGL =
- DEFINES += QT_NO_DEBUG_OUTPUT LINUX64 QT_NO_OPENGL
- QMAKE_CXXFLAGS_RELEASE += -mssse3
- QMAKE_LFLAGS += -no-pie # debug相关
- #然后是库路径,为了保证不出错,我一般也不用相对路径,直接使用绝对路径,指定到具体的.so,这样总不会再错了吧
- LIBS += /home/ly/QtProjects/dahua_Infrared_Play/libdhnetsdk.so
- LIBS += -Llib/GenICam/bin/Linux64_x64 -lrt -lpthread
- LIBS += /usr/local/lib/lib* #这里是把所有的opencv库文件都加进来,可能有不同版本,系统会自动选一个,对版本没要求的就这么就行。
- OBJECTS_DIR = ./output # 这个是.pro文件路径下的output文件夹,用于存放编译出来的中间文件.o。
2 生成release版本或debug版本
另外,如此设置后,有的工程进行release后还是找不到release文件。那么需要设置:
点击:项目-》Build,将右侧 Shadow build复选框取消勾选。然后你再到debug下 CTRL+R即可看到生成的target。