环境变量:

export PREFIX=/usr

export HOSTTPL=arm-linux-gnueabihf

export INSTALLDIR=/home/elinux/linphone/armbuild

tslib:

$ sudo apt-get install libtool automake autoconf

$ ./autogen.sh

$ echo "ac_cv_func_malloc_0_nonnull=yes" > arm-linux.cache

$ ./configure --prefix=$PREFIX --host=$HOSTTPL --cache-file=arm-linux.cache

$ make

$ make install DESTDIR=$INSTALLDIR

$ make install DESTDIR='pwd'/armbuild

libiconv:

$ ./configure --prefix=$PREFIX --host=$HOSTTPL --with-gnu-ld

$ make

$ make install DESTDIR=$INSTALLDIR

$ make install DESTDIR='pwd'/armbuild

 SDL:

$ ./configure --prefix=$PREFIX --host=$HOSTTPL --build=i386 --with-gnu-ld --disable-video-nanox --disable-video-qtopia --disable-pulseaudio --disable-video-photon  --disable-video-ggi --disable-video-svga --disable-video-aalib --disable-video-dummy --disable-video-dga --disable-arts --disable-esd --disable-alsa --disable-video-x11 --disable-nasm --enable-joystick --enable-input-tslib --enable-video-fbcon   CPPFLAGS="-I${INSTALLDIR}/usr/include"   LDFLAGS="-L${INSTALLDIR}/usr/lib -lts -liconv"

$ make

$ make install DESTDIR=$INSTALLDIR

$ make install DESTDIR='pwd'/armbuild

ncurses:

$ ./configure --prefix=$PREFIX --host=$HOSTTPL --with-shared --with-gnu-ld

$ make

$ make install DESTDIR=$INSTALLDIR

$ make install DESTDIR='pwd'/armbuild

readline:

$ ./configure --prefix=$PREFIX --host=$HOSTTPL --disable-static

$ make

$ make install DESTDIR=$INSTALLDIR

$ make install DESTDIR='pwd'/armbuild

libosip2:

$ ./configure --prefix=$PREFIX --host=$HOSTTPL --with-gnu-ld --disable-static

$ make

$ make install DESTDIR=$INSTALLDIR

$ make install DESTDIR='pwd'/armbuild

libogg:

$ ./configure --prefix=$PREFIX --host=$HOSTTPL --with-gnu-ld

$ make

$ make install DESTDIR=$INSTALLDIR

$ make install DESTDIR='pwd'/armbuild

