1

次のビルドエラーが発生します。

**** Build of configuration Default for project MyPlugin ****

D:\android-ndk-r8b-windows\android-ndk-r8b\ndk-build.cmd all 
"Compile++ thumb : sampleplugin <= main.cpp

In file included from jni/animation/AnimationThread.h:25:0,
                 from jni/animation/AnimationPlugin.h:27,
                 from jni/main.cpp:31:
jni/RenderingThread.h:26:22: fatal error: SkCanvas.h: No such file or directory
compilation terminated.
make: *** [obj/local/armeabi/objs/sampleplugin/main.o] Error 1

**** Build Finished ****

これは私のAndroid.mkファイルです:

LOCAL_PATH:= $(call my-dir)
include $(CLEAR_VARS)

LOCAL_SRC_FILES := \
    main.cpp \
    PluginObject.cpp \
    RenderingThread.cpp \
    animation/AnimationPlugin.cpp \
    animation/AnimationThread.cpp \
    audio/AudioPlugin.cpp \
    background/BackgroundPlugin.cpp \
    form/FormPlugin.cpp \
    navigation/NavigationPlugin.cpp \
    paint/PaintPlugin.cpp \
    video/VideoPlugin.cpp \
    jni-bridge.cpp \

WEBCORE_PATH := external/webkit/Source/WebCore

LOCAL_C_INCLUDES += \
    $(JNI_H_INCLUDE) \
    $(LOCAL_PATH) \
    $(LOCAL_PATH)/animation \
    $(LOCAL_PATH)/audio \
    $(LOCAL_PATH)/background \
    $(LOCAL_PATH)/form \
    $(LOCAL_PATH)/navigation \
    $(LOCAL_PATH)/paint \
    $(LOCAL_PATH)/nspluginwrapper \
    $(LOCAL_PATH)/video \
    $(WEBCORE_PATH)/bridge \
    $(WEBCORE_PATH)/plugins \
    $(WEBCORE_PATH)/platform/android/JavaVM \
    external/webkit/Source/WebKit/android/plugins \
    external/skia/include/core

LOCAL_SHARED_LIBRARIES := \
    libnativehelper \
    libandroid \
    libutils \
    libcutils \
    libEGL \
    libGLESv2 \
    libskia

LOCAL_CFLAGS += -fvisibility=hidden 


LOCAL_MODULE:= libsampleplugin

LOCAL_MODULE_TAGS := optional

include $(BUILD_SHARED_LIBRARY)

必要なすべてのパスがandroid.mkで指定されているようですが、すべてのヘッダーをソースjniフォルダーにコピーする以外に、私のオプションは何ですか?前もって感謝します。

4

1 に答える 1

0

SkiaはNDKの一部ではないため、SkCanvas.hがありません。Android.mkから判断すると、完全なAndroidツリーを使用して「共有ライブラリ」を構築する必要があります。可能かもしれませんが、安定したAPIを提供するライブラリはないため、ビルドしたものがさまざまなAndroidバージョンと互換性があるという保証はありません(共有ライブラリを使用しているため)。

于 2012-11-09T20:44:01.207 に答える