【问题标题】:Running OpenFOAM native compile on a non-admin Windows在非管理员 Windows 上运行 OpenFOAM 原生编译
【发布时间】:2021-12-07 07:06:30
【问题描述】:

我已经从here 下载并安装了一个 Windows 原生编译的 OpenFOAM。但是,当我尝试在 MSYS2 终端中运行任何 OF 命令(例如,blockMeshfoamDictionary、...)时,我会收到以下消息:

path/to/folder/v2106/msys64/home/ofuser/OpenFOAM/OpenFOAM-v2106/platforms/win64MingwDPInt32Opt/bin/blockMesh.exe:加载共享库时出错:libstdc++-6.dll:无法打开共享对象文件: 没有这样的文件或目录

在 cmd 终端中,我收到错误消息:

系统错误
无法继续执行代码,因为找不到 msmpi.dll。重新安装程序可能会解决此问题。

来自here,我发现我可能需要以管理员模式重新安装 OpenFOAM,而这台工作机器上没有。所以我尝试使用pacman -S msmpi 安装MSMPI,就像我以前使用here 一样。但我收到错误消息:

错误:找不到目标:msmpi

我的目标是在这台没有管理员权限的 Windows 机器上安装和使用 OpenFOAM 软件,不管是哪个版本。如果您能帮助我了解如何解决上述问题或找到其他解决方法,我将不胜感激。

P.S.1. 搜索安装目录,发现libstdc++-6.dll文件在path\to\folder\v2106\msys64\home\ofuser\OpenFOAM\OpenFOAM-v2106\platforms\win64MingwDPInt32Opt\bin中。所以我想知道我收到第一条错误消息。也许 OF 没有针对库编译 properly?我应该尝试按照建议的here 删除path\to\folder\v2106\msys64\usr\lib\gcc\x86_64-pc-msys\7.4.0\libstdc++.dll.a 吗?

P.S.2. 我很久以前写过this post,介绍了在 Windows 上安装 OpenFOAM 的不同方法。遗憾的是,要启动并运行它仍然需要付出很大的努力。

P.S.3.关于这个问题的后续here on the MSYS2 Discord server

P.S.4.开新一期here on the OpenFOAM repository

【问题讨论】:

  • path\to\folder\v2106\msys64\home\ofuser\OpenFOAM\OpenFOAM-v2106\platforms\win64MingwDPInt32Opt` ? Try to install/update libstdc++: pacman -Su mingw-w64-x86_64-gcc-libs 下是否有lib 目录`
  • @s.ouchene 那里只有一个bin 文件夹。我应该手动创建一个lib 文件夹吗?安装失败并显示error: failed to init transaction (unable to lock database) error: could not lock database: File exists if you're sure a package manager is not already running, you can remove /var/lib/pacman/db.lck。让我重新启动系统,然后再试一次。
  • 尝试手动解压那个包,你会发现里面有DLL文件,复制到:`path\to\folder\v2106\msys64\home\ofuser\OpenFOAM\OpenFOAM-v2106\platforms\win64MingwDPInt32Opt \bin`
  • 我相信您会收到错误消息,因为您没有管理员权限。但是无论如何尝试一下,如果不起作用,请考虑使用 blueCFD 版本(基于 OF8)。 MSMPI 仅用于并行运行实用程序/求解器,但它不应该是强制性的。
  • 对于 BlueCFD,我相信如果您在此处发布:github.com/blueCFD/Core/issues,您将得到维护者的确认是否可行。

标签: windows mingw-w64 msys2 openfoam ms-mpi


【解决方案1】:

使用 OpenFOAM-v2112 现在可以在没有 Windows 管理员权限的情况下进行安装。 原来的问题在旧版 OpenFOAM 中仍然很明显,因为它们依赖于单独安装 msmpi。

【讨论】:

  • 谢谢,马克。我非常感谢您对此事的跟进和善意的支持。 ?
  • 这没有提供问题的答案。要批评或要求作者澄清,请在他们的帖子下方留下评论。 - From Review
  • @smaudet - 我该如何改进答案?基于最初的问题,OpenFOAM 的交叉编译和安装程序进行了更改,以便它现在可以工作。答案的适当措辞是什么?
猜你喜欢
  • 1970-01-01
  • 2022-01-19
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-12-02
  • 1970-01-01
相关资源
最近更新 更多