Node.js的编译(转)
来源:互联网 发布:中国大数据研究中心 编辑:程序博客网 时间:2024/05/16 00:56
之前编译和简单测试了Google V8引擎,Node.js就是在V8引擎的基础上进一步扩展打造的服务端的JavaScript解释器,当然这个功劳自然离不开牛叉的V8了
V8的设计最初为了浏览器使用,而Node.js让它在服务端继续发扬光大,熟悉MongoDB的一定会想在这个数据库中的引擎是什么了,那是将来的问题了
1:下载最新版本
http://nodejs.org/download/
下载node-v0.10.16.tar.gz
3:测试VS2010编译
打开node.sln
包括多个子工程
从代码量来看,该Node.js工程的源码量有79的左右
所依赖的第三方包包括:
cares
http_parser
npm
openssl
uv
v8
zlib
这些依赖包可谓庞大,多大70多M
通过VS2010编译输出结果为:
========== 全部重新生成: 成功 17 个,失败 2 个,跳过 0 个 ==========
两个错误:
错误 34 error MSB6006: “cmd.exe”已退出,代码为 1。 C:\Program Files\MSBuild\Microsoft.Cpp\v4.0\Microsoft.CppCommon.targets 151 6 node_js2c
错误 123 error C1083: 无法打开包括文件:“node_natives.h”: No such file or directory F:\pbase\node-v0.10.16\src\node_javascript.cc 24 1 node
两个工程编程失败
node_js2c
node
查看错误
貌似下载的代码中确实没有node_natives.h
分析原因
Node使用v8附带的js2c.py将node的js代码转化为c语言的数组,也就是node_natives.h,然后直接编译进node的可执行文件中
应该是缺少了将node.js编译为node_natives.h的原因。
在tools下面复制node.js,然后运行js2c.py获取到node-natives.h
huareal@gpx /cygdrive/f/pbase/node-v0.10.16/tools
# ./js2c.py node_natives.h ../src/node.js
重新编译
还有一个失败(忽略,已经生成node.exe)
转自:http://blog.csdn.net/huareal/article/details/10086523
参考:http://www.infoq.com/cn/articles/nodejs-npm-install-config
- Node.js的编译(转)
- Node.js的编译测试
- openwrt 编译node.js
- Ubuntu 编译安装node.js
- Ubuntu编译安装Node.js
- Node.js npm编译打包自定义的zepto模块
- CentOS6.8升级gcc;编译node.js的V8
- node.js定时任务:node-schedule的使用【转】
- Node.js笔记 --了不起的Node.js
- Node.js---1.Node.js的特点
- Linux环境下node.js环境的搭建以及配置,使用node.js编写工具与简化less编译
- [转] 被误解的 Node.js
- (转)被误解的 Node.js
- node.js 的安装
- node.js的安装
- Node.js的安装
- node.js的介绍
- node.js的介绍
- Apache、Nnginx、Lighttpd的比较和择优
- WinCE系统声音定制
- CVPR 2014 论文
- open cv+C++错误及经验总结(十三)
- UVaOJ 457 - Linear Cellular Automata
- Node.js的编译(转)
- Linux kill的N种方法
- Android体系结构
- 素数个数的位数
- TDD/ATDD
- ARM Linux 3.x的设备树(Device Tree)
- 我的算法学习之路
- 项目部署到Tomat报异常:jar not loaded. See Servlet Spec 2.3, section 9.7.2. Offending ...
- kvm虚拟化教程