0
我得到了日食以下錯誤的路徑:的Android NDK錯誤沒有這樣的文件或目錄存在於日食
**** Build of configuration Default for project com.opera.sdk.Opera ****
D:\android-ndk-r8b-windows\android-ndk-r8b\ndk-build.cmd all
"Compile++ thumb : operanative <= main.cpp
In file included from jni/src/main.cpp:4:0:
jni/include/controller.hpp:6:28: fatal error: gogi_opera_api.h: No such file or directory
compilation terminated.
make: *** [obj/local/armeabi/objs/operanative/src/main.o] Error 1
**** Build Finished ****
這是我的makefile文件Android.mk:
MY_PATH := $(call my-dir)
include $(CLEAR_VARS)
LOCAL_PATH := $(MY_PATH)
LOCAL_MODULE := libopera
LOCAL_SRC_FILES := libopera.a
include $(PREBUILT_STATIC_LIBRARY)
# final library
include $(CLEAR_VARS)
LOCAL_PATH := $(MY_PATH)
LOCAL_MODULE := operanative
LOCAL_SRC_FILES := src/main.cpp \
src/controller.cpp \
src/lock.cpp \
src/event.cpp \
src/dialog.cpp \
src/queue.cpp \
src/screen.cpp \
src/surface.cpp \
src/timer.cpp \
src/waiter.cpp \
src/window.cpp
LOCAL_C_INCLUDES := jni/include \
$(GOGI_SDK_PATH)/include \
$(GOGI_SDK_PATH)/jsplugins/ooif/include
LOCAL_WHOLE_STATIC_LIBRARIES := libopera
LOCAL_LDLIBS := -llog -ljnigraphics
include $(BUILD_SHARED_LIBRARY)
這是我Application.mk文件:
APP_STL:=stlport_static
APP_ABI := armeabi armeabi-v7a
APP_PLATFORM := android-14
而且在questiuon的controller.hpp文件有以下定義:
#ifndef CONTROLLER_HPP
#define CONTROLLER_HPP
#include <memory>
#include "gogi_opera_api.h"
#include "event.hpp"
#include "dialog.hpp"
#include "queue.hpp"
#include "screen.hpp"
#include "surface.hpp"
#include "timer.hpp"
#include "waiter.hpp"
#include "window.hpp"
我有這些文件在他們正確的位置,我已經根據需要重寫了application.mk,但是我得到了上面的構建錯誤。我希望有人能夠闡明這一點。 在此先感謝!
GOGI_SDK_PATH未在Android.mk中定義。所以它來自環境,或者可能來自命令行。驗證此路徑是否已正確定義。在命令行上使用** V = 1 **運行ndk-build。您將看到實際傳遞給編譯器的參數。 –