网上貌似没有太多关于 ios 版的 chrome 编译过程,以我 -12级的英文水平看了几天文档终于编译成功,跟大家分享一下
一切按照步骤来, 你会发现其实很简单。
本文是参考官方文档来写的步骤~
iOS版官方文档传送门:https://chromium.googlesource.com/chromium/src/+show/master/docs/ios_build_instructions.md
- Mac os 系统
- 安装好新版本的xcode
- java 的环境
在你电脑创建一个文件夹,名字是英文的,如chromium(官方推荐)
ps:chromium代码大概8G+, 确保内存足够
cd到chromium目录命令行输入 : git clone https://chromium.googlesource.com/chromium/tools/depot_tools.git直接下载depot/tools工具,下载完成之后, 设置环境变量命令行:sudovi /etc/profile在最下面加这句exportPATH=`pwd`/depot_tools:"$PATH"'pwd'的部分就是你下载depot_tools的目录,
设置完成之后保存退出, 命令行指令 :wq!
这里讲使用gyp的方式, cd到chromium的目录里, 用touch指令 创建一个名为`chromium.gyp_env`的文件, 然后 vi chromium.gyp_env如果你是开发者账号操作把下面这句粘贴到文件中{"GYP_DEFINES":"OS=ios","GYP_GENERATORS":"ninja,xcode-ninja",}如果不是,用这个{"GYP_DEFINES":"OS=ios chromium_ios_signing=0","GYP_GENERATORS":"ninja,xcode-ninja",}保存并退出
cd到 chromium文件夹内 使用 fetch chromium 指令下载代码,但是不建议使用这个,会把历史版本都下载下来,一是没啥必要, 二是下载量很大,会非常慢推荐使用 fetch --no-history chromium 指令,只下载最新版本,一共8G+如果你中途断了,没关系 输入 gclient sync 指令,继续下载就好了,直到完成
下载完成之后,cd到你下载的src文件夹, 执行 gclient runhooks执行此命令的目的是把需要的第三方依赖都下载好完成后继续执行 gclient sync 等代码同步完成这两步的时间,如果网速够好,不会太久
至此, 其实就没啥了,最后一步编译, 如果你是模拟器调试,cd到src 执行这句ninja -Cout/Debug-iphonesimulatorAll真机调试,执行这句:ninja -Cout/Debug-iphoneosAll编译代码大概八千行左右,我编译了近两个小时,到这里可以出去散散步打打麻将啥的了~如果你编译中途报错少了什么文件,少年莫慌,gclient runhooks,然后 gclient sync完事再执行编译指令, 它会继续上次的编译行数开始编译推荐使用命令行指令编译, 虽然在 chromium/src/bulid 里有xcode可以打开的项目图标但是那个龟速实在无法忍受
编译完成后, 如果想在模拟器运行,输入以下指令即可启动模拟器运行out/Debug-iphonesimulator/iossimout/Debug-iphonesimulator/ios_web_shell.app真机的指令官方文档没给。。而我想装在真机上的时候报错,貌似是因为没有使用开发者账号,还在处理中。。大神知道原因的还望不吝赐教~ 感激不尽~后续如果成功,我会再发帖告诉大家,回头整理好之后可以再发一篇关于chrome调试帖子此贴衷心的献给英语 -8级 以下的兄弟们~
此致
敬礼!