1.QT中配置参数可在帮助文档 Variables变量中查找
2. 在pro中 include 与 LIB语句的后面都没有分号
看下面的例子
3.添加动态链接库时,includepath 和 libs即可
opencv文件夹在pro的上一级文件中
INCLUDEPATH += $$PWD/../mindvision/include
#opencv最好是用pro的形式加载,最好不要用pragma comment的形式加载
CONFIG +=debug_and_release #如果项目属性里配置了,这里可以省略
message($$PWD/../opencv/build/x64/vc12/lib)
CONFIG(debug, debug|release)
{
LIBS += -L$$PWD/../opencv/build/x64/vc12/lib/ -lopencv_core2413d
LIBS += -L$$PWD/../opencv/build/x64/vc12/lib/ -lopencv_highgui2413d
}
CONFIG(release, debug|release)
{
LIBS += -L$$PWD/../opencv/build/x64/vc12/lib/ -lopencv_core2413
LIBS += -L$$PWD/../opencv/build/x64/vc12/lib/ -lopencv_highgui2413
}
4.在pro文件中输出信息为:message()
而且 message($$PWD/../opencv/build/x64/vc12/lib) 输出的可以直接在文件夹路径下查找
输出的信息位置
在【编译输出】中,红色字体
在【概要信息】中 输出
这两个位置中的一个,
5.pro中 isEmpty 函数 用来实现条件变量
if(isEmpty(USE_DD))
{
message(" defines isEmpty is exists")
}
与contain差不多
6..pro中宏定义
DEFINES += USE_DD
在pro文件中,如果判断宏定义存不存在时,可以用
DEFINES += USE_DD
contains(DEFINES,USE_DD)
{
message("exit defines")#发现是pri所在的路径
}
pro添加宏定义后,可以在cpp或者.h中使用
#ifdef USE_DD
//do something
#else
//do something
#endif
7.区分windows与linux下的配置时,使用#unix/win32 来区分
#unix/win32 用来定义在不同平台下构建项目时的配置项分支
win32{
message(winww)
}
unix{
message(unix)
}
8.pro中 注释 #
pro中注释用#
9. 在pro引入同一文件夹下多个lib时,可用 通配符*匹配
INCLUDEPATH += /usr/include/boost
LIBS += /usr/lib/x86_64-linux-gnu/libboost_*.so
INCLUDEPATH += /usr/include/pcl-1.8/
LIBS += /usr/lib/x86_64-linux-gnu/libpcl_*.so
INCLUDEPATH += /usr/include/vtk-6.3
LIBS += /usr/lib/x86_64-linux-gnu/libvtk*.so
INCLUDEPATH += /usr/include/eigen3
10.qmake
qmake是一个工具, 它根据pro文件生成makefile文件,而makefile文件中则定义编译与连接的规则。pro文件中定义了头文件,源文件,依赖库等。
可以通过项目--》右键--》执行qmake来触发qmake工具。
如果pro文件改变了,比如新增了文件或者删除文件,则必须要执行qmake,其会更新或者生成新的makefile文件,以确保程序能够编译正常。
11.
参考:
Qt扫盲-QRegExp 正则匹配类总结_qt正则匹配_太阳风暴的博客-CSDN博客
对于pri的创建,请看连接http://t.csdn.cn/Wkj7Whttp://t.csdn.cn/Wkj7W
下面博主的例子讲解的很好
qt -- pri文件的使用_cc_rong的博客-CSDN博客_qt的prihttps://blog.csdn.net/qq_41653875/article/details/123530792