我有一些经常使用的二进制形式的 Windows 命令行应用程序(我没有源代码)。有时我需要在 Linux 机器上运行它们,它在 wine 下完美运行(wine 不是模拟器)。我现在面临的问题是我需要在一个没有安装 wine 的集群上工作。我想知道是否可以在另一个类似的 linux 机器上创建一个静态可执行文件,所以我可以在集群上运行这个 windows 程序
谢谢
您无法编译静态 exe;Windows 太复杂了。但是您也许可以编译 Wine 以在您的集群上运行。
您需要的是一种在集群上编译代码的方法。Wine 本身可以安装在任何地方,但由于我不知道您是否拥有集群上的所有依赖项,因此可能需要一些工作。
所以我建议获取 Wine 资源,运行configure --prefix=$HOME/wine && make
,然后解决错误。
(--prefix
是安装 Wine 的路径;它应该是在集群和构建主机上相同的路径。如果一切都失败了,ln
是你的朋友)。
这是一个疯狂的想法;)在该集群上安装 wine。是什么阻止了你?如果你可以在那里执行程序......
如果这是某种严肃的软件,不建议在非本机操作系统上运行它。Wine 不是为运行关键应用程序而开发的。它仍然不是 Windows。
我刚刚花了几分钟寻找对我脑海中知识的参考,但我的谷歌搜索不符合它。
Picasa for linux 与 Wine 捆绑在一起,所以它可能是可能的,但我找不到几个月前读过的文章。
除此之外,您可以使用 gcc 和 winelib 进行交叉编译,但正如 Cyper 所说,没有代码就没有编译。