Qt .pro文件常用命令说明

-Wl,-Bstatic指示跟在后面的-lxxx选项链接的都是静态库,-Wl,-Bdynamic指示跟在后面的-lxxx选项链接的都是动态库

例如:

LIBS += -Wl,-Bstatic -lssh2  静态链接ssh2库
LIBS += -Wl,-Bdynamic -lssl   动态链接ssl库


添加库目录和库文件

LIBS += -L后面跟路径,表示添加库目录

LIBS += -l后面跟库名,表示添加具体的库


添加编译器对C++11的支持

QMAKE_CXXFLAGS += "-std=c++11"

添加生成MAKEFILE文件中,搜索库的路径信息

QMAKE_LFLAGS += -Wl,-rpath=/home/d5000/guodiao/lib后面的即是要添加的路径名


TARGET = SheetShow表示生成的程序名
TEMPLATE = app 【这个标识其实是为了告诉qmake生成什么样的MakeFile】

  • (app)表示该项目生成的是可执行文件
  • (lib)是库
  • (subdirs)是一个管理多个.pro项目的.pro

VERSION = 1.0.0如果TEMPLATE是lib,那么这个是确定库的版本号

DESTDIR = ./bin表示生成程序所在的路径
MOC_DIR = temp/moc表示中间文件.moc的路径
RCC_DIR = temp/rcc表示中间文件.rcc的路径
UI_DIR = temp/ui表示中间文件.ui的路径
OBJECTS_DIR = temp/obj表示中间文件.obj的路径

include(xxx.pri) 表示将HEADERS += 和 SOURCES += 写到了xxx.pri里面。然后下一层是.pri文件 + 头文件 + 源文件。

DEFINES += QT_DEPRECATED_WARNINGS:定义编译选项。QT_DEPRECATED_WARNINGS表示当Qt的某些功能被标记为过时的,那么编译器会发出警告。

greaterThan(QT_MAJOR_VERSION,4):QT+=widgets:这是Qt5为了兼容Qt4而专门设计的,语句大意为如果Qt版本大于4,则将widgets模块加入到QT变量中,从这一点,我们可以推敲出Qt4的widgets模块是和gui模块为一体的,而Qt5已经将其分离了出来。


INCLUDEPATH += 表示添加包含路径

OTHER_FILES += 表示其他文件

RC_FILE += 添加RC文件,在RC文件中添加一行:IDI_ICON1 ICON DISCARDABLE "logo.ico"其中logo.ico为图标文件名

RESOURCES += 表示资源文件

CONFIG += 表示配置变量,指定了编译器所要使用的选项和所需要被连接的库    

  • release - 应用程序将以release模式连编。如果“debug”被指定,它将被忽略。
  • debug - 应用程序将以debug模式连编。
  • warn_on - 编译器会输出尽可能多的警告信息。如果“warn_off”被指定,它将被忽略。
  • warn_off - 编译器会输出尽可能少的警告信息。
  • qt - 应用程序是一个Qt应用程序,并且Qt库将会被连接。
  • thread - 应用程序是一个多线程应用程序。
  • x11 - 应用程序是一个X11应用程序或库。
  • windows - 只用于“app”模板:应用程序是一个Windows下的窗口应用程序。
  • console - 只用于“app”模板:应用程序是一个Windows下的控制台应用程序。
  • dll - 只用于“lib”模板:库是一个共享库(dll)。
  • staticlib - 只用于“lib”模板:库是一个静态库。
  • plugin - 只用于“lib”模板:库是一个插件,这将会使dll选项生效。
原文地址:https://www.cnblogs.com/wisdomroc/p/14061267.html