Mr *_*r X 5 bash shell android ffmpeg android-ndk
我试图在Windows 8.1中编译FFMPEG for android但我在build_android.sh中的32行时出错
./build_android.sh:line 32:语法错误:意外的文件结束
当我在cygwin中执行命令时
chmod + x build_android.sh
./build_android.sh
如果你知道在windows中编译ffmpeg for android的步骤以及如何在android中使用ffmpeg那么请求回复我.
https://trac.ffmpeg.org/wiki/CompilationGuide/Android和
http://www.roman10.net/how-to-build-ffmpeg-with-ndk-r9
build_android.sh
#!/bin/bash
NDK=E:/android-ndk-r9d
SYSROOT=$NDK/platforms/android-9/arch-arm/
TOOLCHAIN=$NDK/toolchains/arm-linux-androideabi-4.6/prebuilt/windows
function build_one { ./configure \
--prefix=$PREFIX \
--disable-shared \
--enable-static \
--disable-doc \
--enable-ffmpeg \
--disable-ffplay \
--disable-ffprobe \
--disable-ffserver \
--enable-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
Run Code Online (Sandbox Code Playgroud)
改变
make instal }
Run Code Online (Sandbox Code Playgroud)
到
make install
}
Run Code Online (Sandbox Code Playgroud)
或者
make install; }
Run Code Online (Sandbox Code Playgroud)
因为这样,您将}作为第二个参数传递给make,并且您的函数 build_one 没有关闭}。
你可以试试这个吗?
NDK=E:/android-ndk-r9d
SYSROOT=$NDK/platforms/android-9/arch-arm/
TOOLCHAIN=$NDK/toolchains/arm-linux-androideabi-4.6/prebuilt/windows
CPU=arm
PREFIX=$(pwd)/android/$CPU
ADDI_CFLAGS="-marm"
./configure \
--prefix=$PREFIX \
--disable-shared \
--enable-static \
--disable-doc \
--enable-ffmpeg \
--disable-ffplay \
--disable-ffprobe \
--disable-ffserver \
--enable-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
Run Code Online (Sandbox Code Playgroud)