0

我正在尝试在 Android 的 Tux Racer 源代码中运行和调试 C 代码。大部分代码都是用 C 编写的,所以我将 Android 项目转换为 C 项目(添加 C/C++ 性质)。我使用了 Cygwin 工具链。现在我遇到了问题,因为 Eclipse 在代码中发现了一些虚构的错误,例如:

#if defined( HAVE_SDL )
#   include "SDL.h"
#elif defined( HAVE_GLUT )
#   include "GL/glut.h"
#elif defined( __APPLE__ )

#else

# error "Neither SDL nor GLUT are present."

#endif

,他认为这#error "error text"是一个错误。但并非无处不在!仅在代码中的这个地方。如果我把这条线移到别的地方,那就没问题了。但是,无论如何,这应该保持原状。

以前,我只是从 Cygwin 控制台重建 C 代码,然后从 Eclipse Android 应用程序运行,它运行良好。

4

1 回答 1

0

Eclipse 的问题在于他假设了很多事情。他没有使用 NDK 和现有的 make 文件,而是开始使用自己的设置。为了使其正确构建,我需要更改一些设置:

  1. 在 Project->Properties->C/C++ Build->Builder Settings 选项卡中: Use default build command 应该被取消选中;构建命令应该是 bach <path to NDK>ndk-build. 此外,自动生成 makefile 也应该取消选中。然后,应该输入一个正确的 Build 目录。这就是 Builder Settings 选项卡的全部内容。
  2. 然后,应检查项目的构建“调试”
  3. CTRL + B,它的工作原理!

几乎!它仍然有一些错误问题,剩下的就是弄清楚如何在 Eclipse 上连接、运行和调试它。

于 2013-02-08T10:32:21.967 回答