欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

VS2019 编译 MathGL2.4.4

程序员文章站 2024-03-23 11:27:34
...

需求用VS2019编译mathGL

软件版本

cmake-3.19.1-win64-x64
zlib-1.2.11,源码
lpng-1.6.37,源码
MathGL-2.4.4,源码
VS2019社区版,工具集:Visual Studio 2019 (v142)、SDK- 10.0.18362.0

编译步骤:

  1. 由于Math G了依赖依赖于zlib、lpng两个库,所以首先用VS2019,将两个库分别编译好,本此主要是编译成 zlibstatic.lib 、 zlibstaticd.lib和 libpng16_static.lib 、libpng16_staticd.lib
  2. 编译好后,使用Cmake,按照步骤配置完成, 第一次Configure后,会弹框(error in configuration process project files may be invalid)这主要是找不到依赖的文件,请在对应位置加上zlib和lpng的路径
  3. 添加好后 再次Configure应该会有连个警告忽略 。如: Building of translation files was disabled, because xgettext, msgmerge, msgcat or msgfmt was not found. Current translations will be just coped.
  4. Configuring done后,Generate 如无错误后可以看到Generating done
  5. 以上完成后,就可以去VS进行编译了

编译中可能出现的问题:

  1. 无法打开包括文件: “pnglibconf.h”: No such file or directory;点击这个错误,在代码中他有告诉你怎么做。主要原因是头文件不在,Camke的时候被改名字了,找到他,copy过来,然后改名就好了。类似的几个都自己去源代码中去找对应的头文件即可。
  2. error C2065: “M_LN10”: 未声明的标识符libpng16_static.lib这个错 误主要是么有申明,在对应的文件中添加 #define_USE_MATH_DEFINES
  3. mgl_example工程里full_test.cpp里面的的错误VS2019 编译 MathGL2.4.4
    a、classData没有成员Save,有报错,但并没有影响编译(不明白到底是什么意思,没做处理)
    b、常量中存在换行符,没搞明白,在,号加了一个空格就ok 了;
//mgl_create_cpp_font(gr->Self(),L"!-~,¡-ÿ,̀-̏,Α-ω,ϑ,ϕ,ϖ,ϰ,ϱ,ϵ,А-я,ℏ,ℑ,ℓ,ℜ,←-↙,∀-∯,≠-≯,⟂");
	mgl_create_cpp_font(gr->Self(), L"!-~,¡-ÿ,̀-̏ ,Α-ω,ϑ,ϕ,ϖ,ϰ,ϱ,ϵ,А-я,ℏ,ℑ,ℓ,ℜ,←-↙,∀-∯,≠-≯,⟂");
		//mgl_create_cpp_font(gr->Self(),L"rr");

参考资料:
1、http://element-ui.cn/article/show-3861.aspx
2、https://blog.csdn.net/firecityplans/article/details/77972712

相关标签: 重新编译 c++