linphone 在am335x的编译过程
环境变量:
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的编译过程的更多相关文章
- Android工程的编译过程
现在很多人想对Android工程的编译和打包进行自动化,比如建立每日构建系统.自动生成发布文件等等.这些都需要我们对Android工程的编译和打包有一个深入的理解,至少要知道它的每一步都做了什么,需要 ...
- GCC编译过程
以下是C程序一般的编译过程: gcc的编译流程分为四个步骤,分别为:· 预处理(Pre-Processing) 对C语言进行预处理,生成*.i文件.· 编译(Compiling) 将上一步生成的*.i ...
- Linux系统GCC常用命令和GCC编译过程描述
前言: GCC 原名为 GNU C 语言编译器(GNU C Compiler),因为它原本只能处理 C语言.GCC 很快地扩展,变得可处理 C++.后来又 扩展能够支持更多编程语言,如Fortran. ...
- Hadoop源码编译过程
一. 为什么要编译Hadoop源码 Hadoop是使用Java语言开发的,但是有一些需求和操作并不适合使用java,所以就引入了本地库(Native Libraries)的概念,通 ...
- gcc编译过程简述
在linux系统上,从源文件到目标文件的转化是由编译器完成的.以hello.c程序的编译为例,如下: dfcao@linux: gcc -o hello hello.c 在这里,gcc编译器读取源文件 ...
- android 编译过程
引用:http://www.cnblogs.com/devinzhang/archive/2011/12/20/2294686.html http://blog.sina.com.cn/s/blog_ ...
- [转]UE4 Blueprint编译过程
Blueprint 编译概述 一.术语 Blueprint,像C++语言一下的,在游戏中使用前需要编译.当你在BP编辑器中,点击编译按钮时候,BP资源开始把属性和图例过程转换为一个类对象处理. 1 ...
- TextMate2 最新版下载及源码编译过程
TextMate2 已经开源,我刚编译成功,如果有需要的同学可以点击下面百度网盘的链接下载.我系统版本是:Mac OS X 10.8.4. TextMate version 2.0-alpha.946 ...
- C语言的编译过程、安装gcc编译器以及设置环境变量
以我对C语言编译过程的了解,我用了一点时间画了一个图,提供给大家参考一下,希望有些能对您的问题提上帮助. 前几天刚初步学习了C语言的编译过程,感触挺深的.在C语言中头文件其实起了一个很大的作用. 1. ...
随机推荐
- Drupal、IoT 和开源硬件之间的交集
导读 来认识一下Amber Matz,她是来自 Lullabot Education 旗下的Drupalize.Me的产品经理以及培训师.当她没有倒腾 Arduino.Raspberry Pi 以及电 ...
- [ES6] 02. Traceur compiler and Grunt
Local Install: npm install -g traceur npm install grunt-contrib-watch npm install grunt-traceur-lat ...
- linux free命令详解和使用实例(查看内存使用率)
转载:http://www.jb51.net/LINUXjishu/152017.html 1.命令格式: free [参数] 2.命令功能: free 命令显示系统使用和空闲的内存情况,包括物理内存 ...
- ACCESS数据库如何设置密码
首先是文件-关闭数据库 打开-找到这个文件,然后以独占方式打开 然后文件-设置数据库密码,比如输入123作为密码,下次再打开数据库的时候就会要求输入密码 ...
- <转>云主机配置OpenStack使用spice的方法
按官方文档(openstack-install-guide-yum-juno)搭建和配置的OpenStack默认使用novnc作为云主机的控制台訪问方式,假设须要配置使用GUI的操作系统,会显得比較尴 ...
- Append 后如何使用 fadein淡入效果
Append 后如何使用 fadein淡入效果 Append 后如何使用 fadein 先隐藏才能显示!代码如下: $('ul.getlist').append(list).hide().fadeIn ...
- js Object.is 相等判断
Object.is使用“Same-value equality”(同值相等)算法进行相等判断.它用来比较两个值是否严格相等,与严格比较运算符(===)的行为基本一致. Object.is('foo', ...
- SQL中的等号、IN、LIKE三者的比较
SQL中的等号.IN.LIKE三者的比较SQL 中等号.IN.LIKE 三者都可以用来进行数据匹配 .但三者并不相同. 等号是用来查找与单个值匹配的所有数据: IN 是 用来查找 与多个值匹配的所有数 ...
- 【剑指offer】面试题30:最小的K个数
import random def partition(data, start, end): if end <= start: return start index = random.randi ...
- Spring boot配置fastjson
pom 文件引用 <dependency> <groupId>com.alibaba</groupId> <artifactId>fastjson< ...