zoukankan      html  css  js  c++  java
  • build移植移植linphone到armlinux日志记录

    本篇文章朋友在北京吃饭的时候突然想到的...这几周就有想写几篇关于build移植的文章,所以回家到之后就奋笔疾书的写出来发布了

        离前次写博客已经一年多,参加工作已经一年多了,做过很多事件,再做一次的时候老是想不起一些细节的货色,故,记录的博客上,顺便与大家分享。

        根据项目需求,移植一个只有语音功能的linphone(无需界面与视频)

        使用arm-linux-gcc4.5.1,这个编译器是友善之臂提供的,linux版本3.0.8

        linphone移植需要依附其他库:

        libogg-1.3.0.tar.gz http://freecode.com/projects/libogg

        speex-1.2rc1.tar.gz http://www.speex.org/downloads/

        libosip2-3.3.0.tar.gz http://ftp.gnu.org/gnu/osip/

        libeXosip2-3.3.0.tar.gz http://download.savannah.gnu.org/releases/exosip/ (与libosip2使用同一版本)

        readline-6.2.tar.gz(如未加此库,会涌现linphonecsh无法注册到服务器的问题)

        linphone-3.2.0.tar.gz http://download.savannah.gnu.org/releases/linphone/

        设置好交叉编译器环境变量

        创建目录 /home/linphone/build,/home/linphone/arm_target,/home/linphone/sources

        将全部安装包放入/home/linphone/sources,并解压到该文件夹下

        tar -zxvf libogg-1.3.0.tar.gz

        tar -zxvf readline-6.2.tar.gz

        tar -zxvf speex-1.2rc1.tar.gz

        tar -zxvf libosip2-3.3.0.tar.gz

        tar -zxvf libeXosip2-3.3.0.tar.gz

        tar -zxvf linphone-3.2.0.tar.gz

        交叉编译libogg

        mkdir /home/linphone/build/libogg

        cd /home/linphone/build/libogg

        ../../sources/libogg-1.3.0/configure --prefix=/home/linphone/arm_target  CC=arm-linux-gcc --host=arm-linux--enable-static --disable-shared

        make

        make install(一般情况下没有错误产生)

        交叉编译speex

        mkdir /home/linphone/build/speex

        cd /home/linphone/build/speex

        ../../sources/speex-1.2rc1/configure --prefix=/home/linphone/arm_target CC=arm-linux-gcc--host=arm-linux --with-ogg=/home/linphone/arm_target/ --enable-static --disable-shared

        make

        make install (一般情况下没有错误产生)

        交叉编译libosip2

        mkdir /home/linphone/build/libosip2

        cd /home/linphone/build/libosip2

        ../../sources/libosip2-3.3.0/configure --prefix=/home/linphone/arm_target CC=arm-linux-gcc--host=arm-linux --enable-shared --disable-static

        每日一道理
    人生是洁白的画纸,我们每个人就是手握各色笔的画师;人生也是一条看不到尽头的长路,我们每个人则是人生道路的远足者;人生还像是一块神奇的土地,我们每个人则是手握农具的耕耘者;但人生更像一本难懂的书,我们每个人则是孜孜不倦的读书郎。

        make (一般情况下没有错误产生)

        make install

        交叉编译libeXosip2

        mkdir /home/linphone/build/libeXosip2

        cd /home/linphone/build/libeXosip2

        ../../sources/libeXosip2-3.3.0/configure --prefix=/home/linphone/arm_target CC=arm-linux-gcc --host=arm-linux --enable-shared --disable-static PKG_CONFIG_PATH=/home/linphone/arm_target/lib/pkgconfig/

        make

        make install (libeXosip2版本需要与libosip2的版本始终,否则编译不通过)

        交叉编译readline (一般情况下没有错误产生)

        mkdir /home/linphone/build/readline

        cd /home/linphone/build/readline

        ../../sources/readline-6.2/configure --prefix=/home/linphone/arm_target --prefix=/home/install/linphone --host=arm-linux --with-gnu-ld --disable-static

        make

        make install

        

        交叉编译linphone

        mkdir /home/linphone/build/linphone

        cd /home/linphone/build/linphone

        ../../sources/linphone-3.2.0/configure --prefix=/home/linphone/arm_target --host=arm-linux --with-gnu-ld --disable-static  --enable-alsa=yes --disable-glib --with-osip=/home/linphone/arm_target --with-speex=/home/linphone/arm_target SPEEX_CFLAGS="-I/home/linphone/arm_target/include"  SPEEX_LIBS="-L/home/linphone/arm_target/lib -lspeex -lspeexdsp" OSIP_CFLAGS="-I/home/linphone/arm_target/include"  OSIP_LIBS="-L/home/linphone/arm_target/lib -leXosip2 -losipparser2" --disable-video --disable-gtk_ui PKG_CONFIG_PATH=/home/linphone/arm_target/lib/pkgconfig/ READLINE_CFLAGS="-I/home/linphone/arm_target/include" READLINE_LIBS="-L/home/linphone/arm_target/lib"

        make

        make install

        注意:之前使用libeXosip2-4.0.0,编译linphone会报一堆错误,武断该用3.3.0版本,问题就没涌现了,编译到后面涌现config.h中的宏定义重复定义,只需在该文件中把响应的宏定义注释就处理了。

        将/home/linphone/arm_target下的linphonec linphonecsh拷贝到开发板文件系统的/usr/local/bin,并运行

        缺乏库则从/home/linphone/arm_target/lib拷贝,以此类推

        在开发板测试

        linphonecsh init

        linphonecsh register --host IP --username user --password passwd

        linphonecsh generic 'autoanswer enable'

        linphonecsh generic 'soundcard use 1'

        至此,此版本的linphone已可接听与拨打。

        
     

    文章结束给大家分享下程序员的一些笑话语录: 联想——对内高价,补贴对外倾销的伟大“民族”企业。

    --------------------------------- 原创文章 By
    build和移植
    ---------------------------------

  • 相关阅读:
    开发金额处理BigDecimal
    Strtuts2.3.15 bug ,可以远程执行命令
    java 获取properies资源信息
    获取程序运行所在ip
    JVM虚拟机内存和String 类型深入
    数据库表结构上下文
    properties配置文件实现DBManager
    查询功能的包装类
    通过反射生成类的utils
    jdbc反射操作
  • 原文地址:https://www.cnblogs.com/xinyuyuanm/p/3111276.html
Copyright © 2011-2022 走看看