linphone-android移植

一:到网站上下载linphone-android的源码:
http://www.linphone.org/eng/download/git.html

linphone-android对应的git地址是:

在虚拟机中敲入如下命令
git clone git://git.linphone.org/linphone-android.git --recursive  
记住一定要把rescursive给带上,否则下不全,下载完后大概有300M左右.


二:配置相关的编译环境

下载后首先看里面的readme.

1) download the Android ndk (>=r5c) from google.
我个人是android-ndk-r7c的最新版本.(如何安装NDK可以在本文件夹中找到)

2) install the autotools: autoconf, automake, aclocal, libtoolize,pkgconfig
这几个花费了我一上午的时间。

其实用apt-get install就可以搞定了。

sudo apt-get install autools-dev 可以自动帮你安装autoconf,automake,aclocal.
然后libtoolize的安装,不要想当然的用 sudo apt-get install libtoolize

正确的指令是: sudo apt-get install libtool

pkg-config系统自带的。

检测相关命令是否已经安装成功:
which autoconf(which命令是会查找PATH所指向的东西,找出它的路径所在)
成功会显示命令的路径
三:编译linphone-android
(1)
上面的搞定后,开始执行./prepare_sources.sh这个时候呢,(在这里我是碰到问题的)

    问题:

    1:提示说ndk的路径不正确

        在 /etc/environment中加上你自己的ndk的路径,我的如下

        PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/home/hnzzh/huzi/linphone/linphone-android/package/android-ndk-r8"

然后source /etc/enviroment重启,假如你使用如下命令:which ndk-build能看到nkd-build所在的路径,说明就没问题了.

   2:在./prepare_sources.sh时会提示有关ndk权限的问题,所以需要把ndk所有包括子目录都改成777权限

   编译完成后会提示如下信息:

    patching file Makefile
    Hunk #1 succeeded at 47 with fuzz 2 (offset 21 lines).


(2)然后再使用如下命令   ndk-build

安装完毕后会提示如下信息:

Compile thumb  : linphonenoneon <= ec-calibrator.c
SharedLibrary  : liblinphonearmv5.so
Install        : liblinphonearmv5.so => jni/..//libs/armeabi/liblinphonearmv5.so

这个时候等给3分钟左右,编译就成功了,然后libs目录下就有已经编译好的各种 so了。
armeabi/liblinphone.so
armeabi-v7a/libavcodec.so,libavcore.so,libavutil.so,liblincrypto.so,liblinphone.so,liblinssl.so,libsrtp.so,libswscale.so!

到这里,整个linphone安装结束,接下来就是用Eclipse导入!

四:Eclipse导入

(1)eclipse导入android工程

把linphone_android的目录,在eclipse中import导入! 

假如是在Ubuntu的eclipse需要把所有的@Override 去掉

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/433983.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

debian 升级linux内核,Debian8升级内核到4.5

本文讲述如何升级Debian8的内核到4.5版本0x01&#xff1a;去linux kernel官网https://www.kernel.org/下载4.5的内核&#xff0c;选择tar.xz格式0x02&#xff1a;想办法把下载好的包弄进你的虚拟机或...直接你的物理机0x03&#xff1a;解压有的朋友可能没见过tar.xz格式的包&am…

jQuery.validate.js API

名称 返回类型 描述 validate(options) 返回:Validator 验证所选的 FORM valid() …

一个小公司老板的日常管理

1. 小公司如何留住骨干&#xff1a; 2.关于授权 3.有的钱不能省 5.关于招聘 6.老板尽量唱红脸 7.公司里的亲戚 8.当老板和开车 9.按时发工资 10.学会说“不” 11.不要在公司内部奢望交朋友 12.避免当场做决定 13.政策的制定 14.矬子里拔将军 15.有些事情越透明越好 16.发劳保用…

软件安全测试报告模板_软件测试工程师经典面试题

软件测试工程师&#xff0c;和开发工程师相比起来&#xff0c;虽然前期可能不会太深&#xff0c;但是涉及的面还是比较广的。前期面试实习生或者一年左右的岗位&#xff0c;问的也主要是一些基础性的问题比较多。涉及的知识主要有MySQL数据库的使用、Linux操作系统的使用、软件…

linux怎么删除exe文件夹,ubuntu linux 批量删除文件

sudo sucd /find / -name "*google-music*" -exec rm -rf "{}" \; 注&#xff1a;分号是必需的find [目录名] -name "文件名" -exec rm -rf "{}" \;搜索删除文件&#xff0c;例如&#xff1a;find / -name *.raw -exec rm -rf &…

OD使用教程20 - 调试篇20

OD使用教程20 - 调试篇20 让编程改变世界 Change the world by program 名词注释&#xff1a;Keygen为Key Generator的缩写&#xff0c;就是我们一般所说的注册机。是软件注册生成所需的注册码或序列号的程序。 keygen可以独立做一个可执行程序存在&#xff0c;也可以作为程序…

堡垒机 请确认是否安装oracle客户端_OracleOracle数据库的安装(超详细)

一、Oracle的安装对于新手来说安装Oracle这样的数据库&#xff0c;第一次还是会有些陌生的&#xff0c;我自己在安装的过程中也是遇到的很多的坑。(自己装了5遍 /(ㄒoㄒ)/~~ )由于我自己安装的是11g这个版本&#xff0c;所以下面以11g的下载安装为例1.下载Oracle数据库是有免费…

linux编译器项目,编译器架构 LLVM

