编译 cronet 静态库—— ios 版本

cronet 是 Chromium 用于移动端的网络库,提供了 Java 和 OC 的 API,支持 HTTP/HTTPS/QUIC/SPDY 等协议。
本文主要参考此文献

1、依赖

1.1 depot_tools

通过下面指令安装 depot_tools,该依赖项包含了后续的 fetch 等命令。python 版本需要小于 2.7,最好是 2.7(创建软链接 /usr/bin/python 指向 /usr/bin/python2.7+)

 git clone https://chromium.googlesource.com/chromium/tools/depot_tools.git
 
 export PATH="$PATH:/path/to/depot_tools" # 或者在 ~/.bashrc 中添加该行命令,并 source 该文件

1.2 chromium 源码

–no-history 可以节省代码下载时间,它忽略仓库的历史信息;整个代码量较大,约 14G,且需要翻墙,1M 左右的速度需要 20~30 分钟。

 mkdir chromium && cd chromium
 fetch --nohooks --no-history ios

1.3 依赖文件

该命令需要 src 目录下的 .gclient 文件。

gclient sync

2、编译

编译必须在 mac 平台操作。
cronet 库的 ios 版本有模拟器和真机之分。
不管是模拟器还是真机,现在 src 目录创建一个软链接,并创建 ninja 编译文件。

# ln -s ./components/cronet/tools/cr_cronet.py cr_cronet.py 
./cr_cronet.py gn

以下命令会生成 cronet 静态库,目录 obj/components/cronet/ios/libcronet*.a

模拟器:

 ./cr_cronet.py build -d out/Debug-iphonesimulator

真机:

./cr_cronet.py build -d out/Debug-iphoneos # 方法 1
./cr_cronet.py gn -i                     # 方法 2
./cr_cronet.py build -i                  # 方法 3
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值