一、概述
Github 上有 Libuv 的镜像,直接下载即可。想在 macOS 系统下进行源码分析,Source Insight 没有 macOS 版,wine 执行也不好用,虚拟机不想装,类似的源码分析工具没试过。幸好 Libuv 支持使用 GYP 生成 Xcode 项目文件。
二、获取 Libuv 源码
1 | cd ~ |
三、安装 GYP for macOS
1 | cd ~/Libuv |
备注:
- 备用下载地址:https://github.com/svn2github/gyp.git
- 应该也可以使用 nodejs 项目下的 gyp ,但使用 svn2github 的 gyp 已经可用,也就没再试。
四、生成 Libuv 的 Xcode 项目
进入 Libuv 目录生成 Xcode 项目:
1 | cd ~/Libuv/libuv |
执行完成后生成 Xcode 项目 uv.xcodeproj 。
五、编译
可在 Xcode 中进行编译,也可以通过命令行:
1 | xcodebuild -ARCHS="x86_64" -project uv.xcodeproj -configuration Release -target All |
六、生成文档
1、安装 sphinx
1 | brew install sphinx-doc |
或
1 | pip install sphinx |
2、设置 PATH
1 | echo "export PATH=/usr/local/opt/sphinx-doc/bin:$PATH" >> ~/.bash_profile |
如果使用的是 zsh ,则:
1 | echo "export PATH=/usr/local/opt/sphinx-doc/bin:$PATH" >> ~/.zshrc |
3、进入Libuv 的 docs 目录 make :
1 | cd ~/Libuv/libuv/docs |
参考资料
- https://code.google.com/p/gyp/
- https://code.google.com/p/gyp/source/checkout
- https://github.com/mogemimi/pomdog/wiki/How-to-Install-GYP
- https://github.com/svn2github
- https://github.com/nodejs/node-gyp
- https://github.com/nodejs/node
- https://github.com/libuv/libuv
- http://www.nowx.org/uvbook/basics.html
- http://luohaha.github.io/Chinese-uvbook/
- https://github.com/thlorenz/libuv-dox
- https://github.com/thlorenz/learnuv
- http://blog.csdn.net/paohui0134/article/category/6266738
- https://github.com/yjhjstz/deep-into-node
- http://www.sphinx-doc.org/en/stable/install.html