来自Eclipse的错误错误:函数'__android_log_print'无法解析(Android,CDT)

184*_*615 9 eclipse android eclipse-cdt android-ndk

我有一个Android NDK项目,其NDK部分从命令行编译好; 我曾经没有将从Eclipse下编译的东西作为纯Java项目运行的问题.但我将它转换为C/C++项目,现在甚至无法运行它.

我在"控制台"中看到了库的构建,但是:Eclipse告诉我我的项目有错误而且不会运行它.(地球为什么?该代码编译!)

我通过向项目属性添加包含路径来解决丢失符号的一些问题.

但我仍然得到这个奇怪的 Function '__android_log_print' could not be resolved 错误.

那么,有两个问题:

  1. 我该如何摆脱这个错误?(可以忽略吗?)
  2. 计划B:如何将这个混合的C/C++/Java项目转换为纯Java项目?

= = =

PS"你打电话给船,所以它会这样做".他们难道不能为IDE找到一个更好的名字,比如"Lucid编码"吗?(修辞问题)

= = =

更新:Eclipse看起来只报告它看到的文件的错误(即显示给你).我用LOGD宏打开了另一个文件,Eclipse也报告了它的错误.我关闭了所有文件窗口,关闭了Eclipse 删除了一个.something文件.之后,我能够运行该应用程序.我没有冒险使用该日志记录宏打开源文件.(这与"清醒编码"相距甚远,不是吗?)

小智 6

CDT索引器的配置需要启用"索引未使用的头..."

如何到达:Project-> Properties-> C/C++ General-> Indexer.

在此输入图像描述

摆脱我的错误.


小智 1

在您的 Android.mk 文件中,请添加

LOCAL_LDLIBS := -llog -landroid
Run Code Online (Sandbox Code Playgroud)

__android_log_print不是 libc 的一部分,它位于日志库中,因此您需要显式声明它才能链接。

请注意,如果 C 或 Java 端出现错误,Eclipse 将拒绝运行该项目。在这种情况下,存在链接器错误;该代码未成功完成编译,因此不会运行它。