在Eclipse中在Windows上交叉编译Linux的C ++应用程序

时间:2017-08-04 04:50:12

标签: c++ eclipse cross-compiling

我可以使用 Eclipse C ++ 应用程序 for Linux 操作系统编码吗?

如果可能的话,我在Eclipse中需要做些什么设置?

提前致谢。

2 个答案:

答案 0 :(得分:2)

首先,找一个编译器。我无法帮助解决这个问题,但是“Windows到Linux交叉编译器GCC”的网络搜索可能会有所帮助。 So should browsing cygwin.

此处有良好的报道:C++ cross-compiler from Windows to Linux

这将我们发送到Eclipse构建一个新项目,我假设你已经知道该怎么做了。 这让你来到这里:

enter image description here

这导致:

enter image description here

在该面板上没有什么可看的,所以

旁边

enter image description here

填写两个文本框,然后单击“完成”。 Path很明显,Eclipse将在哪里找到编译器和工具,另一个有点奇怪。因为一旦你沿着这条路走下去,你往往会有很多编译器,他们必须得到不同的名字以防止混淆。所以你可能在同一台机器上有linux-mips32-g ++和linux-i386-g ++和qnx-arm-g ++。 Eclipse想要知道在g ++和其他工具面前要拍什么。

设置远程调试会有更多乐趣,但我认为这是另一个问题。

答案 1 :(得分:0)

C ++编译器可用于Linux和Windows,因此没有" C ++应用程序用于Linux"。只需使用标准C ++编写,不要使用特定于平台的功能(即winapi调用),也不要使用任何可以在Linux或任何其他目标平台上构建的库。

鉴于上述情况,您只需要在Linux上编译程序(最初是在Windows环境中编写),它将以相同的方式运行。如果您使用最新的语言功能(C ++ 17和/或expeirmental),您可能会遇到一些编译错误,这些错误很容易修复。像#ifdef _WIN32这样的东西是你处理它们时的最后手段。

当然,您不需要任何特殊设置。唯一的建议是使用跨平台构建系统。例如,CMake可以完成大部分脏工作,同时允许您在整齐的if(MSVC) ... endif()块中编写任何特定于平台的构建设置。