include目录
- 安装好Qt后,我们会有
- bin\
- src\
- lib\
- include\
- ...
可是,如果下载Qt源码的话,里面并没有include这个目录
那么,它是怎么来的:
syncqt
include目录中的东西是由syncqt这个perl脚本生成的,这是是syncqt主要的功能吧。
运行
./bin/syncqt -help
可看到用法及其参数介绍
./bin/syncqt usage:
<module directory> Specifies which module to sync header files for (required for shadow builds!)
-copy Copy headers instead of include-fwd(default: no)
...
如何调用
下载源码,编译Qt的第一步是: configure
- posix下是 shell脚本 configure
- windows下是可执行程序 configure.exe
sync 这个脚本就是被configure所调用了。似乎不值得惊奇,编译时调用一次似乎也足够了
Qt5的变化
伴随着模块化,Qt分拆成几个子仓库,每个里面都有一个
sync.profile
一直以来不清楚这里面用的是一种什么语法,弄了半天原来也是Perl,是由 syncqt 调用的。
用来控制该仓库内的各个模块的头文件如何同步到include目录中
syncqt方式调用也发生了变化,除了在configure的时候被调用外,当源码更新后,执行make的时候,也会发现它被调用。
- 刚开始以为是Makefile中有直接的规则,后来发现没有
- 原来是qmake是执行时被调用的,(当pro/pri/prf变化时,make调用了qmake),详见文件
mkspecs/features/default_pre.prf
关键代码:
!build_pass:exists($$_PRO_FILE_PWD_/sync.profile) {
qtPrepareTool(QMAKE_SYNCQT, syncqt)
$$QMAKE_SYNCQT $$QTFWD -generator $$MAKEFILE_GENERATOR -outdir $$QMAKE_SYNCQT_OUTDIR $$_PRO_FILE_PWD_)
}
sync.profile
该文件内定义了
%modules
|
"QtGui"=>"$basedir/src/gui"
键和值:模块和模块路径
$basedir由sync.profile所在目录确定
|
%moduleheaders
|
去哪个目录下找头文件,默认是前面的模块路径(及其子目录)
|
@allmoduleheadersprivate
|
一般,*_p.h是私有头文件,但是对某些模块,比如V8,所有头文件都是私有的
|
%classnames
|
"qdebug.h"=>"QtDebug"
一般从公有头文件中提取类名,创建不包含.h后缀的头文件。但有时,我们需要QtDebug这样的头文件,尽管不对应任何类。
|
%mastercontent
|
"core"=>"#include<QtCore/QtCore>\n"
|
%modulepris
|
"QtCore"=>"$basedir/src/modules/qt_core.pri"
|
%explicitheaders
|
"qtbase"=>"refs/heads/master"
|
除此外,还有一些
@ignore_for_*
分享到:
相关推荐
基于QT的脚本功能实现
在windows平台下用QT实现的画图工具 可移植 在windows平台下用QT实现的画图工具 可移植 在windows平台下用QT实现的画图工具 可移植 在windows平台下用QT实现的画图工具 可移植 在windows平台下用QT实现的画图工具 可...
QtXlsx读写Excel工具QtXlsx读写Excel工具QtXlsx读写Excel工具QtXlsx读写Excel工具QtXlsx读写Excel工具QtXlsx读写Excel工具QtXlsx读写Excel工具QtXlsx读写Excel工具QtXlsx读写Excel工具QtXlsx读写Excel工具QtXlsx读写...
qt是一个大型C++集成块 方便易用。此版本程序有QT4.81开发。
QtCreator调试工具,
AQT数据库客户端工具,可以作为客户端连接各种数据库,进行操作
qt的画图工具,支持直线、圆形、椭圆、矩形、折线、弧线,还可自定义添加控件,支持保存到文件并可还原,支持撤销、排版,放大、缩小,操作过程日志化 qt的画图工具,支持直线、圆形、椭圆、矩形、折线、弧线,还可...
反编译工具IDA Freeware 7.6以及Qt5 程序初步逆向分析+解析脚本 工具可反编译成汇编。
基于qt的截图工具实现了截图后进行多种编辑,采用仿QQ截图控制面板,已经进行打包,若有兴趣,可在博客中留言留下邮箱,可将主要代码发送分享。
主要用Qt实现浮动窗口,并在浮动窗口中动态布局窗口上的控件。
QT文件传输工具程序及代码
本实例详细说明了在Qt中如何使用工具按钮,即设置附带图片的按钮,上面是图片,下面是文字。注意设置ToolButtonStyle。
qt自定义工具栏,类似word 详见博客:http://blog.csdn.net/caoshangpa/article/details/52239687
Qt程序打包工具,一键打包,免费
Qt工程,c++代码调用vbs脚本函数,一个很简单的demo,参考学习
可以显示截图区域大小,可以任意拖动截图区域,四个边框可拖拽修改大小
1.编译运行JavaScript脚本的例子。 2.包含了QScriptEngine的一些使用方法。
qt C++ 写的 udp 测试工具 简单
用Qt写的截图工具,实现了点击按钮背景色变暗,可用鼠标框选要截图的区域,并保存至本地文件。内含完整的工程文件。