QCAD v3.28.1.3源码编译,使用VS2019+Qt5.15.2环境
2026/5/6 21:19:38 网站建设 项目流程

几年前写过一篇博文:《QCAD v3.23.0.2源码编译,使用VS2017+Qt5.12.5环境》

https://blog.csdn.net/libaineu2004/article/details/100217789

https://github.com/qcad/qcad

https://gitee.com/mirrors/qcad

现在qcad版本也一直更新,于是决定使用VS2019再写一篇编译教程。

一、先说新版本spatialindexnavel的编译问题

从v3.28.2.0开始有legacy文件夹,

\src\3rdparty\legacy\存放了老版本的opennurbs和spatialindexnavel

\src\3rdparty\存放了新版本的opennurbs和spatialindexnavel

但是我使用vs2019编译新版本的spatialindexnavel会出错
spatialindexnavel.dll : fatal error LNK1120: 105 个无法解析的外部命令

由于该问题无法解决,本人就无法使用VS2019去编译新版本qcad源码了。

只能选择最近的,且没有legacy文件夹的版本,v3.28.1.3。

二、编译v3.28.1.3的过程

1、在VS2019的主菜单-扩展-打开Qt VS Tools,并选择Open Qt Project File(.pro)。

会自动生成解决方案文件\qcad-v3.28.1.3\qcad-v3.28.1.3\qcadqcad.sln

然后使用VS2019打开这个sln文件

2、修复几处错误或遗漏

在main.cpp新增头文件#include <locale>

qcadcmd.com删除【生成后事件】的命令行和说明

3、一键编译,成功

4、然后再vs2019打开这个文件

\qcad-v3.28.1.3\qcad-v3.28.1.3\src\3rdparty\qt-labs-qtscriptgenerator-5.15.2\qcadqt-labs-qtscriptgenerator-5.sln

一键编译,成功

5、运行\qcad-v3.28.1.3\qcad-v3.28.1.3\debug\qcad.exe,成功

6、\qcad-v3.28.1.3\qcad-v3.28.1.3\plugins\

该路径会有编译生成的插件文件,debug模式编译,会自动加上后缀_debug

qcaddxf_debug.dll

qcadscripts_debug.dll

插件加载的的源码在RPluginLoader.cpp

\qcad-v3.28.1.3\qcad-v3.28.1.3\src\core\RPluginLoader.cpp

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询