当前位置:编程学习 > wap >>

ffmpeg cygwin + Android ndk 上编译不通过 config.sh问题

我在编译ffmpeg的时候出现错误:
Unknown C compiler E:/android/android-NDK/android-ndk-r8b
/toolchains/arm-linux-androideabi-4.4.3/prebuilt/windows
/bin/arm-linux-androideabi-gcc
check_ld
check_cc
BEGIN /tmp/ffconf.JpKuLxWB.c
    1 int main(void){ return 0; }
END /tmp/ffconf.JpKuLxWB.c
E:/android/android-NDK/android-ndk-r8b
/toolchains/arm-linux-androideabi-4.4.3/prebuilt/windows
/bin/arm-linux-androideabi-gcc -fPIC -DANDROID -c -o /tmp/ffconf.HepddDAK.o /tmp/ffconf.JpKuLxWB.c
./configure: line 581: E:/android/android-NDK/android-ndk-r8b
/toolchains/arm-linux-androideabi-4.4.3/prebuilt/windows
/bin/arm-linux-androideabi-gcc: No such file or directory
C compiler test failed.

我的ffmpeg是0.6的,ndk是r8b
我的NDK安装路径是E:\android\android-NDK\android-ndk-r8b
ffmpeg我放到E:\android\android-NDK\android-ndk-r8b\samples\FFMPEG\jni\ffmpeg_0.6

我的config.sh文件内容如下:
#!/bin/bash
TMPDIR="E:/temp"
export NDKROOT="E:/android/android-NDK/android-ndk-r8b"
PREBUILT=$NDKROOT/toolchains/arm-linux-androideabi-4.4.3/prebuilt/windows
PLATFORM=$NDKROOT/platforms/android-14/arch-arm
./configure --target-os=linux --arch=arm --enable-version3 --enable-gpl --enable-nonfree --disable-stripping --disable-ffmpeg --disable-ffplay --disable-ffserver --disable-ffprobe --disable-encoders --disable-muxers --disable-devices --disable-protocols --enable-protocol=file --enable-avfilter --disable-network --disable-avdevice --enable-cross-compile --cc=$PREBUILT/bin/arm-linux-androideabi-gcc --cross-prefix=$PREBUILT/bin/arm-linux-androideabi- --nm=$PREBUILT/bin/arm-linux-androideabi-nm --extra-cflags="-fPIC -DANDROID" --disable-asm --enable-neon --enable-armv5te --extra-ldflags="-Wl,-T,$PREBUILT/arm-linux-androideabi/lib/ldscripts/armelf.x -Wl,-rpath-link=$PLATFORM/usr/lib -L$PLATFORM/usr/lib -nostdlib $PREBUILT/lib/gcc/arm-linux-androideabi/4.4.3/crtbegin.o $PREBUILT/lib/gcc/arm-linux-androideabi/4.4.3/crtend.o -lc -lm -ldl"

在我的E盘下面我手动建了个temp文件夹,我用export TMPDIR="E:/temp"报无法创建临时目录的错误,原因不明。

请问我编译./config.sh的时候,为什么会报Unknown C compiler E:/android/android-NDK/android-ndk-r8b
/toolchains/arm-linux-androideabi-4.4.3/prebuilt/windows/bin/arm-linux-androideabi-gcc 
check_ld
check_cc
??????
跪求大牛帮忙!!! --------------------编程问答-------------------- 我只编译通过ffmpeg0.6,没有在android下编译过,你可以参考一篇博文http://blog.csdn.net/huangxiansheng1980/article/details/5712003 --------------------编程问答--------------------
引用 1 楼 benqiangchan 的回复:
我只编译通过ffmpeg0.6,没有在android下编译过,你可以参考一篇博文http://blog.csdn.net/huangxiansheng1980/article/details/5712003


我试过那篇博文的编译,可以编译成.exe,但是我要编译成.so的Android才能用起来。 --------------------编程问答-------------------- 我在ubuntu1104上用Android NDK r8 已经成功编译出来ffmpeg0.8.1
参考的文章是http://drovik.com/html/4978562255.html

希望对你有用。 --------------------编程问答--------------------
引用 3 楼 sky123123 的回复:
我在ubuntu1104上用Android NDK r8 已经成功编译出来ffmpeg0.8.1
参考的文章是http://drovik.com/html/4978562255.html

