.pro文件中使用在开头#来注释
使用\来分行
1、 模块
QT +=sql //代码中用到QSqlDatabase等关于数据库的操作时,需要添加
QT -=gui //表示非界面程序,如lib 库、控制台等工程
QT +=core //表示控制台程序
2、目标程序
TARGET=MYEXE //目标程序名(可以是可执行文件exe,也可能是lib库),默认与工程名同名,此处可以改写为任意名称
DESTDIR= $$PWD/../lib //目标程序的目录
例如:默认是工程目录和可执行程序目录分别为:
- /home/test/Qtproject/charTest/test 中有文件:main.c 、test.pro
在使用了Shasow build后,目录:
- /home/test/Qtproject/charTest/build-test-Desktop_Qt_4_8_5-Debug/debug 中有可执行文件: main.o和test
$$PWD:是.pro所在的目录(我们一般以.pro的目录为基准,因为在没有执行的时候,build-test-Desktop_Qt_4_8_5-Debug/debug是没有生成的。)-----经常用这个。
$PWD :是.exe,即:可执行程序所在目录
$$(PWD),添加括号后,为家目录。
即:$$(HOME)或者$(HOME) 或者$$(PWD)------>三者都是家目录
3、头文件包含
INCLUDEPATH +=$$PWD/../INCLUDE //头文件的路径
或者使用绝对路径:
INCLUDEPATH +=home/test/Qtproject/INCLUDE \ ->使用\表示多行
$$PWD/../INCLUDE
我们自定义的多个头文件单独放在/INCLUDE目录下,这样只要在.h文件中,直接写文件名就可以,而不用将头文件的绝对路径写全。
4、库文件
LIBS += -L$$(PWD)/lib / -lmytest -lmytest2 --->PWD加括号与不加括号含义不同
LIBS += -L$(HOME)/lib / -lmytest -lmytest2 ---->HOME必须要加括号
LIBS += -L$$(HOME)/lib / -lmytest -lmytest2 ---->HOME必须要加括号
以上三者等价。
或者使用绝对路径:
LIBS += -L/home/test/lib / -lmytest -lmytest2
5、跨平台
windows平台:
win32{
SOURCES+= hello_win.cpp //win平台
}
linux平台:
unix{
SOURCES+= hello_win.cpp //unix/linux平台
}
6、message($$PWD)
.pro中添加如上代码,运行程序后,会打印出.pro的路径-
------作用是:可以看到DESTDIR目录,比如是message($$PWD/../../bin ) 确定是否是自己想要的路径。
message($$PATH)
---------------运行程序后,打印出环境变量路径