您的位置:首页 > 其它

ubuntu下编译适合ndk的faac

2014-04-25 15:52 337 查看
http://blog.chinaunix.net/uid-20104447-id-3823071.html
http://gdgzzch.blog.163.com/blog/static/3764045220140265615775/

首先申明,本文章源自于上面两篇文章,先谢过他们,如下编译脚本为本人亲测,可用。

下面带来编译步骤:

1:下载faac并解压,这个可在faac官网去下,笔者下的是1.28版本

2:在faac目录里新建一个build_android.sh脚本文件,内容如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26


NDK=/usr/software/android-ndk-r9c
PLATFORM=$NDK/platforms/android-9/arch-arm
PREBUILT=$NDK/toolchains/arm-linux-androideabi-4.6/prebuilt
PREFIX=/home/leege/ffmpeglib

CFLAGS="-fpic -DANDROID -fpic -mthumb-interwork -ffunction-sections -funwind-tables -fstack-protector -fno-short-enums -D__ARM_ARCH_5__ -D__ARM_ARCH_5T__ -D__ARM_ARCH_5E__ -D__ARM_ARCH_5TE__ -                        Wno-psabi -march=armv5te -mtune=xscale -msoft-float -mthumb -Os -fomit-frame-pointer -fno-strict-aliasing -finline-limit=64 -DANDROID -Wa,--noexecstack -MMD -MP "
CROSS_COMPILE=$PREBUILT/linux-x86_64/bin/arm-linux-androideabi-
export CPPFLAGS="$CFLAGS"
export CFLAGS="$CFLAGS"
export CXXFLAGS="$CFLAGS"
export CXX="${CROSS_COMPILE}g++ --sysroot=${PLATFORM}"
export LDFLAGS="$LDFLAGS"
export CC="${CROSS_COMPILE}gcc --sysroot=${PLATFORM}"
export NM="${CROSS_COMPILE}nm"
export STRIP="${CROSS_COMPILE}strip"
export RANLIB="${CROSS_COMPILE}ranlib"
export AR="${CROSS_COMPILE}ar"

./configure --program-prefix=$PREFIX
--without-mp4v2
--host=arm-linux

make
cp ./libfaac/.libs/*.a $PREFIX/lib
cp ./libfaac/.libs/*.so $PREFIX/lib
cp ./include/*.h $PREFIX/include


(最前面几行代码为一些路径配置,读者可以根据自己的路径来配置。最后几行是将生成的库拷贝到prefix目录(prefix是第四行代码定义的目录),比如我编译生成的头文件和库的就在/home/leege/ffmpeglib下)

3:进入faac解压后的目录,修改build_android.sh 和configure文件权限(执行chmod a+x build_android.sh和 chmod a+x configure,或者执行chmod 777 build_android.sh和chmod 777 configure)

4:在faac文件夹下执行./build_android.sh,等待编译完成

5:如果不报错,就代表你已经完成了,祝你成功。

声明:eoe文章著作权属于作者,受法律保护,转载时请务必以超链接形式附带如下信息

原文作者: wanglee1027

原文地址: http://my.eoe.cn/791113/archive/24462.html
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: