无法包含NDK头文件

4

我使用NDK编写了一个简单的C++程序,它运行良好。现在我想添加以下头文件以使用日志记录函数:

android\log.h

我的 Android.mk 长这样:

LOCAL_PATH := $(call my-dir)

include $(CLEAR_VARS)

LOCAL_LDLIBS:= -llog

LOCAL_MODULE    := ndkmodulea
LOCAL_SRC_FILES := ndkmodulea.cpp

include $(BUILD_SHARED_LIBRARY)

我的 .cpp 文件开头是这样的:

#include <jni.h>            
#include <string.h>
#include <android\log.h>

如果我试图在Android项目文件夹中运行ndk-build(通过终端),我将会收到以下错误信息:
Compile++ thumb  : ndkmodulea <= ndkmodulea.cpp
jni/ndkmodulea.cpp:4:25: fatal error: android\log.h: No such file or directory
compilation terminated.
make: *** [obj/local/armeabi/objs/ndkmodulea/ndkmodulea.o] Error 1

有人可以帮助或教我如何正确地包含这些头文件吗?

非常感谢!

1个回答

3

#include路径中使用正斜杠:

#include <android/log.h>

就是这样!非常感谢!!! :) 我几乎要疯了,编辑 Android.mk 文件!
  • Windows 用户必须使用反斜杠 #include <android\log.h>
  • Linux 用户必须使用正斜杠 #include <android/log.h>
- Tho Hooves
正斜杠在所有平台上都可以使用,如果可以的话最好使用它们,这样更安全。 - krsteeve
只是为了确认,它们可以在我接触过的每个平台上运行 - 几乎每个手机、电脑或游戏机中使用的 ppc、arm、x86/x64 和 mips - 并且使用大多数你关心的编译器,如 gcc、snc、dmc、ghc、cl(msvc)、clang、intel 和 code warrior... - jheriko

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接