Qt编译QScintilla [C++版] 过程记录
本文是编译该 QScintilla 组件库供 QtCreater 开发 C++ 桌面软件 流程记录
一、编译环境
- 系统: Windows 10
- Qt:Qt 5.14.2
- 编译套件:MinGW 64
- Qscintilla:QScintilla_src-2.11.6
二、下载链接
网站链接:https://www.riverbankcomputing.com/software/qscintilla/download
下载最新 *.zip 版即可,gz是linux使用的。
注意:有多个版本,而2.12及其以后的版本,不再支持Qt4和Qt5了,所以源码中没有QT4QT5这个目录了。这里我下载的是2.11.6这个版本。下载完成后解压,其目录结构如下:
目录名 | 用途 |
---|---|
Qt4Qt5 | 编译文件夹,生成对应的DLL文件 |
designer-Qt4Qt5 | 相关的设计师插件的编译文件夹 |
example-Qt4Qt5 | 简单的示例文件夹 |
doc | 使用Doxygen生成的帮助文档 |
lexers | 已实现的各语法分析器 |
… | … |
二.编译和安装
然后解压后,可以看到里面有很多文件,其中安装的目录和源码在Qt4Qt5文件夹下,在这个文件夹里面使用qmake运行里面的.pro文件,就可以生成makefile文件,然后使用make或者nmake工具运行makefile文件即可。那我的QT版本举例,首先在系统环境变量PATH添加你的Qt的qmake路径和mingw64-make路径,比如我的电脑上添加的这两个路径分别是D:\software\Qt\Qt5.14.2\5.14.2\mingw73_64\bin和D:\software\Qt\Qt5.14.2\Tools\mingw730_64\bin,然后在刚才的Qt4Qt5文件夹下面,打开cmd到这个文件夹,分别执行如下语句:
qmake qscintilla.pro #使用qmake工具生成makefile文件
mingw32-make #使用Qt5.7 MinGW版本自带的make工具按照makefile里面的定义的方式编译qscintilla的源文件
mingw32-make install #将编译生成的库整合到自己的Qt源文件中
这样就完成了release版本的安装,可以使用release版本编译了,最主要是输出了以下两个文件,在Qt4Qt5\release文件夹里面
使用mingw32-make install
会自动把编译的动态库放在Qt的lib 、bin路径下
-
qscintilla2_qt5.dll 位置
-
qscintilla2_qt5.a 位置
但是debug不行,debug版本需要按照以下流程继续操作。
在刚才的Qt4Qt5文件夹下面,找到并打开Makefile,修改first为debug,如下图:
修改完成后再次执行下面命令
mingw32-make #使用Qt5.7 MinGW版本自带的make工具按照makefile里面的定义的方式编译qscintilla的源文件
执行完成后,在Qt4Qt5\debug目录下就会输出libqscintilla2_qt5d.a和qscintilla2_qt5d.dll
然后手动将这两个文件复制过去,复制后如下:
- qscintilla2_qt5d.dll 位置
- qscintilla2_qt5d.a 位置
复制完成后debug也就可以正常使用了。
三、测试
使用 example 文件夹的 application.pro 项目
1、打开项目后-点击 运行 按钮,运行结果 【运行无误】