Не удается включить заголовочные файлы STL с Android NDK r5 - PullRequest
6 голосов
/ 16 декабря 2010

У меня очень упрощенное приложение:

#include <vector>

void android_main(struct android_app* state)
{

}

При сборке я получаю следующую ошибку:

test / jni / main.c: 14: 18: ошибка: вектор: Нет такого файла или каталога

Как, черт возьми, мне включить заголовочные файлы STL? Я нашел stlport и вижу, что заголовочные файлы существуют в его каталоге, но как их включить?

Редактировать: Файл My Application.mk имеет следующую строку:

APP_STL := stlport_static

Ответы [ 2 ]

5 голосов
/ 16 декабря 2010

test / jni / main.c : 14: 18: ошибка: вектор: нет такого файла или каталога

Вы компилируете с компилятором C, вероятно. Измените расширение на * .cpp и убедитесь, что в цепочке инструментов вызывается компилятор C ++.

4 голосов
/ 16 декабря 2010

Прочитайте документацию в $ NDKROOT / docs. В частности, CPLUSPLUSSUPPORT.html.

Библиотека C ++ по умолчанию поддерживает только очень ограниченный набор функций. Библиотеку c ++ можно изменить с помощью переменной APP_STL в вашем Application.mk.

...