只是为了了解下js就没必要折腾chromium了,我编译了一天。想调试发现,8g内存的mac直接爆炸。然后就整了v8
也是一开始贪心。。。。
给一组我的数据
chromium:
下载好源码解决好依赖反正就是 马上可以编译了, 12G
编译花了10小时
编译完毕之后一共102G。。。。。
8gmac xcode想调试 反正是带不动 lldb直接吃满4g内存然后就死那了,而且xcode打开那么大的一个工程。。。反正就是各种卡。。。
v8:
到能编译之前 2.5G
xcode编译20多分钟吧 不是记得很清楚了反正挺快的
编译完总共 5.4G
调试啥的很流畅
废话到此为止,要调试要先编译好,装好xcode、下载depot工具包、获取源码、等标准操作不废话了,chromium v8各自官网、文档都很清楚了。我说下实际遇到的一些问题。以mac为例
1:大天朝墙了Google 自备。。你懂得。要配置好terminal环境 比如。proxychains。mac新版 10.6还是多少 近期买的都是10.13 10.14了基本是 要考虑了的。这些新系统有完整性保护 sip 要关掉。方法自己百度。
2:在同步代码时候会出现
To use a proxy in this situation, please supply those settings in a .boto
file pointed to by the NO_AUTH_BOTO_CONFIG environment var.
告诉你 不支持 proxy 这样的代理 要你设置 boto ,然后还有设置 一个环节变量。意思就是你要整一个boto的代理设置文件,然后设置环境变量指向它。随便找个地方创建一个boto.cfg。里面写如下信息
[Boto]
proxy=127.0.0.1
proxy_port=8001 //这是http/s代理端口不是socks5代理端口
然后
export NO_AUTH_BOTO_CONFIG=path/boto.cfg
然后 继续要开你的代理继续执行你的同步代码。。他会。。
Failed to fetch file gs://chromium-gn/a68b194afb05d6a6357cf2e2464136ed7723c305 for src/buildtools/mac/gn.
...
Error: Command 'download_from_google_storage --no_resume --platform=darwin --no_auth --bucket chromium-gn -s src/buildtools/mac/gn.sha1' returned non-zero exit status ...
类似这种。。下载不来。。但是你会发现你是可以下载的只不过他下不来。。最笨的办法你自己下载他的这个文件放到对应位置。比如如上例子就是下载
gs://chromium-gn/a68b194afb05d6a6357cf2e2464136ed7723c305
到
src/buildtools/mac/gn
然后这里记得一点 是压缩包要解压,然后要给执行权限。 最简单的办法下完之后对整个工程文件
chmod -R 755
还有就是要把
gs://
换成
https://storage.googleapis.com/
不想自己复制粘贴改名字,直接用命令就可以是
wget --no-check-certificate https://storage.googleapis.com/chromium-gn/a68b194afb05d6a6357cf2e2464136ed7723c305 -O src/buildtools/mac/gn
要生成xcode工程文件当进行gn gen时,可以通过参数 –ide=xcode。这将得到一个all.xcworkspace文件,
用xcode打开
xcode调试v8 直接用他的shell等就可以,调试chromium 要 Debug->Attach to Process选择你打开的chromium
chromium 多进程等别的问题就不在本文范围内了讲道理我也都没调试过呢。。