linux-在ubuntu下用ndk编译ffmpeg的问题

问题描述

在ubuntu下用ndk编译ffmpeg的问题

在ubuntu下用ndk编译ffmpeg的时候出现了这个错误:

这个是我的sh文件:
make clean
export PREBUILT=$NDK/toolchains/arm-linux-androideabi-4.8/prebuilt
export PLATFORM=$NDK/platforms/android-8/arch-arm
export PREFIX=../ff-pure-onelib
build_one(){
./configure --target-os=linux --prefix=$PREFIX
--enable-cross-compile
--enable-runtime-cpudetect
--disable-asm
--arch=arm
--cc=$PREBUILT/linux-x86/bin/arm-linux-androideabi-gcc
--cross-prefix=$PREBUILT/linux-x86/bin/arm-linux-androideabi-
--disable-stripping
--nm=$PREBUILT/linux-x86/bin/arm-linux-androideabi-nm
--sysroot=$PLATFORM
--enable-gpl
--enable-static
--disable-shared
--enable-nonfree
--enable-version3
--enable-small
--enable-zlib
--disable-ffprobe
--disable-ffplay
--disable-ffmpeg
--disable-ffserver
--disable-debug
--extra-cflags="-fPIC -DANDROID -D__thumb__ -mthumb -Wfatal-errors -Wno-deprecated -mfloat-abi=softfp -marm -march=armv7-a"
}

build_one
make
make install

$PREBUILT/linux-x86/bin/arm-linux-androideabi-ld -rpath-link=$PLATFORM/usr/lib -L$PLATFORM/usr/lib -L$PREFIX/lib -soname libffmpeg.so -shared -nostdlib -Bsymbolic --whole-archive --no-undefined -o $PREFIX/libffmpeg.so libavcodec/libavcodec.a libavfilter/libavfilter.a libswresample/libswresample.a libavformat/libavformat.a libavutil/libavutil.a libswscale/libswscale.a libpostproc/libpostproc.a libavdevice/libavdevice.a -lc -lm -lz -ldl -llog --dynamic-linker=/system/bin/linker $PREBUILT/linux-x86/lib/gcc/arm-linux-androideabi/4.8/libgcc.a

解决方案

目录[-]

一、在ubuntu下配置android ndk环境变量
二、下载ffmpeg源码
三、配置ffmpeg环境
四、执行config.sh脚本文件
五、把Android.mk文件移到jni文件夹里
六、ndk-build开始编译

转自 http://my.oschina.net/u/994934/blog/185684??

......
答案就在这里:ubuntu+ndk编译ffmpeg

解决方案二:

其实CentOS也不错哦!

时间: 2024-09-12 21:40:10

linux-在ubuntu下用ndk编译ffmpeg的问题的相关文章

在Ubuntu中用Android NDK编译FFmpeg

原文:http://www.cnblogs.com/scottwong/archive/2010/12/17/1909455.html 最近在做 Android 上的项目,我被恶心的一塌糊涂.本以为 Java 是 Android 上的一等公民,结果深入学习之后才发现,Java 在 Android 上 就是个做 UI 的,除此之外无论想干什都得用 C 语言去实现.Android 一个非常糟糕差劲的操作系统,甚至连 Windows Mobile 都不如.Android 能取得今天的市场占有率只是因为

windows 7下mingw+msys编译ffmpeg

  windows 7下mingw+msys编译ffmpeg   1-->下载安装MingW,mingw-get-inst-20120426.exe  http://sourceforge.net/projects/mingw/ 安装路径 默认C:\MinGW .勾选了 <1> C Compiler  <2> C++ Compiler <3>MSYS Basic System <4>MinGW Developer ToolKit 其中 <3>

windows下用vs2010编译ffmpeg

转载自;http://q1q2q3q4q5q6ln.blog.163.com/blog/static/500794332014666536283/ (注意:请务必先阅读:七,后记补充:) ffmpeg是一个开源的多媒体库,使用非常广泛.在linux下编译ffmpeg非常简单,而在Windows下编译就不是那么容易了.一般在windows下使用MinGW的gcc toolchain进行编译,这样的话,因为ffmpeg的导出函数均是C风格,因而gcc编译的lib可以被vs链接.但是gcc的debug

bundler 怎么在ubuntu下安装和编译 详细一点 现有教程操作完后不能成功!

问题描述 bundler 怎么在ubuntu下安装和编译 详细一点 现有教程操作完后不能成功! bundler 怎么在ubuntu下安装和编译 详细一点 现有教程操作完后不能成功! 解决方案 参考下http://wenku.baidu.com/link?url=NgJF6QDZ7Dnl3rLlCiWtPRP9MMnOVDhNqGkL2ceC5ZwWQ-adUTNS-Dm8mKSVtInWTnUSZfsg5dZ5E7OskbwDW7H7bp3EN9ogz8q5nDd_BgO 解决方案二: 先说说什

小白求解-Ubuntu下MTK环境编译问题求解

问题描述 Ubuntu下MTK环境编译问题求解 note : 20140428 use ./makeMtk check-env to check the Mtk alps env use ./makeMtk listp to show the projects existed use ./makeMtk XXX r ? rebuild the target. when I use these command there are to error haapened, cp: 无法获取"bootab

ubuntu下使用codeblocks编译clucene的demo时遇到的问题

问题描述 ubuntu下使用codeblocks编译clucene的demo时遇到的问题 clucene的版本是2.3.3.4 codeblocks的版本是10.05 用codeblocks新建了一个空白工程 将demo里的cpp和h文件都加入了空白工程 在build -- project options -- search directories里添加了 clucene/src/core clucene/src/shared clucene/src/contribs/benchmarker 三

jira 6.X或confluence5.X linux/centos/ubuntu下设置开启启动

作者:风来了.带狐狸了 jira为例      (confluence 只要把 jira.sh 中的 _ROOT 和_NAME 路径和名称修改就可以) 保存代码 把以下代码另存为 jira.sh 上传至 jira目录 /www/jira centos #! /bin/sh # chkconfig: 2345 10 90 # description: jira .... # This script will be executed *after* all the other init script

linux中ubuntu下手动编译php-amqp扩展详细教程

PHP官网的amqp模块介绍在此,我也不多介绍.下面进入重点的安装环节. http://www.php.net/manual/en/book.amqp.php 用于ubuntu的默认源里面没有php5-amqp这个包,所以要用上amqp得考手动编译. 准备工作: # 安装php编译工具 sudo apt-get install php5-dev # 安装rabbitmq的库 sudo apt-get install librabbitmq-dev 然后如果你没有安装git话请安装一下git,因为

ubuntu下动态链接库的编译和使用实例

以下实例的环境是amd64 + ubuntu10.10 + g++ 4.4.5测试成功,在其他配置的机器上可能有一点区别.     动态库的使用方式中有两种,第一种是类似于静态库的使用,另一种我称之为真正的动态加载动态库,主要是因为这种方式在程序运行的过程中加载链接库,使用之后在卸载链接库.     先介绍第一种.     在目录/home/owner/test/下创建我们的实验程序:         //dll_fun.c         #include <stdio.h>