news 2026/4/23 9:45:37

cmake安装debug版本的netgen教程

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
cmake安装debug版本的netgen教程

安装过程曲折,不断出bug,最终还是成功安装,遂写下此文以教后人。

  • 【注意】此为Debug版本的安装

1 准备工作

  • 安装 zlib (git 下载,cmake 安装,过程很简单)

  • 安装 occt (如果需要用到 occt 的话,这个前人都有教程)

  • 下载 netgen 源代码:

git clone --recursive https://github.com/NGSolve/netgen.git cd netgen git submodule update --init --recursive

2 配置工作

使用 cmake,选取 安装目录 和 build 目录,点击Configure

根据自己的需求选择使用的模块,因为我不需要 netgen 的 GUI 所以我取消了 USE_GUI,这里建议取消 USE_SUPERBUILD,这个 USE_SUPERBUILD 很容易出错。需要用 OCCT 的话,USE_OCC 就保持选取即可。

  • CMAKE_INSTALL_PREFIX:设置安装位置

  • CMAKE_BUILD_TYPE:Debug

点击Configure,设置 zlib 文件夹和 OCC 文件夹:

再次点击 点击Configure,构建成功,点击Generate,再点击Open Project

3 重点修改

debug 版本有一个关于NGCORE_API的一个 bug,需要找到 ngcore下的bitarray.hpp文件,翻到最下面有一个TBitArray,把 Or 函数签名的 宏删除,不然构建会出 error

除此之外,在 vs 2022 窗口最上方菜单栏,项目->属性->常规,修改编译 C++版本为 17:

ngcore、nglib、ngpy、pyngcore 等,只要是属性中可以看到 C/C++ -> 代码生成的,都要修改运行库,原来提供的运行库是release版本的,我们要修改为 debug 版本的:

4 收尾工作

ALL_BUILD右键生成,接着INSTALL右键生成

可以看到安装目录下面有 cmake 以及对应的 cmake 文件,说明 debug 版本安装成功。

以上是个人经验,有什么错误恳请指正。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/14 2:28:19

智能体能解决企业哪些高频重复的业务痛点?

如果说大模型是横空出世的“超级大脑”,那么智能体(AI Agent)就是为这个大脑装上的“手脚”与“感官”。你是否经历过这样的时刻:对着ChatGPT聊得热火朝天,让它帮你写好了旅行攻略,甚至列出了每一站的美食清…

作者头像 李华
网站建设 2026/4/13 23:43:06

留存率提升策略:让用户爱上你的产品

留存率提升策略:让用户爱上你的产品 在AI应用遍地开花的今天,一个残酷的事实是:90%的用户在首次使用后便再未回来。无论模型多强大、功能多丰富,如果用户无法快速获得价值,产品就会被无情抛弃。留存率,已经…

作者头像 李华
网站建设 2026/4/22 7:29:04

移动游戏运行效率:arm架构和x86架构从零实现测试

移动游戏为何更偏爱ARM?一次从芯片到帧率的真实性能实验你有没有发现,无论多强大的安卓手机,几乎清一色用的都是ARM架构处理器;而当你在电脑上用模拟器玩《原神》时,明明i7处理器火力全开,却还是不如一台旗…

作者头像 李华
网站建设 2026/4/20 9:45:23

UDS 28服务项目应用:整车厂实际案例分享

UDS 28服务实战解析:整车厂产线如何靠它提速35%?在某新能源车企的总装车间里,一辆新车缓缓驶入诊断工位。RFID自动识别VIN码后,上位机系统瞬间调出匹配的软件版本,并通过车载网关向VCU发起连接——接下来的一系列操作行…

作者头像 李华
网站建设 2026/4/17 20:55:10

批量拉取Git项目sh脚本

MAC 当前目录是workspace ,目录下有多个git项目,帮我写个sh脚本,遍历目录,批量拉git pull每个项目的代码下面是一个适用于 macOS(或任何类 Unix 系统)的 Bash 脚本,它会遍历当前目录 workspace …

作者头像 李华