2016-08-29 2 views
1

Windows에서 안드로이드 NDK에서 app에 넣을 때 문제가있는 ffmpeg를 빌드하려고합니다. 나는 이것을하는 방법에 관한 다양한 가이드를 발견했지만 그들은 수년이되었고 더 이상 일하지 않았습니다.Windows에서 안드로이드 NDK에서 ffmpeg를 작성하는 방법

NDK를 설치하고 최신 ffmpeg 3.1.2 소스 코드를 소스 폴더에 다운로드했습니다. 나는 cygwin도 설치했다. 성공적으로에 어떻게

Makefile:198: /tests/Makefile: No such file or directory 
make: *** No rule to make target '/tests/Makefile'. Stop. 

누구나 알고 :이 프로그램을 실행할 때

#!/bin/bash 
NDK=/cygdrive/c/Android/ndk/android-ndk-r12b 
SYSROOT=$NDK/platforms/android-24/arch-arm64/ 
TOOLCHAIN=$NDK/toolchains/arm-linux-androideabi-4.9/prebuilt/windows-x86_64 
function build_one 
{ 
    ./configure \ 
    --prefix=$PREFIX \ 
    --disable-shared \ 
    --enable-static \ 
    --disable-doc \ 
    --disable-ffmpeg \ 
    --disable-ffplay \ 
    --disable-ffprobe \ 
    --disable-ffserver \ 
    --disable-avdevice \ 
    --disable-doc \ 
    --disable-symver \ 
    --cross-prefix=$TOOLCHAIN/bin/arm-linux-androideabi- \ 
    --target-os=linux \ 
    --arch=arm \ 
    --enable-cross-compile \ 
    --sysroot=$SYSROOT \ 
    --extra-cflags="-Os -fpic $ADDI_CFLAGS" \ 
    --extra-ldflags="$ADDI_LDFLAGS" \ 
    $ADDITIONAL_CONFIGURE_FLAG 
make clean 
make 
make install 
} 
CPU=arm 
PREFIX=$(pwd)/android/$CPU 
ADDI_CFLAGS="-marm" 
build_one 

내가 얻을 :

나는 다음 (다른 가이드에서 가져온) 코드와 스크립트, build_android.sh를 생성 NDK에서 ffmpeg를 만들거나 최신 버전을 사용하는 안내서가 있습니까?

덕분에, 올리버

답변

1

"테스트"는는 FFmpeg 폴더의 하위 폴더입니다. 빌드에 필요하지만 누락 된 것처럼 보입니다. 전체 ffmpeg 소스 트리를 가져 왔는지 확인하십시오.

귀하의 build_android.sh는 저에게 잘 보입니다.

+0

답장을 보내 주셔서 감사합니다. 실제로 제가 검사 한 첫 번째 항목은 테스트 하위 폴더와 Makefile이 모두 ffmpeg 소스 폴더 아래에 있지만 이상하게도 건물을 찾을 때 찾을 수 없다는 메시지가 나타납니다. – Hallupa

+0

그것은 루트에서 "테스트"를 찾고 있습니다. 나는 "목표 테스트 '/ Makefile'을 만드는 규칙이 없다고 생각했다. "make install"줄을 편집하여 "--debug = v"스위치를 포함시키고 출력의 일부를 관련시킬 수 있습니까? 우리가 알아낼 때까지 올바른 테스트 폴더를 명시 적으로 가리 키도록 ffmpeg/Makefile의 198 행을 편집 할 수도 있습니다. – greeble31

+0

도움을 주셔서 감사합니다 - Makefile 줄 198을 살펴 보았습니다 - 줄은 $ (SRC_PATH)/tests/Makefile 을 포함합니다. SRC_PATH가 설정되지 않은 것처럼 보입니다. build_android.sh에서 설정을 시도했지만 아무런 영향을 미치지 않았습니다. 내가 어떻게해야하는지 알고 있니? – Hallupa

관련 문제