Ответ 1
Кажется, что ошибка была как-то сломанной NDK. Я переустановил его (удалить, разархивировать), и теперь он работает.
Я пытаюсь использовать STL в файле Android NDK С++. Я пытаюсь использовать map, vector и различные другие stl-классы, и я не могу его скомпилировать, потому что он не находит файлы.
Заголовок моих классов начинается с:
#pragma once
#include <map>
#include <iostream>
#include <stdexcept>
#include <vector>
#include <set>
#include <list>
#include <algorithm>
и я получаю следующие сообщения об ошибках:
2> In file included from jni/../../Classes/Assist/Test.cpp:1:
2> jni/../../Classes/Assist/Test.h:2:15: error: map: No such file or directory
2> jni/../../Classes/Assist/Test.h:3:20: error: iostream: No such file or directory
2> jni/../../Classes/Assist/Test.h:4:21: error: stdexcept: No such file or directory
2> jni/../../Classes/Assist/Test.h:5:18: error: vector: No such file or directory
2> jni/../../Classes/Assist/Test.h:6:15: error: set: No such file or directory
2> jni/../../Classes/Assist/Test.h:7:16: error: list: No such file or directory
2> jni/../../Classes/Assist/Test.h:8:21: error: algorithm: No such file or directory
2> In file included from jni/../../Classes/Assist/Test.cpp:1:
Я читал разные сообщения и пытался "APP_STL: = stlport_static" и "APP_STL: = gnustl_static" в файле application.mk, но он не работал.
Кто-нибудь знает, как я могу заставить это работать?
Кажется, что ошибка была как-то сломанной NDK. Я переустановил его (удалить, разархивировать), и теперь он работает.
У меня была та же проблема, и я понял, что мне нужно поставить: APP_STL: = stlport_static
в Application.mk, а не Android.mk... doh
Тогда мне нужно было добавить: $ {ANDROID_NDK_ROOT}\Sources\CXX-СТЛ\STLport\STLport
к путям включения в eclipse, чтобы он не жаловался в пользовательском интерфейсе об ошибках