1

SDL (Simple DirectMedia Layer) を使用して、ffmpeg ライブラリを使用する Android アプリケーションでビデオ出力を表示することを計画しています。http://www.libsdl.org/download-1.2.phpからソースをダウンロードし、Ubuntu でビルド (./configure、make & make install) しました。しかし、これらの .so ファイルを使用すると、Android ndk-build は「シンボルを読み取れませんでした。ファイルの形式が間違っています」と不平を言います。

Android 上の Ubuntu でビルドされた .so ファイルを使用できますか? または、別の方法で Android 用の SDL をビルドする必要がありますか?

4

1 に答える 1

2

に書かれているようにREADME.android

jniフォルダーにフォルダーへのシンボリックリンクを追加する必要がありSDLます。その後、jni/src/Android.mkこれらの行があることを確認してください

SDL_PATH := ../SDL

LOCAL_C_INCLUDES := $(LOCAL_PATH)/$(SDL_PATH)/include

# Add your application source files here...
LOCAL_SRC_FILES := $(SDL_PATH)/src/main/android/SDL_android_main.cpp \
    main.c

LOCAL_SHARED_LIBRARIES := SDL

LOCAL_LDLIBS := -lGLESv1_CM -llog

include $(BUILD_SHARED_LIBRARY)

このようにして、SDL の .so がプロジェクトとともにターゲット (もちろん ARM CPU) 用にコンパイルされ、最終的な .apk に自動的に含まれます。

./configure && make && make install を実行すると、実際にはコンピューターの CPU (x86 / x86_64 の場合) 用に .so をビルドしています。

于 2013-03-04T06:22:21.830 に答える