Я получаю ошибку компиляции для следующего заголовка файла:C++ Ошибка компиляции для JNI: неизвестное имя типа JNIEnv JINT JavaVM
#include <jni.h>
#ifdef __cplusplus
extern "C" {
#endif
typedef struct {
jint x1;
jint y1;
jint x2;
jint y2;
} Bounds;
...
#ifdef __cplusplus
};
#endif
Есть другие ссылки JNI, например, к jobject
, JNIEnv
, JavaVM
, и т. д. Не жалуется, что заголовок < jni.h> отсутствует (это было, но это было легко исправлено путем добавления пути include). Я проверил файл заголовка, и типы определены в этом заголовке (и < jni_md.h> тоже).
Это не имеет никакого смысла для меня. Есть идеи?
EDIT: Я забыл включить следующий текст ошибки.
g++ -O2 -fPIC -fpermissive -I. -I.. -I/usr/include -I/usr/local/include/libavcodec -I/usr/local/include/libavdevice -I/usr/local/include/libavformat -I/usr/local/include/libswscale -I/System/Library/Frameworks/JavaVM.framework/Versions/A/Headers -DUNIX -shared -c -o Plugin.o Plugin.cpp
clang: warning: argument unused during compilation: '-shared'
In file included from Plugin.cpp:19:
In file included from Plugin.h:16:
Data.h:24:5: error: unknown type name 'jint'
jint x1;
^
Data.h:25:5: error: unknown type name 'jint'
jint y1;
^
Data.h:26:5: error: unknown type name 'jint'
jint x2;
^
Data.h:27:5: error: unknown type name 'jint'
jint y2;
^
Включите ли вы полный текст ошибки? – Leon
Может быть - см. Http://stackoverflow.com/questions/7212982/ –
@ZabojCampula, как я уже сказал, у меня нет проблемы с поиском заголовков, они включены. –