提问者:小点点

在linux集群上运行windows C++代码


我的程序最近在提高精度时出现BAD_ALLOC错误。 我的猜测是,它需要的RAM超过了我的计算机可以分配给它的RAM(实际上需要超过3GB的RAM)。 所以我决定在我们的linux集群上试用它,因为它可以给我提供更多的RAM。 它包含一些gcc模块。 但是我不确定如何在上面使用我的C++代码。 我可以在集群上运行我的。exe吗,还是应该先在linux集群上重新编译它?


共2个答案

匿名用户

如果我理解正确的话,你肯定需要在集群上重新编译你的代码。 你已经在Windows平台上构建了你的app,以至于二进制无法在linux目标系统上工作。

匿名用户

有一些方法可以使Windows可执行文件在Linux上运行,例如Wine,但通常您需要一个原生Linux可执行文件。 可执行文件在Windows(EXE)和Linux(ELF)上具有不同的文件格式。

您的选择是

  • 重新编译代码并在不使用其他工具或
  • 的情况下运行程序
  • 使用可以在Linux上运行Windows可执行文件的工具,例如Wine.

您的代码是否可以在不同的系统上编译取决于您的代码。 您使用了Windows库吗? 是否使用了第三方库? 使用编译器扩展了吗?

大多数第三方库通常也可以在Linux上使用。 对于仅适用于Windows的库和编译器扩展,您必须找到解决方法。

相关问题


MySQL Query : SELECT * FROM v9_ask_question WHERE 1=1 AND question regexp '(linux|集群|运行|windows|c++|代码)' ORDER BY qid DESC LIMIT 20
MySQL Error : Got error 'repetition-operator operand invalid' from regexp
MySQL Errno : 1139
Message : Got error 'repetition-operator operand invalid' from regexp
Need Help?