node-webkit工程搭建
参考资料:
https://github.com/rogerwang/node-webkit/wiki/Building-node-webkit
一、编译环境搭建(必须按照教程要求的步骤执行)
http://www.chromium.org/developers/how-tos/build-instructions-windows
1.Visual Studio 2010 Professional or Standard.
4.(Optional) Cygwin.
(http://www.chromium.org/developers/how-tos/install-depot-tools)
二、代码获取
由于node-webkit属于Chromium的一部分,故而需要将整个Chromium的代码下载到本地,本地磁盘需要预留至少20G的空间以供下载及编译代码。
1.创建一个空文件夹,命名为“node-webkit”;
2.进入该文件夹,新建文件“.gclient”,文件内容为:
solutions = [
{ "name" : "src",
"url" : "https://github.com/zcbenz/chromium.git@origin/node",
"deps_file" : ".DEPS.git",
"managed" : True,
"custom_deps" : {
"src/third_party/WebKit/LayoutTests": None,
"src/chrome_frame/tools/test/reference_build/chrome": None,
"src/chrome_frame/tools/test/reference_build/chrome_win": None,
"src/chrome/tools/test/reference_build/chrome": None,
"src/chrome/tools/test/reference_build/chrome_linux": None,
"src/chrome/tools/test/reference_build/chrome_mac": None,
"src/chrome/tools/test/reference_build/chrome_win": None,
},
"safesync_url": "",
},
]
3.打开git命令行窗口”Git Bash”,执行“gclient sync --force”强制获取代码
注:代码恢复使用命令gclient revert
代码结构如下:
node-webkit/
|-- .gclient
`-- src/
|-- many-stuff
|-- ...
`-- content
|-- ...
`-- nw (source code of this repo)
三、拷贝DirectX SDK文件
mkdir -p /path/to/node-webkit/src/third_party/directxsdk/files
cp -r /c/Program\ Files\ \(x86\)/Microsoft\ DirectX\ SDK\ \(June\ 2010\)/* /path/to/node-webkit/src/third_party/directxsdk/files/
四、工程编译
推荐使用ninja编译该工程,简单的命令行如下:
export GYP_GENERATORS='ninja'
./build/gyp_chromium content/content.gyp
注:此时应该得到了所有的工程文件,否则需要执行gclient runhooks -v
ninja -C out/Release nw.exe
参考https://code.google.com/p/chromium/wiki/NinjaBuild
注:编译过程中如果报错bush:$'\r': command not found,则打开git命令行窗口”Git Bash”,进入src目录,执行find -name "*.sh" | xargs dos2unix,将所有dos格式的shell脚本转换为unix格式