在Linux上安装Ansys CFD
目前测试过的Ansys CFD版本有2022R2和2023R1,测试的Linux发行版有Fedora39,ubuntu22.04LTS,Debian12。目前完美兼容的是Ubuntu22.04LTS和Ansys2022R2,可以使用workbench打开Mesh模块,Static mechanical模块,icemCFD模块,Fluent模块。
在Ubuntu上安装Ansys需要注意的事项
需要补充安装的包
lsb-core: 解决无法获取hostID的问题
qtcreator: 解决./INSTALL命令无法启动安装Ansys文件的问题
libjpeg62: 解决./runwb2无法启动workbench的问题
tcsh: 解决Fluent meshing 无法导入cad文件的问题
libmotif-common, xfonts-75dpi, xfonts-100dpi 解决icemCFD启动时显示缺失 font family helvetica
icemCFD无法启动的问题
/ansys_inc/v222/icemcfd/x86_64/lib/libstdc++.so.6版本太低,需要将新版本复制至路径中并链接
sudo cp /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.30 /ansys_inc/v222/icemcfd/x86_64/lib
sudo rm /ansys_inc/v222/icemcfd/x86_64/lib/libstdc++.so.6
sudo ln -s libstdc++.so.6.0.30 libstdc++.so.6
在Debian上安装Ansys需要注意的事项
lsb-core
Debian 12移除了lsb lsb-core等库,而Ansys需要调用/ld-lsb-x86-64.so.3
来获取system hostid,而其功能可以通过自带的库ld-linux-x86-64.2
实现,执行命令
sudo ln -s /lib64/ld-linux-x86-64.so.2 /lib64/ld-lsb-x86-64.so.3
libstdc++.so.6
Debian 12无法打开Ansys Wrokbench,且无法打开Ansys Help,报错均为Ans.QT.dll的问题。通过命令可知,libstdc++.so.6版本太低。
ldd /ansys_inc/v222/tp/qt_fw/5.9.6/Linux64/lib/libQt*so | grep found
"/ansys_inc/v222/tp/qt_fw/5.9.6/Linux64/lib/libQt5WebKit.so: libstdc++.so.6: version `GLIBCXX_3.4.30' not found (required by /lib/x86_64-linux-gnu/libicuuc.so.72)"
命令strings /lib/x86_64-linux-gnu/libstdc++.so.6.0.30 | grep GLIBCXX
可查询GLIBCXX版本。经过查找,这里指的是/ansys_inc/v222/Framework/bin/Linux64/libstdc++.so.6
版本过低,将高版本复制到指定路径。
sudo cp /lib/x86_64-linux-gnu/libstdc++.so.6.0.30 /ansys_inc/v222/Framework/bin/Linux64/
删除原有链接sudo rm libstdc++.so.6
,创建新链接 sudo ln -s libstdc++.so.6.0.30 libstdc++.so.6
libGL error: MESA-LOADER: failed to open swrast: /ansys_inc/v222/fluent/fluent22.2.0/lnamd64/syslib/libstdc++.so.6 version GLIBCXX_3.4.26 not found
libstdc++.so.6版本太低,将新版本复制到对应路径并链接。
sudo cp /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.30 /ansys_inc/v222/fluent/fluent22.2.0/lnamd64/syslib/
sudo rm /ansys_inc/v222/fluent/fluent22.2.0/lnamd64/syslib/libstdc++.so.6
sudo ln -s libstdc++.so.6.0.30 libstdc++.so.6
libGL error
libGL error: MESA-LOADER: failed to open vmwgfx: /usr/lib/dri/vmwgfx_dri.so: cannot open shared object file: No such file or directory (search paths /usr/lib/x86_64-linux-gnu/dri:\$${ORIGIN}/dri:/usr/lib/dri, suffix _dri)
libGL error: MESA-LOADER: failed to open swrast: /usr/lib/dri/swrast_dri.so: cannot open shared object file: No such file or directory (search paths /usr/lib/x86_64-linux-gnu/dri:\$${ORIGIN}/dri:/usr/lib/dri, suffix _dri)
该错误是由于debian12的dri路径为/usr/lib/x86_64-linnux-gnu/dri,因此需要在/usr/lib/dri中创建两个链接到/usr/lib/x86_64-linnux-gnu/dri
sudo ln -s /usr/lib/x86_64-linux-gnu/dri/swrast_dri.so /usr/lib/dri/swrast_dri.so
sudo ln -s /usr/lib/x86_64-linux-gnu/dri/vmwgfx_dri.so /usr/lib/dri/vmwgfx_dri.so