【发布时间】:2010-07-29 14:45:16
【问题描述】:
我想知道是否可以使用 Eclipse 在 Windows 中为 Linux 编写和调试 C++ 应用程序?如果是这样,您能否指出配置 Eclipse 的正确方向?
谢谢
【问题讨论】:
我想知道是否可以使用 Eclipse 在 Windows 中为 Linux 编写和调试 C++ 应用程序?如果是这样,您能否指出配置 Eclipse 的正确方向?
谢谢
【问题讨论】:
我相信这是可能的。
您应该配置 Eclipse 以使用 Cygwin 的工具链:
http://www3.ntu.edu.sg/home/ehchua/programming/howto/Eclipse_cpp_HowTo.html
http://www3.ntu.edu.sg/home/ehchua/programming/howto/Eclipse_cpp_HowTo.html
【讨论】:
要编译它,您需要一个交叉编译器链,例如来自 cygwin。还有一些可用于某些 Linux 发行版的“开发工具包”。 (尤其是嵌入式)。
要调试应用程序,您需要在 linux 目标上运行应用程序并使用“gdbserver”来允许远程调试。
启动 gdbserver 很简单,它需要一个连接 tty(串行设备、USB、网络)并且可以附加到一个正在运行的 PID。因此,要附加到您的程序“myProg”并让 gdbserver 在端口 6000 上侦听,只需使用
gdbserver :6000 --attach
pidof myProg
(编辑:请注意 pidof myProg 周围有“反引号”,但我不知道如何转义它们,因此 stackoverflow 不会将其识别为格式)。
在目标上。
在 Windows 主机上,您还需要一个 gdb(它应该与您的交叉编译器一起提供)。 然后就可以使用 Eclipse 启动远程调试并连接到 Linux 目标了。
【讨论】:
如果您正在 Eclipse 中寻找一个“神奇”的插件,可以让您在 Windows 中开发 Linux 软件,那么这样的东西是不存在的。
要使 Linux 可执行,您需要在 Linux 上编译您的代码。 (有交叉编译器,但我怀疑是否有适用于 Windows 的 Linux 编译器。)
如果您编写的代码可移植,那么您绝对可以在 Windows 上进行开发,然后在 Linux 上编译您的代码。坚持使用可移植库(STL、boost 等),你应该会很好。使用什么 IDE 并不重要。
【讨论】: