Как я могу скомпилировать STL C ++ для Android, используя пользовательский Makefile?

0

Я компилирую некоторые источники для Android, используя пользовательский Makefile, в соответствии с:

NDKDIR := /path/to/android-ndk-r10c/toolchains/arm-linux-androideabi-4.6/prebuilt/darwin-x86_64/bin
NDKCC := $(NDKDIR)/arm-linux-androideabi-gcc
NDKCXX := $(NDKDIR)/arm-linux-androideabi-g++
NDKFLAGS := -I/path/to/android-ndk-r10c/platforms/android-21/arch-arm/usr/include/

%.o: %.cpp
    $(NDKCXX) $(NDKFLAGS) -c $< -o $@

Компиляция обычного C++ кода работает нормально, но все, что включает заголовки "STL", например, сбой queue с "фатальной ошибкой: очередь: нет такого файла или каталога".

Есть ли способ сделать эту работу с заголовками STL?

Теги:
makefile
android-ndk
stl

1 ответ

1
Лучший ответ

У меня тоже была эта проблема, поэтому я разместил эти три и решил.

Android.mk

LOCAL_CFLAGS := -D_STLP_USE_NEWALLOC
LOCAL_C_INCLUDES += ${NDK_ROOT}/sources/cxx-stl/stlport/stlport
LOCAL_LDLIBS    += -lstdc++
  • 1
    Благодарю. Я могу подтвердить, что вышесказанное работает и при использовании собственного Makefile вместо системы Android ndk-build

Ещё вопросы

Сообщество Overcoder
Наверх
Меню