Linphone for iphone 编译

17 篇文章 0 订阅
10 篇文章 0 订阅
这两天 和一位网络好友 在做sip电话,他比较厉害 unix 命令知道的比较多英文也比较好 很早就编译完成了
我通过聊天方式向他请教了编译linphone的过程
http://www.linphone.org/eng/download/git.html  linphone源码
根据自己的需要下载 git     http://git-scm.com/  
安装git 
之后在 终端 命令行下
输入  git clone git://git.linphone.org/linphone-iphone.git --recursive
开始下载 克隆
可能中间会出现 port9418 错误 
希望出现这个错误的同胞们 再重新删除 再git吧 我是这样的 不知道怎么解决 可能我这边网络不正常吧 反正我又下了次没有出现这种错误
下载之后没有报什么failed 那就恭喜 成功了
下一步 打开 linphone-iphone目录 里面有个readme 打开 可以看到
                    ******************************************

Linphone for iPhone depends on liblinphone sdk. To build this sdk, you must install both xcode with iPhone OS SDK  and MacPorts (www.macports.org) with the following ports:
-automake 
-autoconf
-libtool
-intltool
-wget
-pkgconfig
//要先下载macport  安装完成之后
执行 
//sudo port install automake
//...

Link macport libtoolize to glibtoolize (sudo ln -s /opt/local/bin/glibtoolize /opt/local/bin/libtoolize)
//直接运行上面的命令
 sudo ln -s /opt/local/bin/glibtoolize /opt/local/bin/libtoolize

You may update variable SDK_VERSION from file submodules/build/iphone-config.site according to your iPhone SDK version. Current is 4.0
//这句的意思是改成你目前支持的iphone sdk

To generate the liblinphone dual arch sdk, once the above commands have been executed:
    cd submodules/build
    make -f  builder-iphone-simulator.mk  all &&  make -f  builder-iphone-os.mk  all &&make -f builder-iphone-os.mk delivery-sdk
//现在最新的版本 应该是 make all  直接make all 
如果没有什么错误应该就可以编译通过了
生成的是个
liblinphone-sdk
Libraries are available from liblinphone-sdk/


make all 的时候会有 一些文件下载不到
opt/local/bin/wget http://www.ilbcfreeware.org/documentation/gips_iLBClicense.pdf
--2011-06-15 14:20:13--  http://www.ilbcfreeware.org/documentation/gips_iLBClicense.pdf
正在解析主机 www.ilbcfreeware.org (www.ilbcfreeware.org)... 174.133.170.66
正在连接 www.ilbcfreeware.org (www.ilbcfreeware.org)|174.133.170.66|:80... 已连接。
已发出 HTTP 请求,正在等待回应... 404 Not Found
2011-06-15 14:20:14 错误 404:Not Found。

make[3]: *** [gips_iLBClicense.pdf] Error 8
make[2]: *** [all-recursive] Error 1
make[1]: *** [build-libilbc] Error 2
make: *** [all] Error 2
修改makefile
/linphone-iphone/submodules/build-i386-apple-darwin/libilbc-rfc3951/downloads
/linphone-iphone/submodules/build-armv7-apple-darwin/libilbc-rfc3951/downloads
/linphone-iphone/submodules/build-armv6-apple-darwin/libilbc-rfc3951/downloads
gips_iLBClicense.pdf
从网上搜到 这个文件 http://www.calculate-linux.org/packages/licenses/gips_iLBClicense.pdf
但是要修改 makefile 文件 查找 license_url = http://www.ilbcfreeware.org/documentation/$(license)

修改为 license_url = http://www.calculate-linux.org/packages/licenses/$(license)



2


1. Install XCode

2. Install MacPort, then install these ports: automake, autoconf, libtool, intltool, wget, pkgconfig, gtk2

sudo port intall automake

sudo port install autoconf

sudo port install libtool

sudo port install intltool

sudo poart install wget

sudo port install pkgconfig

sudo port install gtk2

 

