【发布时间】:2014-03-26 06:45:45
【问题描述】:
我有一个问题。我需要为 linux 编译 C 代码,但我使用的是我真正想要使用的 windows IDE。因此,我需要一个能够编译 C 代码的命令行编译器可执行文件,例如 gcc。此外,我还需要能够将 CUDA C 代码编译成 linux 程序。因此我的问题:
是否可以在 Windows 机器上将 CUDA C 代码编译成 Linux 程序?
如果可能的话,有人可以给出完整的描述来设置编译器吗?
谢谢!
【问题讨论】:
-
你可能想要
cygwin: metamod-p.sourceforge.net/… -
你需要一个交叉编译器,也许这会对你有所帮助stackoverflow.com/questions/4769968/…
-
是什么阻止你在 Linux 机器上编译?通常,交叉编译需要通过在预期平台上简单地编译来完成一些更容易完成的事情。
-
没有官方支持的方法。唯一的officially supported host code compiler on windows 是
cl.exe,Visual Studio 自带的编译器,它只针对windows 平台。在 linux 上,支持的主机编译器是 gnu/gcc/g++,所以尝试这样做的第一步是从 windows 机器上的 cygwin 或 minGW 获取 gcc 版本。但我认为你还有很长的路要走。 -
我认为您在这里看到的挑战是巨大的。例如,我发现很难从 RHEL 6 机器(linux->linux)构建一个可以在 RHEL 5.5 机器上正确运行的二进制文件。我担心的问题不是编译器,而是所有相关的库。我也对 linux 机器的性质感到困惑,你不能用它来编译,但可以用它来运行代码。你提到你不能安装 nvcc。如果
nvcc没有安装,可能意味着cuda takeit没有安装,这意味着cuda运行时应用程序不会在该机器上运行。
标签: c linux windows cuda compilation