LibreCAD Windows编译问题集
运行环境:win7系统,QT5.9.0(MSVC2015 32bit)
下载资源
LibreCAD
Boost
说明:下载最新版本即可(当时下载的的版本为:LibreCAD 2.2.0,Boost 1.53.0)。
编译生成几个功能库文件:dxfrw.lib、jwwlib.lib、muparser.lib
dxfrw.lib:用于读写文本格式或二进制格式的DXF文件
jwwlib.lib:
muparser.lib:公式编辑器
说明:1、修改libraries\jwwlib\src文件夹中的所有源码文件的编码格式,采用记事本打开,然后另存为UTF-8格式文件。如果没有修改,会产生很多语法错误;
2,使用qtcreator加载LibreCAD根目录下的工程librecad.pro文件,然后选择编译工程下的libaries工程,编译成功后,会产生一个generated文件夹,里面包含了所需要的功能库文件,如下图1所示,
引入库文件路径
- Boost库。Boost库不需要编译成lib库之后再放入到LibreCAD工程中。有两种方法将Boost路径加入到LibreCAD项目中,任选一种:a、将Boost的路径加入到系统环境变量中即可;b、找到librecad工程中的custom.pro文件,在其中添加BOOST_DIR的定义(BOOST_DIR = path),如下图2所示,
- 上一步中编译的几个功能库文件:dxfrw.lib、jwwlib.lib、muparser.lib。找到librecad工程中的src.pro文件,按照如下图片修改,
各种编译错误
完成上面的配置后,对librecad工程进行编译,可能会出现各种不同的错误,下面列出在我的环境中出现的编译错误,
1、编译出现M_PI和M_PI_2没有定义,根据字面理解,应该是圆周率的定义,直接在某一个公共头文件中定义。我选择在RS.h中定义;
编译生成LibreCAD.exe
编译成功后,会产生一个windows文件夹,LibreCAD.exe就生成在这个文件夹中。
自动生成QT执行文件所需要的所有库文件
参考博客;https://blog.****.net/hzt12345hf/article/details/51955494