希望对你有用。


谢谢,我用的cygwin编译的。编译一直不过,打开config.err里面在我的路径中多个?号,可是我在config.sh中找不到问号是从哪里来的。我把这个带问号的路径拷贝到浏览器中问号的地方了个空格,问号没有了。但是我该怎么去掉这个问号呢? --------------------编程问答-------------------- 在windos 在运行config.sh时 要先创建一个临时目录 export TMPDIR="D:/FFMpeg_tmp" 即可  --------------------编程问答-------------------- 还有人路过知道为什么多了个?号吗?跪求!!

引用 4 楼 kafei_kings 的回复:
引用 3 楼 sky123123 的回复:我在ubuntu1104上用Android NDK r8 已经成功编译出来ffmpeg0.8.1
参考的文章是http://drovik.com/html/4978562255.html

希望对你有用。

谢谢,我用的cygwin编译的。编译一直不过,打开config.err里面在我的路径中多个?号,可是我在confi……
--------------------编程问答-------------------- arm-linux-androideabi-gcc这个文件在那个目录下有吗? --------------------编程问答-------------------- 你这问题和我那个很像,但你好像是没找到arm-linux-androideabi-gcc这个编译器本身,

我则是提示找不到输入的源文件。

./configure: line 581: E:/android/android-NDK/android-ndk-r8b
/toolchains/arm-linux-androideabi-4.4.3/prebuilt/windows
/bin/arm-linux-androideabi-gcc: No such file or directory


我的问题:
http://bbs.csdn.net/topics/390319832 --------------------编程问答-------------------- ./config.sh: line 4: ./configure--target-os=linux: No such file or directory
我遇到这个问题,求高手解答一下,win7 64位。
config.sh文件内容:
#!/bin/bash
PREBUILT=D:/http%3a%2f%2fmirrors.kernel.org%2fsourceware%2fcygwin%2f/home/Administrator/android-ndk-r8c/toolchains/arm-linux-androideabi-4.4.3/prebuilt/windows
PLATFORM=D:/http%3a%2f%2fmirrors.kernel.org%2fsourceware%2fcygwin%2f/home/Administrator/android-ndk-r8c/platforms/android-8/arch-arm
./configure\--target-os=linux --arch=arm --enable-version3 --enable-gpl --enable-nonfree  --disable-stripping  --disable-ffmpeg --disable-ffplay --disable-ffserver --disable-ffprobe  --disable-encoders --disable-muxers --disable-devices  --disable-protocols --enable-protocol=file  --enable-avfilter  --disable-network --disable-mpegaudio-hp --disable-avdevice --enable-cross-compile  --cc=$PREBUILT/bin/arm-eabi-gcc  --cross-prefix=$PREBUILT/bin/arm-eabi- --nm=$PREBUILT/bin/arm-eabi-nm   --extra-cflags="-fPIC -DANDROID" --disable-asm    --enable-neon  --enable-armv5te --extra-ldflags="-Wl,-T,$PREBUILT/arm-eabi/lib/ldscripts/armelf.x -Wl,-rpath-link=$PLATFORM/usr/lib -L$PLATFORM/usr/lib -nostdlib $PREBUILT/lib/gcc/arm-eabi/4.4.0/crtbegin.o $PREBUILT/lib/gcc/arm-eabi/4.4.0/crtend.o -lc -lm -ldl"
--------------------编程问答-------------------- 我的是./config.sh: line 5: ./configure: No such file or directory
这个问题,求高手看看,使用cygwin和android-ndk-r8c
--------------------编程问答-------------------- 楼主大人,问题解决了吗?求指导! --------------------编程问答-------------------- 这个是你的ndk环境搭建的问题吧
你将ndk。。。。.zip文件解压之后,在PC属性中,设置系统级别的PATH,添加你的ndk文件夹路径
在你的终端上运行ndk-build,有过有一些信息提示就说明没问题了

然后将你的工程文件拷贝到sample文件夹下,如果其他的什么文件都准备好了,那么你就可以直接进行编译了,输入命令  ndk-build

这期间没有对你的gcc编译器做什么修改,应该能保证你的编译环境是没问题!其他的问题再依次解决
补充:移动开发 ,  Android
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,