编译: vs2019( cmake-3.15.0-win64-x64 ) + fltk1.3.5 + gmsh-4.6.0

gmsh的gui是用fltk写的,qt部分只有一个简单的显示和没有一样,想用qt的就不用找了,只能自己写。

第一步编译fltk1.3.5

先下载fltk,解压,新建目录build,打开cmake,进行如下配置,配置好source code和build 目录,点击configure,修改CMAKE_INSTALL_PREFIX,然后点击generate,然后点击open project,如果你是初次使用cmake,选择你想使用的编译器即可。
在这里插入图片描述
再vs2019内打开该项目后,点击本地调试器,所有项目生成成功后,在解决方案资源管理器中,选择INSTALL项目,右键选择生成,即在指定的CMAKE_INSTALL_PREFIX目录安装了fltk,在该目录下可以看到如下文件:
在这里插入图片描述

编译gmsh

下载gmsh源码解压,同样配置好source code和build安装目录,然后点击add_entry,添加如下的entry,这一步是为gmsh中指定fltk依赖路径,Value就是刚才fltk的安装目录.
在这里插入图片描述
然后点击configure,出现错误:
在这里插入图片描述
修改gmsh源码路径下的cmakelist.txt文件,修改495行为: #enable_language(Fortran)
再次点击configure,没有错误后,点击generate,生成成功后,点击open project
在vs内运行该项目,出现大量类似错误:
error C7555: 使用指定的初始值设定项至少需要“/std:c++latest”
发现出错原因均来自gmsh soruce code下的contrib/hxt,先移除hxt文件夹。
再次点击configure,generate,运行该项目,成功运行出图形界面。

其它小伙伴尝试发现的错误

在编译gmsh的时候,出现如下错误:
在这里插入图片描述
在这里插入图片描述
他们的解决方案都是手动添加fltk的静态链接路径:(路径在刚刚编译好的fltk目录下)
在这里插入图片描述
在这里插入图片描述
谢谢以上两位小伙伴的帮助!!!

其它注意点

  1. 由于gmsh源码目录下有tutorial,该目录下有t1.cpp,利用cmake进行编译时,也会生成t1.sln
    但是在运行时会出现错误,如:
    MSVCRT.lib(exe_winmain.obj) : error LNK2019: 无法解析的外部符号 WinMain,该符号在函数 "int __cdecl __scrt_common_main_seh(void)" (?__sc
    rt_common_main_seh@@YAHXZ) 中被引用
    出现原因是t1.cpp是控制台程序,入口函数是main,而vs编译器默认windows程序,入口函数为WinMain,在解决方案资源管理器中,选中t1,t1…x1项目,右键项目属性,在链接器–>系统–>选择subsystem :console即可
  2. fltk自带opengl支持 ,但如果编译时提示说不支持opengl,在项目-链接器—输入—附加依赖项:添加OpenGL32.lib 和 glut32.lib
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 6
    评论
cmake-3.11.2-win64-x64 是一个用于 Windows 操作系统的 CMake 版本。CMake 是一个跨平台的开源构建工具,用于自动生成适用于不同的操作系统(例如 Windows、Linux 和 macOS)和编译器的构建文件。 cmake-3.11.2-win64-x64 意味着这是一个适用于 64Windows 系统的 CMake 版本,可以用于开发和构建 64 位的 Windows 应用程序。CMake 提供了一种简化和标准化目构建过程的方法,通过 CMake 脚本文件,可以描述目的源代码、依赖编译等信息。 使用 cmake-3.11.2-win64-x64,您可以在 Windows 操作系统上进行目的构建和编译。首先,您需要cmake-3.11.2-win64-x64 下载到本地计算机上,并按照安装指南进行安装。安装后,您可以在命令行中使用 cmake 命令或者使用图形界面工具(如 CMake-GUI)来配置目的构建环境。 通过使用 CMake 构建目,您可以轻松地生成适用于 Visual Studio、MinGW、Ninja 等常见编译器和构建工具的构建文件。通过执行生成的构建文件,您可以在本地计算机上编译和构建目,生成可执行文件或者库文件。 总结来说,cmake-3.11.2-win64-x64 是一个适用于 64Windows 系统的 CMake 版本,它提供了一种简化和标准化的目构建过程,可以帮助开发者在 Windows 下进行目的构建和编译。通过 CMake,您可以自动生成适用于不同平台和编译器的构建文件,从而提高目的可移植性和可维护性。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值