我的程序最近在提高精度时出现BAD_ALLOC
错误。 我的猜测是,它需要的RAM超过了我的计算机可以分配给它的RAM(实际上需要超过3GB的RAM)。 所以我决定在我们的linux集群上试用它,因为它可以给我提供更多的RAM。 它包含一些gcc模块。 但是我不确定如何在上面使用我的C++代码。 我可以在集群上运行我的。exe吗,还是应该先在linux集群上重新编译它?
如果我理解正确的话,你肯定需要在集群上重新编译你的代码。 你已经在Windows平台上构建了你的app,以至于二进制无法在linux目标系统上工作。
有一些方法可以使Windows可执行文件在Linux上运行,例如Wine,但通常您需要一个原生Linux可执行文件。 可执行文件在Windows(EXE)和Linux(ELF)上具有不同的文件格式。
您的选择是
您的代码是否可以在不同的系统上编译取决于您的代码。 您使用了Windows库吗? 是否使用了第三方库? 使用编译器扩展了吗?
大多数第三方库通常也可以在Linux上使用。 对于仅适用于Windows的库和编译器扩展,您必须找到解决方法。