GYP构建系统总结
GYP,Generate Your Project,一個Google開源的構建系統,最開始用于Chromium項目,現在一些其他的開源項目也開始使用GYP,如v8和node-gyp。不管怎樣,這僅僅是一個工具,本文直接把gyp的使用方法的說明一氣呵成。
特別之處
在已經有很多的構建系統的情況下,gyp誕生的哲學或者說優點如下:
各平臺使用各自主流的構建系統。
程序員更熟悉自己的平臺,減少學習成本。
構建速度快。自己平臺的主流構建系統的速度是各平臺優化過的。
在一個平臺上可以生成所有支持的平臺的工程文件。
如在mac上也可以生成Visual Studio工程,windows上也可以生成Xcode工程。
生成的工程文件和手工創建的工程文件沒有區別
這樣,隨時可以停止使用gyp。別人可以只使用相關工程文件而不使用gyp
安裝
由于本文對chromium的編譯是基于Windows做調試的,所以這里僅說明gyp在Windows下的使用。
前提條件:本機需要安裝python2.7,svn或git。
要安裝gyp首先得去克隆google官方維護的gyp的git倉庫。在window上安裝好git以后,開始克隆:
這樣就把gyp的遠程git倉庫克隆下來了,接下來就可以安裝了。
在windows上打開一個cmd(不能再上面的的git bash中操作),切換到gyp的根目錄,輸入下面命令開始安裝,然后等待其安裝完成:
python setup.py install
為了能夠在整個系統的目錄下都能夠使用gyp,所以把gyp的目錄添加到系統的環境變量中。我的添加目錄為:
PATH=C:Userszhaofaquangyp
至此gyp的安裝和配置過程就結束了,這個工具就能使用了。
使用
編寫.gyp文件
運行gyp命令生成makefile、build.ninja文件或xcode、vs等工程
編譯。根據第2步的結果,運行make、ninja或者在xcode、vs里編譯
舉一個最簡單的例子,源文件如下:
#include <iostream>
int main(int argc, const char* argv[])
{
std::cout << "Hello World!" << std::endl;
return 0;
}
編寫.gyp文件如下:
{
'targets': [
{
'target_name': 'main',
'type': 'executable',
'sources': [
'main.cpp',
],
},
],
}
在源文件目錄下運行命令gyp --depth=. main.gyp,生成工程文件。打開生成的工程文件編譯、運行即可?! ?/p>
總結
- 上一篇: 查看分支编码_高性能编码规范驳斥(一)
- 下一篇: 自定义预览_为什么NVR预览画面数量少于