java - 如何使用ndk在eclipse中导入和编辑C++代码?

标签 java c++ eclipse android-ndk cocos2d-x

场景: 我已经使用 eclipse 和 NDK(安装了 CDT 和 Sequoyah)在 android 模拟器上运行并编译了 cocos2d-x 的现有 c++ 代码(在 eclipse 外部编辑的 c++ 代码)。但是,无法在运行时编辑 C++ 代码或进行调试。

如果我打开一个 c++ (main.cpp) 文件,该项目就会被错误污染。 main.cpp 是一个包含 java 和 c++ 代码的文件。并且已经包含在我的项目中。 (关闭项目再重新打开暂时解决错误)

问题是:

1) 如何在工作的 android 项目中打开现有的 c++ 文件?

2) 如何告诉 eclipse 它是 c++ 和 java 的混合代码/项目。而不是错误

谢谢。

最佳答案

为了告诉 eclipse 它是一个混合项目,而在 C++ 的角度来看,转到 new->Convert to C/C++ project。这是一个用词不当的词,它使它成为一个混合项目。

为了让它找到包含的文件,请转到项目首选项->C++ 通用->路径和符号。您可以在那里添加 C/C++ 的包含文件夹(单独)。您需要的文件夹是

{Android NDK 安装目录}/sources/cxx-STL/{如果你正在使用它,你正在使用的 STL}/include

{Android NDK 安装目录}/platforms/Android[yourAPIlevel]/arch-arm/usr/include/android

顺便说一句。我遵循了这个过程的一些教程,他们还建议转到 C/C++ 构建,并执行以下操作:

  • 取消选中“使用默认构建命令”
  • 将构建命令更改为 ndk-build(我们稍后再讨论)
  • 从“Build(增量构建)”旁边的文本字段中删除“all”
  • 取消勾选清洁

这样,您也可以从 eclipse 构建。这真的很好,因为这样你也可以简单地按“运行”,它会编译 C++ 代码,将 .dll(或 .so)放在正确的位置,安装并运行。不过有一个小细节。我认为这是新版本的 android-ndk,你必须在 android-ndk 安装根目录下说 make APP=yourappname。因此,eclipse 中的 ndk-build 不起作用。为了在正确的地方触发 make,您可以简单地使用 make -C PATHTOYOURNDKINSTALLATION APP=yourappname 作为 eclipse 中的构建命令。

关于java - 如何使用ndk在eclipse中导入和编辑C++代码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9822868/

相关文章:

android - 在 Android 上找不到来源

java - SonarQube Eclipse 插件 : incremental mode for changed files only

java - 如何在 Eclipse 中为新的 JUnit 测试默认源文件夹?

java - vlcj媒体播放器不播放视频,没有失败消息

java - IntelliJ 增量 Maven 使用注释和 APT 构建

c++ - OpenCV 的 Canny 检测在更复杂的图像上速度较慢

c++ - 递增迭代器以指向另一个迭代器的下一个元素

java - Java 中的自省(introspection)

c++ - C++ 友元类

java - 通过实现扩展点非常大的模型来使OSGI服务模型更好。