android.mk构建中包含的android外部/stlport未成功
我正在尝试用android froyo源代码构建一个应用程序,其中我使用了android.mk构建中包含的android外部/stlport未成功,android,android-2.2-froyo,android-ndk-r5,android-source,Android,Android 2.2 Froyo,Android Ndk R5,Android Source,我正在尝试用android froyo源代码构建一个应用程序,其中我使用了skia和stl模板 我包括 MY_INCLUDES=external/zlib external/jpeg external/freetype/include \ frameworks/base/core/jni/android/graphics external/skia/include/core \ external/libpng external/expat/lib <b>extern
skia
和stl
模板
我包括
MY_INCLUDES=external/zlib external/jpeg external/freetype/include \
frameworks/base/core/jni/android/graphics external/skia/include/core \
external/libpng external/expat/lib <b>external/stlport/stlport</b>
libstlport_cflags := -D_GNU_SOURCE
libstlport_cppflags := -fuse-cxa-atexit
LOCAL_CPPFLAGS := $(libstlport_cppflags)
include $(BUILD_STATIC_LIBRARY)
MY_include=external/zlib external/jpeg external/freetype/include\
frameworks/base/core/jni/android/graphics-external/skia/include/core\
外部/libpng外部/expat/lib外部/stlport/stlport
libstlport\u cflags:=-D\u GNU\u源
libstlportcppflags:=-fuse cxa atexit
本地\cppu标志:=$(libstlport\cppu标志)
包括$(构建静态库)
当我尝试使用此应用程序构建android源代码时,出现以下错误,我将其保存在packages/apps中:
外部/stlport/stlport/stl/_new.h:47:50:错误:libstdc++/include/new:没有这样的文件或目录
请指导我纠正这个问题
谢谢
莫希特cpp
#包括
//代码
//STLPort的定义和包含集
//他们使用defined()而不是#ifdef。
#定义\u STLP\u有\u包含\u下一步1
#定义\u STLP\u使用\u MALLOC 1
#定义\u STLP\u使用\u无\u IOSTREAMS 1
#包括
#包括
#包括
内部主(空)
{
std::string a=“abc”;
printf(“%s”,a.c_str());
返回0;
}
Android.mk
最小标准C++库的简单测试
#
本地路径:=$(调用我的目录)
包括$(清除变量)
本地_SRC_文件:=test-libstl.cpp
本地_C_包含+=源/cxx stl/stlport/stlport
本地共享库+=libstlport
本地_模块:=测试libstl
包括$(构建可执行文件)
据我所知,预处理器找不到的文件位于bionic
文件夹中
我也有同样的问题,我通过添加以下行来解决它:
LOCAL_C_INCLUDES += bionic
我还没有在安卓2.2上尝试过,但我正在使用安卓Kitkat(4.4) 为了使
stlport
库与我们的项目一起工作,我们将其包含在我们项目的Android.mk
中,如下所示:
include external/stlport/libstlport.mk
这是假设在Froyo上,有一个libstlport.mk文件要包含在构建过程中。在4.4中,还有一个Android.mk文件,但它也构建了其他代码,并将stlport构建为一个静态库(这不是我们想要的)
您可能还需要添加include目录,例如:
external/stlport/stlport
我尝试添加了本地\u STATIC\u库:=libstlport,但它甚至不包括stl文件我冒昧地重新格式化了您的帖子。StackOverflow(SO)使用awesome标记库进行后期标记。这真的值得一看:)哦。。。欢迎来到SO嗨,朋友们,我正在编译Android 4.0,在这期间我遇到了一个错误:“external/stlport/stl/_iterator_base.h:116:43:error:libstdc++/include/iterator:没有这样的文件或目录”。任何人对此都有想法。这就是答案。Bionic包含Android风格的标准库。包括外部/stlport/libstlport.mk
对Android 4.2.2也有帮助,但我还需要添加本地共享库+=libstlport
。
include external/stlport/libstlport.mk