android-ndk - 在 ndk 环境中构建 C++ 代码时出现问题 w/std::string

标签 android-ndk

我正在编写一些代码,因为我被要求开发有关程序核心部分的 c++ 代码。 但是,这是我第一次使用 ndk,所以我遇到了一些麻烦并解决了。 然而,太难的问题来找我了。我已经用 ndk 构建了我的 c++ 代码,但是, 它说,

.h:3:20:错误:字符串:没有这样的文件或目录 .h:5: 错误:'std::string' 尚未声明

以及任何其他有关此的错误。 下面是我写的“Android.mk”文件:

LOCAL_PATH := $(call my-dir)

include $(CLEAR_VARS)
LOCAL_MODULE    := clibs
LOCAL_SRC_FILES := sqlite3.c
LOCAL_LDLIBS    := -llog
include $(BUILD_STATIC_LIBRARY)

include $(CLEAR_VARS)
LOCAL_DEFAULT_CPP_EXTENSION := cpp
LOCAL_MODULE    := mytweetlib
LOCAL_STATIC_LIBRARIES := clibs
LOCAL_SRC_FILES := Friend.cpp SQLiteDB.cpp Cursor.cpp DB4Friends.cpp ResultParser.cpp MyTweet.cpp Stub.cpp
include $(BUILD_SHARED_LIBRARY) 

我试图链接 .c 文件(sqlite3.c)制作静态库文件和另一个文件(要构建到共享库)。 有人知道吗?即使它只是很少的线索,请给我。 (我一直没有解决这个问题)

最佳答案

似乎没有告知 NDK 使用 STL 端口。

尝试添加一个包含 APP_STL 的 Application.mk 文件。这会将 STLport header 添加到包含路径,并链接到库。

APP_STL := stlport_static

关于android-ndk - 在 ndk 环境中构建 C++ 代码时出现问题 w/std::string,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7140705/

相关文章:

android - 关于系统属性

java - 如何在jni中链接静态库?

android-ndk - 在原生 (NDK) 中使用 <math.h> 中的任何函数时,android 上出现不满意的链接错误

android - 导入 Android NDK 项目(解码 OGG)

android - 名为 SWIG 的外部工具的文件不存在

java - 通过 AndroidfromJNI 另一个包加载静态 void C 函数

Android,从本地/NDK 共享库访问资源文件

android - 如何从 Java apk 或 ndk 启动或执行可执行应用程序

Android "No such file or directory"错误?

android - Android上的Gles2.0覆盖