rm $INSTALLDIR$PREFIX/lib/*.la

libeXosip2:

$ ./configure --prefix=$PREFIX --host=$HOSTTPL --with-gnu-ld --disable-static OSIP_CFLAGS="-I${INSTALLDIR}/usr/include" OSIP_LIBS="-L${INSTALLDIR}/usr/lib -losip2 -losipparser2"

$ make

$ make install DESTDIR=$INSTALLDIR

$ make install DESTDIR='pwd'/armbuild

speex:

$ ./configure --prefix=$PREFIX --host=$HOSTTPL --with-gnu-ld --disable-static --enable-fixed-point --enable-arm-asm --with-ogg="${INSTALLDIR}/usr/"

$ make

$ make install DESTDIR=$INSTALLDIR

$ make install DESTDIR='pwd'/armbuild

libav:

$ ./configure --prefix=$PREFIX --enable-cross-compile --cross-prefix=arm-linux-gnueabihf- --arch=armv7 --target-os=linux  --extra-cflags=-fPIC

$ make

$ make install DESTDIR=$INSTALLDIR

$ make install DESTDIR='pwd'/armbuild

libvorbis:

$ ./configure --prefix=$PREFIX --host=$HOSTTPL --with-gnu-ld --with-ogg="$INSTALLDIR/usr/"

$ make

$ make install DESTDIR=$INSTALLDIR

$ make install DESTDIR='pwd'/armbuild

zlib:

$ ./configure --prefix=$PREFIX

修改Makefile

CC=arm-linux-gnueabihf-gcc

LDSHARED=arm-linux-gnueabihf-gcc -shared -Wl,-soname,libz.so.1,--version-script,zlib.map

CPP=arm-linux-gnueabihf-g++ -E

AR=arm-linux-gnueabihf-ar rc

$ make

$ make install DESTDIR=$INSTALLDIR

$ make install DESTDIR='pwd'/armbuild

libv4l:

$ vi libv4l1/Makefile

$ vi libv4l2/Makefile

$ vi libv4lconvert/Makefile

在文件起始处增加以下两行:

CC=arm-linux-gnueabihf-gcc

AR=arm-linux-gnueabihf-ar

$ make

$ make install DESTDIR=$INSTALLDIR

$ make install DESTDIR='pwd'/armbuild

rm $INSTALLDIR$PREFIX/lib/*.la

linphone:

$ ./configure --prefix=$PREFIX --host=$HOSTTPL \

--disable-static --disable-glib --enable-gtk_ui=no  --disable-xv --disable-X11 --disable-pulseaudio --enable-video --enable-ffmpeg  --enable-sdl --enable-libv4l --enable-oss --enable-ipv6 --with-gnu-ld --with-ffmpeg=$INSTALLDIR/usr/ --with-libiconv-prefix=$INSTALLDIR/usr/  --with-osip=$INSTALLDIR/usr/  -with-readline=$INSTALLDIR/usr/ SPEEX_CFLAGS="-I$INSTALLDIR/usr/include" SPEEX_LIBS="-L$INSTALLDIR/usr/lib -lspeex" FFMPEG_CFLAGS="-I$INSTALLDIR/usr/include" FFMPEG_LIBS="-L$INSTALLDIR/usr/lib -lavcodec" SWSCALE_CFLAGS="-I$INSTALLDIR/usr/include"  SWSCALE_LIBS="-L$INSTALLDIR/usr/lib -lswscale"

SDL_CFLAGS="-I$INSTALLDIR/usr/include"  SDL_LIBS="-L$INSTALLDIR/usr/lib -lSDL" OSIP_CFLAGS="-I$INSTALLDIR/usr/include" OSIP_LIBS="-L$INSTALLDIR/usr/lib -losip2 -losipparser2 -leXosip2"  SPEEX_CFLAGS="-I$INSTALLDIR/usr/include" SPEEX_LIBS="-L$INSTALLDIR/usr/lib -lspeex -lspeexdsp"

SPEEXDSP_CFLAGS="-I$INSTALLDIR/usr/include" SPEEXDSP_LIBS="-L$INSTALLDIR/usr/lib -lspeex -lspeexdsp" LIBV4L2_CFLAGS="-I$INSTALLDIR/usr/include" LIBV4L2_LIBS="-L$INSTALLDIR/usr/lib -lv4l2" LIBV4L1_CFLAGS="-I$INSTALLDIR/usr/include" LIBV4L1_LIBS="-L$INSTALLDIR/usr/lib -lv4l1"

配置完configure后修改Makefile如下:

 mediastreamer2/tests/Makefile:

LIBS =  -pthread -lpthread -lrt -lvorbisenc -lv4l1 -lv4l2 -lv4lconvert -liconv -lvorbis -logg -lz

coreapi/Makefile:

LIBS =  -lspeex -lspeexdsp -lSDL -lvorbisenc -lv4l1 -lv4l2 -lv4lconvert -liconv -lvorbis -logg -lz -lavutil

 coreapi/help/Makefile:

LIBS =  -losip2 -losipparser2 -leXosip2 -lspeex -lspeexdsp -lSDL -lvorbisenc -lv4l1 -lv4l2 -lv4lconvert -liconv -lvorbis -logg -lz -lavutil

helloworld_LDADD = $(top_builddir)/coreapi/liblinphone.la \

$(EXOSIP_LIBS) \

$(MEDIASTREAMER_LIBS) \

$(ORTP_LIBS)

console/Makefile:

LIBS =  -lSDL -lvorbisenc -lv4l1 -lv4l2 -lv4lconvert -liconv   -lvorbis -logg   -lz -lavutil

linphonecsh_LDADD = $(ORTP_LIBS) -L${INSTALLDIR}/usr/lib

$ make

$ make install DESTDIR=$INSTALLDIR

$ make install DESTDIR='pwd'/armbuild

linphone 在am335x的编译过程的更多相关文章

  1. Android工程的编译过程

    现在很多人想对Android工程的编译和打包进行自动化,比如建立每日构建系统.自动生成发布文件等等.这些都需要我们对Android工程的编译和打包有一个深入的理解,至少要知道它的每一步都做了什么,需要 ...

  2. GCC编译过程

    以下是C程序一般的编译过程: gcc的编译流程分为四个步骤,分别为:· 预处理(Pre-Processing) 对C语言进行预处理,生成*.i文件.· 编译(Compiling) 将上一步生成的*.i ...

  3. Linux系统GCC常用命令和GCC编译过程描述

    前言: GCC 原名为 GNU C 语言编译器(GNU C Compiler),因为它原本只能处理 C语言.GCC 很快地扩展,变得可处理 C++.后来又 扩展能够支持更多编程语言,如Fortran. ...

  4. Hadoop源码编译过程

    一.           为什么要编译Hadoop源码 Hadoop是使用Java语言开发的,但是有一些需求和操作并不适合使用java,所以就引入了本地库(Native Libraries)的概念,通 ...

  5. gcc编译过程简述

    在linux系统上,从源文件到目标文件的转化是由编译器完成的.以hello.c程序的编译为例,如下: dfcao@linux: gcc -o hello hello.c 在这里,gcc编译器读取源文件 ...

  6. android 编译过程

    引用:http://www.cnblogs.com/devinzhang/archive/2011/12/20/2294686.html http://blog.sina.com.cn/s/blog_ ...

  7. [转]UE4 Blueprint编译过程

    Blueprint 编译概述   一.术语 Blueprint,像C++语言一下的,在游戏中使用前需要编译.当你在BP编辑器中,点击编译按钮时候,BP资源开始把属性和图例过程转换为一个类对象处理. 1 ...

  8. TextMate2 最新版下载及源码编译过程

    TextMate2 已经开源,我刚编译成功,如果有需要的同学可以点击下面百度网盘的链接下载.我系统版本是:Mac OS X 10.8.4. TextMate version 2.0-alpha.946 ...

  9. C语言的编译过程、安装gcc编译器以及设置环境变量

    以我对C语言编译过程的了解,我用了一点时间画了一个图,提供给大家参考一下,希望有些能对您的问题提上帮助. 前几天刚初步学习了C语言的编译过程,感触挺深的.在C语言中头文件其实起了一个很大的作用. 1. ...

随机推荐

  1. 【Web】Rest && 权限管理 && LDAP && OAuth && Nginx && Lua 等

    最好的8个 Java RESTful 框架:http://www.importnew.com/17138.html 如何设计RESTful的API权限:https://segmentfault.com ...

  2. Drupal、IoT 和开源硬件之间的交集

    导读 来认识一下Amber Matz,她是来自 Lullabot Education 旗下的Drupalize.Me的产品经理以及培训师.当她没有倒腾 Arduino.Raspberry Pi 以及电 ...

  3. Linux挂载命令mount用法及参数详解

    导读 mount是Linux下的一个命令,它可以将分区挂接到Linux的一个文件夹下,从而将分区和该目录联系起来,因此我们只要访问这个文件夹,就相当于访问该分区了. 挂接命令(mount) 首先,介绍 ...

  4. PLSQL初次登录oracle报错处理

    server1上面装了oracle client ,也装了plsql,但是登录了以后,不显示database 和connect as 手工输入正确的用户名和database后报错如下 于是就取消登录 ...

  5. (剑指Offer)面试题39:判断平衡二叉树

    题目: 输入一课二叉树的根结点,判断该树是不是平衡二叉树.如果二叉树中任意结点的左右子树的深度相差不超过1,那么它就是一棵平衡二叉树. 思路: 1.重复遍历结点 参考上一题求二叉树的深度,先求出根结点 ...

  6. apple iMac一体机 装双系统 实战! (Apple +Win 7 64bit)

    http://group.zol.com.cn/1/641_485.html http://tieba.baidu.com/p/2532811864 http://www.jb51.net/os/82 ...

  7. ng-class

    在前面Angularjs开发一些经验总结中我们说到在angular开发中angular controller never 包含DOM元素(html/css),在controller需要一个简单的POJ ...

  8. django 实现linux运维管理平台

    概述 使用django实现一个linux运维管理平台,可以实现注册登录,机器管理 ,服务器批量操作,服务器性能监控. 详细 代码下载:http://www.demodashi.com/demo/112 ...

  9. ML 与 DM 工具 Weka 的使用

    1.关于Weka Weka 的全名是怀卡托智能分析环境(Waikato Environment for Knowledge Analysis),是一款免费的.非商业化(与之对应的是SPSS公司商业数据 ...

  10. C#:加载Excel(待补充)

    string strConn; strConn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + filePath + &qu ...