LibreCAD 2.1.3在windows 10 下的编译过程

一直想学习开源CAD 的代码,因此特意下载了开源CAD LibreCAD代码进行编译,在这个过程中遇到了一些问题,写下这篇文章标记一下

在GitHub上下载LibreCAD的源码,下载Boost源码,编译好,我这使用的Boost版本是Boost1.63.0,因之前已经编译好所以这次不需要编译Boost了。使用的Qt版本是Qt 5.9.6

源码使用Qt Creator打开,先编译librecad 生成文件夹generated 拷贝到文件夹目录中,

修改boost.pri将Boost库的目录改成绝对路径,以便能直接查询到

LibreCAD 2.1.3在windows 10 下的编译过程

直接运行会出错误;按下面这种方式修改即可

 no matching function for call to 'mu:parser::SetExpr(std::string)
宽字符问题:进行更改为p.DefineConst(_T("pi"),M_PI)形式;
p.SetExpr(expr.toStdString());改为p.SetExpr(expr.toStdWString());
std::cout << e.GetMsg() << std::endl;      
改为
        QString s;
        s.fromStdWString(e.GetMsg());
        std::cout << s.toStdString() << std::endl;

修改之后就能运行成功了

参考 这位博客大神的 http://www.gkbc8.com/thread-11684-1-1.html

如图

LibreCAD 2.1.3在windows 10 下的编译过程