在上一篇探索企业级开源求解器OpenRadioss(一)发表后,有大神反映Code_Aster也是企业及的开源求解器,而且很早就开源了,只不过以隐式求解居多。小仿真觉得有道理,所以将标题稍微修改一下,但内容是一如既往的高质量且统一的。关于Code_Aster,以后有机会小仿真会带着大家一起探索。
上篇文章中,演示了在Linux Ubuntu 20.04 LTS下编译OpenRadioss的全过程,同时给出了一些直接的感受。今天将会在Windows下演示编译OpenRadioss,同时文章结尾会给出一些体会。
在OpenRadioss的官方GitHub主页,说明了可以在Windows下通过使用WSL编译。也就是说运行的时候应该也只能通过WSL了。好在WSL和Windows的文件交互很方便,尤其对于求解器的输入和输出文件,操作起来应该是没有问题。
小仿真WSL中安装的是Ubuntu 20.04 LTS,所以就以Ubuntu的命令行来更新和下载所需要的依赖库。在WSL的命令行中输入以下命令。
apt-get update
apt-get upgrade
apt-get install build-essential, gfortran, cmake, perl, git-lfs, libapr1-dev
按照官方教程给出的方式下载源码
git lfs install
git clone git@github.com:OpenRadioss/OpenRadioss.git
如果官方的库无法下载源码,可以先fork到自己GitHub项目中,再从自己的fork中下载。
下载完毕后,在OpenRadioss/starter目录中输入命令进行编译
./build_script.sh -arch=linux64_gf -nt 20
编译成功后,显示如下:
试运行一下:
./starter_linux64_gf
可以运行。
接下来编译engine程序。进入OpenRadioss/engine目录并输入
./build_script.sh -arch=linux64_gf -nt 20
编译成功后,得到如下
试运行一下
./engine_linux64_gf
可以运行。
就此,Windows下编译OpenRadioss就完成了。还是很顺利的。
下面来谈谈小仿真的感受:
1. 由于使用WSL环境,总体来说和Linux原生系统编译是没有什么区别。并行编译也能感受到调用多核且明显的提速。
2. 运行starter_linux64_gf可能会提示找不到动态库libhm_reader_linux64.so,这个问题在Linux下也可能遇到。可以通过patchelf给文件设置连接路径。
3. 运行starter_linux64_gf可能会提示找不到动态库libapr1.so.0,这个问题在Linux下也可能遇到。可以通过安装libapr1-dev到系统或者使用patchelf的方式解决。
4. WSL安装名义上解决了Windows下编译的问题,但是实际并不是原生的Windows应用。对于使用者友好,但对于熟悉Windows开发环境的开发者并不是很友好。因为调试程序的时候无法用到Visual Studio的强大功能。好处是现在可以在Windows下快速的进行Radioss的运算求解了。是不是跃跃欲试要跑几个算例了呢?
下一篇,小仿真还会和大家一起来探索OpenRadioss,希望看到什么内容呢?在评论区留言吧。
WelSim不隶属于Altair,OpenRadioss。和Altair,OpenRadioss的开发者没有直接关系。这里引用Altair,OpenRadioss仅用作技术博客文章与软件使用的参考。
网友评论