1、

QT += core gui \

sql \ #ZC: 这个对应 #include <SQL/???> (如<QtSql/QSqlDatabase><QtSql/QSqlQuery><QtSql/QSqlrecord><QtSql/QSqlError><QtSql/QSqlDriver>)

    webkit \

    webkitwidgets

2、

INCLUDEPATH += F:\oracle\product\10.2.0\db_1\oci\include

LIBPATH += F:\oracle\product\10.2.0\db_1\oci\lib\msvc  \

        F:\plugins\sqldrivers

3、为了编写的DLL能够被MFC程序调用,这里需要 引入 qtwinmigrate的相关源码

include(F:/ZC_software_installDir/QtWinMigrate_Qt5/src/qtwinmigrate.pri)

4、编译/链接 时,忽略某种 警告 (忽略了之后,这种警告就不会再显示出来了)

win32-msvc*:QMAKE_CXXFLAGS += /wd"4819" \

                    /wd"4100"

  4.1、对应vs中是这样设置:在代码中加入#prama warning(disable:8888)

5、ZC: 作用不明...

unix {

  target.path = /usr/lib

  INSTALLS += target

}

6、

TARGET = DrSvgDLL

TEMPLATE = lib

TEMPLATE = app

DEFINES += DRSVGDLL_LIBRARY #ZC: 作用不明...

7、ZC

#如果,在 *.pro文件中加入中文注释,需要手动将 *.pro文件通过EditPlus等保存成utf8格式,不然Qt打开时会有乱码

8、

greaterThan(QT_MAJOR_VERSION, 4): QT += widgets

9、

FORMS += mainwindow.ui

# ZC: 这里添加编译选项
QMAKE_CXXFLAGS += -Wno-write-strings \
            -Wno-strict-aliasing

ZC: QMAKE_CXXFLAGS 后面 貌似要跟 字母"W"。大小写 有何不同?

#ZC:下面这样做,是为了在不同平台使用不同的库文件
  #貌似,还可以用这样的方式:
  #“
  # unix: include(/home/user/myProject/myLybrary/my-lib.pri)
  # win32: include(C:/myProject/myLybrary/my-lib.pri)
  #”
  #但是,用上面的方式,有疑问,如何确定 是走"unix",还是走"win32"?难道也是用"CONFIG+=unix"的方式?
CONFIG += QMake_Win32 #这一句,相当于在命令行执行“qmake CONFIG+=QMake_Win32”
#注意下面这里,名字"QMake_Win32" 可以随便改,但是 大括号 和 "else" 的相对位置不能变,否则qmake时会报错...
QMake_Win32 {
  LIBS += -lws2_32 \
      -liconv
} else {
# LIBS += <LIB2> #ZC: 这里的 <LIB2> 指什么?
# DESTDIR = <DIR2> #ZC: 这里的 <DIR2> 指什么?
}

ZC: 貌似 LIBS后面的东西 都要带 字母L。大写的字母L,后面跟 动态库的绝对路径+文件名;小写字母l,后面跟 动态库的相对路径+文件名。

10、

11、

12、

Qt5_pro_01的更多相关文章

随机推荐

  1. php array_rand()函数从数组中随机选择一个或多个元素

    php使用array_rand()函数从数组中随机选择一个或多个元素的方法. 使用array_rand() 函数从数组中随机选出一个或多个元素,并返回.  array_rand(array,numbe ...

  2. js数组之有已有数组创建新的数组

    concat()和splice()方法允许通过已经有的数组创建新的数组 concat()这个方法可以合并多个数组创建一个数组 splice()这个方法是获得截取一个数组中的子集创建一个新的数组. 理论 ...

  3. TensorFlow 开发环境搭建--Pycharm

    今天动手开始搭建TensorFlow开发环境, 用PyCharm来跑MNIST中的例子.记录过程如下 下载安装 (1)首先安装AnaConda, AnaConda可以帮忙去管理安装包,帮忙创建虚拟环境 ...

  4. 如何获得当前页的SITECORE上下文

    当你开始任何项目,你需要首先要做的是了解当前页面的信息向网站用户显示相关页面数据.在今天的教程中,我将介绍一些基本的API调用的实现. Sitecore的实例 获得有关当前项目的信息,您可以使用Sit ...

  5. 排序-----插入排序(python版)

    直接插入排序的算法思路: (1) 设置监视哨r[0],将待插入纪录的值赋值给r[0]: (2) 设置开始查找的位置j: (3) 在数组中进行搜索,搜索中将第j个纪录后移,直至r[0].key≥r[j] ...

  6. 持续集成之三:搭建Maven私服Nexus

    安装环境 Red Hat Enterprise Linux Server release 7.3 (Maipo) jdk1.7.0_80 apache-tomcat-7.0.90 mysql-5.7. ...

  7. jstack生成的Thread Dump日志结构解析

    1 第一部分:Full thread dump identifier 2 第二部分:Java EE middleware, third party & custom application T ...

  8. Linux 远程连接sftp与ftp

    linux sftp远程连接命令 sftp -oPort=60001 root@192.168.0.254 使用-o选项来指定端口号. -oPort=远程端口号 sftp> get /var/w ...

  9. Qt之美(一):D指针/私有实现

    The English version is available at: http://xizhizhu.blogspot.com/2010/11/beauty-of-qt-1-d-pointer-p ...

  10. ELK学习笔记之ELK架构与介绍

    0x00 为什么用到ELK 一般我们需要进行日志分析场景:直接在日志文件中 grep.awk 就可以获得自己想要的信息.但在规模较大的场景中,此方法效率低下,面临问题包括日志量太大如何归档.文本搜索太 ...