3.Install git. I followed the instruction on this great github article.

 

4. Download linphone source from this git tree page

git clone git://git.linphone.org/linphone-iphone.git --recursive

 

5. Follow the README in linphone-iphone directory

Link important libtoolize to glibtoolize

sudo ln -s /opt/local/bin/glibtoolize /opt/local/bin/libtoolize

Update SDK_Version in submodules/build/iphone-config.site if appropriate

Generate the liblinphone dual arch sdk

cd submodules/build

make -f builder-iphone-simulator.mk all && make -f builder-iphone-os.mk all &&make -f builder-iphone-os.mk delivery-sdk

6. After step 5 is completed, open linphone.xcodeproj in linphone-iphone directory. Just build as normal.

Troubleshooting

On Snow Leopard with MacPort 1.9.2, I had to copy /usr/X11/share/aclocal/pkg.m4 to /usr/share/aclocal to get rid of the PKG_CHECK_MODULES error. Thanks to Thomas Covo’s response to a thread. After doing so, run ./autogen.sh in all external plugins (exosip, osip, speedx) and

cd submodules/externals/exosip

./autogen.sh

cd ../osip

./autogen.sh

cd ../speex

./autogen.sh

cd ../../linphone

./autogen.sh



3.

linphone编译过程及可能遇到的问题


linphone在编译的过程中会需要很多的依赖包,如果有一个包没有安装上就会编译失败,README上面的编译步骤是没有错误的,但是我们在用macport编译的过程中,明明按照步骤来的一步一步的安装,发现最后make all的时候会出现各种各样的问题。下面我先把README上的安装步骤以及需要注意的地方详细说明以下


1 在编译之前我们需要安装编译所需要的各种依赖包,为了方便安装我们可以macport软件安装工具,所以首先我们需要下载并安装xocodemacport ,下载xcode comand tools 

然后在终端执行下面的命令

$ sudo port install nawk coreutils automake autoconf libtool intltool wget pkgconfig cmake yasm doxygen

2 下载安装gas-preprosessor.pl

$ wget --no-check-certificate https://raw.github.com/yuvi/gas-preprocessor/master/gas-preprocessor.pl

 $ sudo mv gas-preprocessor.pl /opt/local/bin/.

$ sudo chmod +x /opt/local/bin/gas-preprocessor.pl


macport libtoolize link glibtoolize

  $ sudo ln -s /opt/local/bin/glibtoolize /opt/local/bin/libtoolize


4  Link host's strings to simulator SDK 


For Xcode prior to 4.3:

$ sudo ln -s  /usr/bin/strings /Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/strings

For newer XCode:

$ sudo ln -s  /usr/bin/strings /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/strings


5 开始编译


 


 To generate the liblinphone multi arch sdk in GPL mode, do:

$ cd submodules/build

$ make all 


如果不想作为一个开源的软件,执行下面的命令



$ cd submodules/build

$ make all enable_gpl_third_parties=no


 * ZRTP支持


 

  $ make all enable_gpl_third_parties=yes enable_zrtp=yes


SDK结果在 liblinphone-sdk/ directory.



如果你想重新编译你的SDK,执行下面的命令

$ make veryclean

  $ make all


如果在编译的过程中没有出现error 那么恭喜你,你编译成功了。



在编译的过程出现的问题(这时我在编译的过程出现的问题)

1 sudo port install nawk coreutils automake autoconf libtool intltool wget pkgconfig cmake yasm doxygen 执行这个命令的过程中,我们不要一起安装(加入你不是一个linux高手),在安装的过程中我们才会知道那个,所以我们可以一个确定那个安装包安装成功失败,我们可以用命令sudo port install nawk........

我们可以用which nawk查看我们是否安装了某个安装包。


2 有时候我们下载的linphone包是不完整的。请确认你的包是完整的。


3 make all的过程出现 could not create libosip2.pc 这时缺少依赖包,我们需要确认缺少的是那个依赖包,方法同一



  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值