在Eclipse Mars中设置GCC(ARM-Linux)用于&#C; C项目

时间:2016-03-13 21:08:26

标签: c linux eclipse

我正在尝试使用Eclipse-Mars在Windows下对ARM-Linux进行交叉编译。我的设置如下:

  • Win10 x64
  • Eclipse Mars.2发布(4.5.2)
  • RaspberryPi的GNU工具链(SysGCC)
  • 目标平台:运行Raspian的RaspberryPi2
  • 使用Linux线程(pthreads)的C(非C ++)源项目

我使用&#; pthreads'淘汰了一个小型的C项目。它在Eclipse下编译并在Pi上成功运行。

我的问题是Eclipse在其 Problems TAB 中显示了许多与Linux线程有关的错误:

  • 输入' pthread_cond_t'无法解决
  • 输入' pthread_mutex_t'无法解决
  • 输入' pthread_t'无法解决

我将Eclipse作为:

  • 交叉GCC编译器设置使用 g ++ -std = c ++ 11 -O0 -g3 -Wall -c -fmessage-length = 0 < /强>
  • 交叉G ++编译器设置使用 g ++ -std = c ++ 11 -O0 -g3 -Wall -c -fmessage-length = 0 < /强>

换句话说两者都是一样的。

如果我将源文件从 foo.c 重命名为 foo.cpp 并重新编译,那么Eclipse错误就会消失!!!

这意味着Eclipse的C ++设置是正确的,但它的&#C; C设置不是。

有人可以为我提出任何建议吗?

1 个答案:

答案 0 :(得分:0)

g ++是一个C ++编译器,因此您可能会尝试使用Cross GCC Compiler的其他设置,例如。 GCC。

还要确保链接pthread库。