netgen/ngsolve在windows下编译

整体流程可参考Build on Windows — NGS-Py 6.2.2101 documentation (ngsolve.org)

本人是基于NGS6.2.2101、Python 3.9.1、VS2019,Cmake3.19.2完成编译。

需要注意的是:

1.cmake "../src" -DCMAKE_INSTALL_PREFIX="BASEDIR/install" -G "Visual Studio 15 Win64"可能会报错,可换成:cmake "../src" -DCMAKE_INSTALL_PREFIX="BASEDIR/install" -G "Visual Studio 16 2019" -A x64,我安装的是VS2019,所以用了Visual Studio 16 2019。

2.全过程中可能会报错的地方还有:

  -- Could NOT find LAPACK (missing: LAPACK_DIR)
  Traceback (most recent call last):
    File "<string>", line 1, in <module>
  ModuleNotFoundError: No module named 'pybind11_stubgen'
  CMake Warning at python/CMakeLists.txt:15 (message):
    pybind11-stubgen not found, if you want to create stub files

    for better autocompletion support install it with pip.


  -- Could NOT find Sphinx (missing: SPHINX_EXECUTABLE)
  Sphinx not found, if you want to build the documentation you have to install Sphinx

pybind11_stubgen和Sphinx比较好处理,可以直接在cmd下使用pip安装。

针对LAPACK_DIR,其实已经被下载下来了,只是没声明这个变量,可以通过修改src下的CMakeLists.txt文件解决。

3.如果还报错,如下:

建议打开build\netgen\SUPERBUILD.sln,在VS2019中编译Install,观察报错提示,一般还是确实Python包导致的,使用pip安装即可。

生成的完整文件会在build\BASEDIR\install\bin目录下,双击即可使用。

编译后的文件请参照我的资源:netgen/ngsolve编译后的文件-C++文档类资源-CSDN下载

因该文件需要系统有相关库文件支撑,若直接下载运行可能会出错。


补充的其他报错及解决方案:

1.Install的时候报错:

 

2>CMake Error at project_win_tcltk-stamp/project_win_tcltk-download-Debug.cmake:49 (message):
2>  Command failed: 1
2>
2>   'E:/Program Files/CMake/bin/cmake.exe' '-Dmake=' '-Dconfig=Debug' '-P' 'E:/SVN/ZSX/6_FEATool/BASEDIR_ngsolve-6.2.2101_Debug/build/netgen/dependencies/src/project_win_tcltk-stamp/project_win_tcltk-download-Debug-impl.cmake'
2>
2>  See also
2>
2>    E:/SVN/ZSX/6_FEATool/BASEDIR_ngsolve-6.2.2101_Debug/build/netgen/dependencies/src/project_win_tcltk-stamp/project_win_tcltk-download-*.log
2>
2>
2>E:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Microsoft\VC\v160\Microsoft.CppCommon.targets(234,5): error MSB6006: “cmd.exe”已退出,代码为 1。

 

打开日志文件会发现类似如下内容:

CMake Error at project_win_zlib-stamp/download-project_win_zlib.cmake:170 (message):

  Each download failed!

 

    error: downloading 'https://github.com/NGSolve/ngsolve_dependencies/releases/download/v1.0.0/zlib_win64.zip' failed

          status_code: 28

          status_string: "Timeout was reached"

          log:

          --- LOG BEGIN ---

          timeout on name lookup is not supported

    Trying 13.229.188.59:443...

 

  connect to 13.229.188.59 port 443 failed: Timed out

 

  Failed to connect to github.com port 443: Timed out

 

  Closing connection 0

 

          --- LOG END --

CMake Error at project_win_zlib-stamp/project_win_zlib-download-Release-impl.cmake:9 (message):

  Command failed (1):

 

   'E:/Program Files/CMake/bin/cmake.exe' '-P' 'E:/SVN/ZSX/6_FEATool/BASEDIR_ngsolve-6.2.2101/build/netgen/dependencies/src/project_win_zlib-stamp/download-project_win_zlib.cmake'

写的已经很清楚了,下载时报错,要么是你的电脑无法访问https://github.com/,要么是不支持SSL,如果不想查找原因,我的资源中有这个zip文件,可以自行下载,已设置0积分下载。

将https://github.com/NGSolve/ngsolve_dependencies/releases/download/v1.0.0/zlib_win64.zip路径换成我的资源的下载路径再次编译即可。因CSDN的加密下载链接有时效限制,最好改完后立刻编译,否则可能还是出现下载的错误。如果有其他好的站点可以在留言中告知我,谢谢!



 

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 3
    评论
要下载Netgen软件,你可以通过Netgen官网进行下载。Netgen是一款开源的CAD网格生成软件,专门用于构建二维和三维复杂几何结构的网格。 首先,你需要打开你的浏览器,并输入Netgen官网的网址。你可以通过搜索引擎或直接输入"Netgen官网"来找到官方网站。进入网站后,你会看到一些关于Netgen软件的基本介绍和特点。 在网站的上方或菜单栏中,通常会有一个"下载"或"Download"选项。点击这个选项会弹出一个下载页面或列表,其中包含不同版本的Netgen软件。 在下载页面中,你可能会看到不同的操作系统选项,例如Windows、Linux或Mac OS。根据你的电脑操作系统选择对应的版本下载。如果你不确定自己的操作系统是哪一个,可以在计算机设置中查找或咨询相关人员。 选择适合你操作系统的版本后,点击下载按钮,开始下载Netgen软件安装文件。下载时间可能会根据网速和文件大小而有所不同。 完成下载后,你可以找到下载文件的存储位置,通常是在你的电脑的"下载"文件夹中。双击安装文件,根据提示完成软件的安装过程。 安装完成后,你就可以使用Netgen软件来进行CAD网格生成和几何结构建模了。可以根据软件提供的帮助文档或在线教程,了解更多如何使用Netgen的方法和技巧。 总结来说,要在Netgen官网上下载软件,只需要打开网站、选择适合你的操作系统的版本,然后完成下载和安装即可。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

D_ZSX

你的鼓励是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值