bilibili / ijkplayer

Android/iOS video player based on FFmpeg n3.4, with MediaCodec, VideoToolbox support.
GNU General Public License v2.0
32.38k stars 8.1k forks source link

ubuntu编译失败 #2097

Open Missyan opened 7 years ago

Missyan commented 7 years ago

执行./compile-ijk.sh all出错,错误见下一行。

profiler build: NO Android NDK: ERROR:/home/dan/ijkplayer-android/android/ijkplayer/ijkplayer-armv5/src/main/jni/ffmpeg/Android.mk:ijkffmpeg: LOCAL_SRC_FILES points to a missing file
Android NDK: Check that /home/dan/ijkplayer-android/android/contrib/build/ffmpeg-armv5/output/libijkffmpeg.so exists or that its path is correct
/home/dan/android-sdk-linux/android-ndk-r12b/build/core/prebuilt-library.mk:45: * Android NDK: Aborting 。 停止。 /home/dan/ijkplayer-android/android profiler build: NO Android NDK: ERROR:/home/dan/ijkplayer-android/android/ijkplayer/ijkplayer-armv7a/src/main/jni/ffmpeg/Android.mk:ijkffmpeg: LOCAL_SRC_FILES points to a missing file
Android NDK: Check that /libijkffmpeg.so exists or that its path is correct
/home/dan/android-sdk-linux/android-ndk-r12b/build/core/prebuilt-library.mk:45:
* Android NDK: Aborting 。 停止。 /home/dan/ijkplayer-android/android profiler build: NO Android NDK: ERROR:/home/dan/ijkplayer-android/android/ijkplayer/ijkplayer-arm64/src/main/jni/ffmpeg/Android.mk:ijkffmpeg: LOCAL_SRC_FILES points to a missing file
Android NDK: Check that /libijkffmpeg.so exists or that its path is correct
/home/dan/android-sdk-linux/android-ndk-r12b/build/core/prebuilt-library.mk:45: * Android NDK: Aborting 。 停止。 /home/dan/ijkplayer-android/android profiler build: NO Android NDK: ERROR:/home/dan/ijkplayer-android/android/ijkplayer/ijkplayer-x86/src/main/jni/ffmpeg/Android.mk:ijkffmpeg: LOCAL_SRC_FILES points to a missing file
Android NDK: Check that /libijkffmpeg.so exists or that its path is correct
/home/dan/android-sdk-linux/android-ndk-r12b/build/core/prebuilt-library.mk:45:
* Android NDK: Aborting 。 停止。 /home/dan/ijkplayer-android/android profiler build: NO Android NDK: ERROR:/home/dan/ijkplayer-android/android/ijkplayer/ijkplayer-x86_64/src/main/jni/ffmpeg/Android.mk:ijkffmpeg: LOCAL_SRC_FILES points to a missing file
Android NDK: Check that /libijkffmpeg.so exists or that its path is correct
/home/dan/android-sdk-linux/android-ndk-r12b/build/core/prebuilt-library.mk:45: *\ Android NDK: Aborting 。 停止。 /home/dan/ijkplayer-android/android

bbcallen commented 7 years ago

Build ffmpeg first.

Missyan commented 7 years ago

编译ffmpeg出现这样的错误。

[*] check archs

FF_ALL_ARCHS = armv5 armv7a arm64 x86 x86_64 FF_ACT_ARCHS = armv5 armv7a arm64 x86 x86_64

[*] check env armv5

FF_ARCH=armv5 FF_BUILD_OPT=


[*] make NDK standalone toolchain

build on Linux i686 ANDROID_NDK=/home/dan/android-sdk-linux/android-ndk-r12b IJK_NDK_REL=12.1.2977051 NDKr12.1.2977051 detected WARNING: make-standalone-toolchain.sh will be removed in r13. Please try make_standalone_toolchain.py now to make sure it works for your needs. HOST_OS=linux HOST_EXE= HOST_ARCH=x86 HOST_TAG=linux-x86 HOST_NUM_CPUS=2 BUILD_NUM_CPUS=4 Auto-config: --arch=arm /home/dan/android-sdk-linux/android-ndk-r12b/build/tools/make-standalone-toolchain.sh: line 247: /home/dan/android-sdk-linux/android-ndk-r12b/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86/bin/arm-linux-androideabi-gcc: cannot execute binary file: Exec format error Copying prebuilt binaries... Copying sysroot headers and libraries... Copying c++ runtime headers and libraries... Copying files to: /home/dan/ijkplayer-android/android/contrib/build/ffmpeg-armv5/toolchain Cleaning up... Done.


[*] check ffmpeg env


[*] configurate ffmpeg

/home/dan/ijkplayer-android/android/contrib/build/ffmpeg-armv5/toolchain/bin//arm-linux-androideabi-gcc arm-linux-androideabi-gcc is unable to create an executable file. C compiler test failed.

If you think configure made a mistake, make sure you are using the latest version from Git. If the latest version fails, report the problem to the ffmpeg-user@ffmpeg.org mailing list or IRC #ffmpeg on irc.freenode.net. Include the log file "config.log" produced by configure as this will help solve the problem.

yippeesoft commented 7 years ago

如果不是非要V5,先指定编译 armv7a

linux-x86/bin/arm-linux-androideabi-gcc: cannot execute binary file: Exec format error 换个r13试一试吧

bbcallen commented 7 years ago

Try master.