首先放上pjsip官方网站http://www.pjsip.org/download.htm

下载的时候注意while the .bz2 has LF line-ends and is for Unix and Mac OS X systems.  ( 请下载.bz2 )

下载完成后开始编译  :

首先你要有一个Xcode。

1、找到你的源码,也就是你下载下来的那个.tar.bz2  mac上应该自带解压工具我的就是双击就可以打开了

然后再建一个config_site.h  的.h文件  放在pjlib/include/pj/目录下

#define PJ_CONFIG_IPHONE 1
#include <pj/config_site_sample.h>

完成后可以挽回主目录

准备工作完成开始编译 主要分四种平台   i386(模拟器)

在终端执行

$ export DEVPATH=/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer
$ ARCH="-arch i386" CFLAGS="-O2 -m32 -mios-simulator-version-min=5.0" LDFLAGS="-O2 -m32 -mios-simulator-version-min=5.0" ./configure-iphone
$ make dep && make clean && make

执行完毕后没有错误,模拟器版本的静态库编译完成:目录

  • pjlib/lib
  • pjlib-util/lib
  • pjmedia/lib
  • pjnath/lib
  • pjsip/lib
  • third_party/lib

其他几项静态库编译基本上没啥差别   当然要注意当你编译完成i386静态库后要退出控制台在进入编辑

armv7

执行如下命令:

$ ARCH='-arch armv7' ./configure-iphone
$ make dep && make clean && make
$ ./copylibs.sh armv7//这句命令是用的脚本,把编译好的.a文件拷贝到指定目录
当然你如果不熟悉脚本语言可以不执行否则会提示你找不到./copylibs.sh

armv7s

$ ARCH='-arch armv7s' ./configure-iphone
$ make dep && make clean && make
$ ./copylibs.sh armv7s//这句命令是用的脚本,把编译好的.a文件拷贝到指定目录
当然你如果不熟悉脚本语言可以不执行否则会提示你找不到./copylibs.sh

arm64

$ ARCH='-arch arm64' ./configure-iphone
$ make dep && make clean && make
$ ./copylibs.sh arm64//这句命令是用的脚本,把编译好的.a文件拷贝到指定目录
当然你如果不熟悉脚本语言可以不执行否则会提示你找不到./copylibs.sh arm64

如上所述完成后全部的静态库得到了当然也有别人编译好的链接在这

https://github.com/chebur/pjsip

iOS之 PJSIP静态库编译(一)的更多相关文章

  1. iOS之 PJSIP静态库编译(三)

    dada哪个所有静态库编译完成后还是不能运行那个demo,提示你找不到arm**.a 你lipo后要记得吧合并成.a  名字更改成你最后编译版本生成的.a名字....... 或者吧所有库add到你的工 ...

  2. iOS之 PJSIP静态库编译(二)

    咱们书接上回: 上一篇编译好了PJsip这次我们来点实战 上次编译过后就不必做别的修改因为ios平台的库都支持了. 打开工程   找到 pjsip- apps/src/pjsua/ios/ipjsua ...

  3. iOS开发中静态库之".framework静态库"的制作及使用篇

    iOS开发中静态库之".framework静态库"的制作及使用篇 .framework静态库支持OC和swift .a静态库如何制作可参照上一篇: iOS开发中静态库之" ...

  4. iOS开发中静态库制作 之.a静态库制作及使用篇

    iOS开发中静态库之".a静态库"的制作及使用篇 一.库的简介 1.什么是库? 库是程序代码的集合,是共享程序代码的一种方式 2.库的类型? 根据源代码的公开情况,库可以分为2种类 ...

  5. iOS开发之静态库(五)—— 图片、界面xib等资源文件封装到静态框架framework

    编译环境:Macbook Air + OS X 10.9.2 + XCode5.1 + iPhone5s(iOS7.0.3) 一.首先将资源文件打包成bundle 由于bundle是静态的,所以可以将 ...

  6. 关于iOS上的静态库

    最近再进行项目的真机调试,然后发现了一个天坑.就此研究了一些iOS上的静态库的使用: 首先我们是直接拿一个可以运行的项目来制作静态库的,网上大部分都是先创建静态库然后再写内容,看看我的方法. 1.把子 ...

  7. 李洪强iOS开发之静态库的打包一

    李洪强iOS开发之静态库的打包一 //静态库一般做一下几种事情 //1 工具类 算法逻辑 新建工具类LHQTools 定义类方法 + (NSInteger)sumWithNum1: (NSIntege ...

  8. SQLite3动态库、静态库编译

    资源准备 1.下载SQLite3源码,下载地址为https://www.sqlite.org/download.html.下载sqlite-amalgamation-3200000.zip和sqlit ...

  9. QT 4.8 静态库编译方法

    最最初踏上QT之路是受到了XiaomaGee的指点,相比于常规的窗口程序开发,QT有着以下特点: 1. 优良的跨平台特性(支持Win.Linux.Mac 不同的平台下只需重新编译即可使用) 2. 面向 ...

随机推荐

  1. Java -- 获取当前日期、当月月初日期、月末日期

    Learn From:http://blog.csdn.net/sunhuwh/article/details/39161323 public class CalendarTest { public ...

  2. 【算法题】Multiples of 3 and 5

    Multiples of 3 and 5 原题 题意如下: 找出N以内的3和5的倍数的和. 思路 1.刚看到觉得好弱智,直接遍历一遍不就OK了吗?但是第2和第3个测试用例报了TLE,超时. 2.然后想 ...

  3. Mac常用基本命令/常用Git命令

    Git地址: https://github.com/mancongiOS/command-line基本命令 目录/文件的操作 mkdir "目录名" 在当前路径下创建一个文件夹 m ...

  4. js 实现各种排序

    一 冒泡排序 一万个随机数排序五次执行时间分别为 362 389 361 372 408 毫秒 var arr=[]; for(var j=0;j<10000;j++){ arr.push(Ma ...

  5. ActiveMQ学习(一)——MQ的基本概念

    1) 队列管理器 队列管理器是MQ系统中最上层的一个概念,由它为我们提供基于队列的消息服务. 2) 消息 在MQ中,我们把应用程序交由MQ传输的数据定义为消息,我们可以定义消息的内容并对消息进行广义的 ...

  6. python反转字符串(简单方法)及简单的文件操作示例

    Python反转字符串的最简单方法是用切片: >>> a=' >>> print a[::-1] 654321 切片介绍:切片操作符中的第一个数(冒号之前)表示切片 ...

  7. JavaScript一些函数

    1.prompt()函数:有两个参数,一个是显示用户输入框上面的标签,另一个是输入框的初始值.用来接收用户输入的值,然后把它返回到代码中: 例如: <doctype html> <h ...

  8. IOS页面自动布局 之 NSLayoutConstraint基础篇

    使用AutoLayout之前需要知道以下两点: 1.必须设置 translatesAutoresizingMaskIntoConstraints为NO. 2.如果是viewControl则AutoLa ...

  9. C#基础-css行内元素、块级元素基础

    一.行内元素与块级元素 块级元素列表 <address> 定义地址 <caption> 定义表格标题 <dd> 定义列表中定义条目 <div> 定义文档 ...

  10. 如何修改myeclipse 内存?eclipse.ini中各个参数的作用。

    修改MyEclipse/eclipse文件夹中配置文件eclipse.ini中的内存分配就哦了 =================================== 一般的ini文件设置主要包括以下 ...