Eclipse CDT代码分析不同意GCC - 为什么?

时间:2012-12-17 15:26:22

标签: android eclipse android-ndk analysis

我喜欢使用NDK提供的Android NDK示例“native-audio”。 NDK提供的编译器可以毫无怨言地吞下它,但Eclipse在文件native-audio-jni.c中显示了几个错误。

在下面的代码摘录中,所有静态变量声明都有红色下划线,因为Eclipse声称无法解析这些类型。它们在OpenSLES.h文件中定义,如果我 Ctrl + 左键单击文件,Eclipse会找到它。

请注意,与示例源相比,我修改了包含hello_clipandroid_clip的行 - 我还将数组声明放在那些“头”文件中(它们只包含逗号分隔数据),因为Eclipse在解析语法方面也存在问题:

static const char array[] = #include"blah.h"; 

我尝试通过互联网建议的事情,比如从eclipse.exe -clean开始,清理项目/重建,刷新项目等,没有人帮忙。

那么,Eclipse不能解决这些类型的原因/解决方案是什么?

#include <assert.h>
#include <jni.h>
#include <string.h>

// for __android_log_print(ANDROID_LOG_INFO, "YourApp", "formatted message");
// #include <android/log.h>

// for native audio
#include <SLES/OpenSLES.h>
#include <SLES/OpenSLES_Android.h>

// for native asset manager
#include <sys/types.h>
#include <android/asset_manager.h>
#include <android/asset_manager_jni.h>

// pre-recorded sound clips, both are 8 kHz mono 16-bit signed little endian

// includes data arrays here
#include "hello_clip.h"
#include "android_clip.h"



// engine interfaces
static SLObjectItf engineObject = NULL;
static SLEngineItf engineEngine;

// output mix interfaces
static SLObjectItf outputMixObject = NULL;
static SLEnvironmentalReverbItf outputMixEnvironmentalReverb = NULL;

(该文件中充满了更多这些问题)

0 个答案:

没有答案