LLVM 是 Low Level Virtual Machine (低级虚拟机)的简称&#xff0c;这个库提供了与编译器相关的支持&#xff0c;可以作为多种语言编译器的后台来使用。能够进行程序语言的编译期优化、链接优化、在线编译优化、代码生成。LLVM的项目是一个模块化和可重复使用的编译器和工具技…

北漂周记--第2记--培训开始

写作地点&#xff1a;宿舍 本周日期&#xff1a;2012-3-5到2012-3-11 3月5日&#xff0c;上午看书&#xff0c;10点多时&#xff0c;开始安装VirtualBox&#xff0c;然后在虚拟机中挂在了XP系统&#xff0c;只可惜使用了 多种方法&#xff0c;也不能使用工商银行的U盾&#xff…

卡巴斯基安全浏览器_卡巴斯基杀毒软件被曝出用户上网痕迹泄露漏洞

近期&#xff0c;国外安全研究人员曝出卡巴斯基杀毒软件的脚本中存在一个独特而唯一的标识符&#xff0c;可导致用户在过去4年中访问过的每个网站都被泄露。该漏洞被标记为CVE-2019-8286&#xff0c;其中所涉及的独特标识可让被访问过的网站和第三方商业公司在线跟踪用户。更严…

windows安装linux无法启动服务,Windows系统下Apache服务器无法启动的问题解决

关于apache无法启动主要是80端口的问题&#xff0c;下面我们来看一下关于端口被占的处理办法解决方案&#xff1a;1&#xff1a;在dos下运行netstat -ano2&#xff1a;在xampp control panel中点setup打开命令界面&#xff0c;3&#xff1a;选择6 enable mob_perl4:重新启动xam…

栅格矢量化_学会用栅格系统,普通LOGO秒变高大上

经常看到很多 LOGO 初看一般&#xff0c;但只要加上了栅格线&#xff0c;感觉瞬间就上了一个档次。有个比较出名的例子&#xff0c;就是锤子手机的 LOGO。是不是觉得右边的栅格线加上之后&#xff0c;瞬间高大上了许多&#xff1f;那这些栅格线真的只能拿来展示吗&#xff1f;有…

js取消气泡事件、阻止浏览器的默认行为

1.阻止事件冒泡,使成为捕获型事件触发机制.取消tr里面子元素响应tr定义的事件,在tr子元素里面禁止气泡事件就可以&#xff0c;子元素事件中加入window.event.cancelBubbletrue 即可&#xff01; 例子&#xff1a;表格行有一个单击事件,例如:<table><tr οnclick"…

使用openssh-clients的scp命令来传输文件

系统环境&#xff1a;RedHat Enterprise Linux Server 6 主机desktop作为客户端&#xff0c;服务器为9.9.9.9(域名为www.huage.com) 以下4个实例均在客户端完成&#xff0c;此时并未通过ssh登录到www.huage.com 1、复制远程服务器的文件到本地&#xff1a; [rootdesktop huage]…

python alter table_python(pymysql)之mysql简单操作

一、mysql简单介绍说到数据库&#xff0c;我们大多想到的是关系型数据库&#xff0c;比如mysql、oracle、sqlserver等等&#xff0c;这些数据库软件在windows上安装都非常的方便&#xff0c;在Linux上如果要安装数据库&#xff0c;咱不得不首先推荐的是mysql数据库了&#xff0…

linux屏保配置文件夹,Linux下屏保设置

Linux文本终端/字符界面屏保取消在我们日常使用Linux过程中&#xff0c;经常遇到使用屏幕终端一段时间后&#xff0c;显示器关闭&#xff0c;屏幕上没有任何显示。一段时间后&#xff0c;屏幕就会关闭&#xff0c;无任何显示。若此时系统死机或僵死&#xff0c;而且屏幕上有输出…

POJ 2429 GCD LCM Inverse ★(pollard-ρ DFS枚举)

题目链接&#xff1a;http://poj.org/problem?id2429 题目大意&#xff1a;给定gcd(a,b)和lcm(a,b)&#xff08;<2^63&#xff09;&#xff0c;求a和b&#xff0c;如果有多种情况&#xff0c;输出和最小的情况. 首先gcd(a,b) * lcm(a,b) a*b&#xff0c;但是如果我们直…

移动端怎么让底部固定_移动端排名应该怎么做?两种匹配移动端实战排名干货分享!...

关于移动端优化的问题、最近一些兄弟一直在问我应该怎么做?毕竟现在是手机的时代、绝大部分情况下、PC显得有点鸡肋!在讲移动端排名之前、逆冬先来讲两个容易被大家搞错的问题(移动端)。1、我观察现在的移动端都是独立的http://m.xxx.com&#xff0c;是不是百度喜欢独立的移动…

asterisk1.8 Makefile分析 (1)

为了观查Makefile的输出&#xff0c;可以对Makefile做如下修改。 1. 将PRINT_DIR和NOISY_BUILD这两个变量置为yes。 2. 修改Makefile.rules&#xff0c;将ECHO_PREFIX和CMD_PREFIX的赋值都去掉。 3. 将以下关键目标的命令前符号都去掉。 makeopts.embed_rules $(MOD_SUBDIR…

python定时发送信息_python实现定时发送消息

#!/usr/bin/env python#-*- coding:utf-8 -*- Author : wujf Time:2018/8/21 15:59# 自动发送消息from threading import Timerfrom wxpy import *import requestsimport urllib2,re,urllib,requests#bot Bot(console_qr2,cache_pathbotoo.pk1) #把consol_qr2去掉&#xff0c;…