KDDockWidgets 是由 KDAB(官网) 编写的 Qt Dock 小部件库,适用于替换 QDockWidget和实现 Qt 中缺少的高级功能。
功能特点:
以上描述可以看到,KDDockWidgets的扩展功能是非常丰富的,操作有点类似VS。
github地址:https://github.com/KDAB/KDDockWidgets
今天主要来介绍如何编译源码并安装,然后运行自带的示例。我在这过程中遇到了很多坑,把整个过程记录一下,以便他人参考。
在编译KDDockWidgets之前所需要做以下准备:
注意,这一步非常关键,安装完上面的软件后必须要设置环境变量,否则在编译KDDockWidgets时无法正确引用。
右键我的电脑打开属性:
注意,由于KDDockWidgets配置的默认编译选择是32bit的(可以去修改,具体修改方法自行参照网上资料,我这里就直接用默认的32位编译),所以环境变量的要配置x86路径。
新建系统变量LIB,添加VS相关的环境变量
新建系统变量INCLUDE
在PATH中添加 cmake、ninja、Qt、VS等环境变量
注:以上是我电脑的路径,根据自己的实际路径进行添加。
从github上下载源代码到本地
打开CMD终端 将目录切换到源码目录
然后输入:cmake . -G Ninja
然后输入:cmake --build .
等待编译
执行完后会在bin目录下生成
这里编译会将源代码以及示例代码一起编译,在bin目录下生成示例程序,双击即可打开体验。
最后执行安装命令:cmake --build . --target install
注意,这里只是编译了debug版本的库,默认会安装到C盘:
根据官方提供的示例运行,体验还不错,功能比原生的QDockWidget更加丰富,若想在自己项目中使用KDDockWidgets,可以参照其示例进行修改。
以上步骤看起来很简单,但其实过程中遇到了很多的问题,主要都是环境变量引起的,由于我自己电脑是64位,所以配置环境变量的路径全是64位的,所以不断的报错,比如:
还有其他lib引用错误等,其实都是环境变量的原因导致的,源代码中的编译设置是32位,所以所有的环境变量配置都需要32位的路径,Qt也需要安装32位的vs版本,只要设置正确就不会有啥大问题了。
如果要编译64位库以及release版本的dll,那就需要修改根目录的makefile文件了,这里不做描述,可参考网上资料。