news 2026/6/10 20:03:00

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/6/10 12:26:18

Altium Designer四层板PCB绘制堆叠设计完整示例

四层板PCB设计实战:从Altium堆叠规划到高速信号落地你有没有遇到过这样的情况?电路原理图明明没问题,元器件选型也合理,但做出来的板子就是不稳定——USB传着传着丢包、ADC采样噪声大得离谱、以太网偶尔断连……最后排查半天&…

作者头像 李华
网站建设 2026/6/10 14:09:23

minicom实时数据监控操作指南:实用技巧分享

用 minicom 玩转串口监控:嵌入式开发者的实战手册你有没有过这样的经历?板子上电,电源灯亮了,但屏幕一片漆黑——没有启动信息、没有日志输出。你反复检查接线,确认波特率,甚至换了三块 USB 转串口模块&…

作者头像 李华
网站建设 2026/6/10 14:06:15

CSP内容安全策略:防范XSS注入

CSP内容安全策略&#xff1a;防范XSS注入 在现代Web应用中&#xff0c;用户上传的内容早已不再是简单的文本。从技术博客导出的Markdown文件到企业文档系统中的富文本片段&#xff0c;这些“合法”的输入里可能潜藏着<script>标签、内联事件处理器甚至伪装成图片的JavaSc…

作者头像 李华
网站建设 2026/6/10 10:48:50

MOSFET半桥驱动电路设计实战案例

深入实战&#xff1a;MOSFET半桥驱动电路设计全解析你有没有遇到过这样的情况——明明选了低导通电阻的MOSFET&#xff0c;系统效率却始终上不去&#xff1f;或者电机控制器一启动&#xff0c;上管就发热严重&#xff0c;甚至烧毁&#xff1f;更诡异的是&#xff0c;示波器上看…

作者头像 李华
网站建设 2026/6/10 12:30:14

低功耗场景下LED灯的高效PWM控制策略

让LED灯“省着亮”&#xff1a;低功耗系统中PWM调光的实战优化你有没有遇到过这样的问题——手环上的指示灯明明只闪一下&#xff0c;电池却掉得飞快&#xff1f;或者无线传感器节点在野外才工作几个月就歇菜&#xff0c;最后发现“罪魁祸首”竟然是那颗小小的LED&#xff1f;这…

作者头像 李华
网站建设 2026/6/10 12:28:34

42、导航应用程序与WPF浏览器技术全解析

导航应用程序与WPF浏览器技术全解析 1. 导航应用程序页面状态保存与页面函数概述 在导航应用中,页面状态保存是一个重要的话题。对于非 KeepAlive 页面,像文本框这类控件会自动将其状态存储在 JournalEntry 中,所以开发者通常只需保存特定的数据。另外,也可以基于 N…

作者头像 李华