Node.js的编译(转)

66 篇文章 1 订阅
56 篇文章 0 订阅

之前编译和简单测试了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


  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
定制 Node.js 并将其集成到 Electron 中有两个主要步骤。首先,您需要克隆 Node.js 代码库并对其进行自定义编译。然后,您将需要使用 Electron Builder 将自定义版本的 Node.js 集成到您的 Electron 应用程序中。 下面是定制 Node.js 并将其集成到 Electron 中的步骤[^1][^2]: 1. 克隆 Node.js 代码库并检查您想要的版本。您可以使用以下命令来克隆 Node.js 仓库: ```shell git clone https://github.com/nodejs/node.git cd node git checkout v14.17.3 # 检查您想要的版本 ``` 2. 然后,您可以使用以下命令配置和编译 Node.js: ```shell ./configure --dest-cpu=x64 --prefix=/path/to/your/custom/nodejs make -j8 make install ``` 上述代码中,您需要将 `--prefix` 参数替换为您希望将 Node.js 安装到的路径,例如 `/usr/local` 或 `/opt/nodejs`。请注意,这里我们使用了 `--dest-cpu=x64` 参数,以确保我们创建的自定义版本与 Electron 兼容。 3. 现在,Node.js 已经编译并准备好使用。接下来,我们需要将其添加到 Electron 应用程序中。要实现这一点,我们将使用 Electron Builder。 安装 Electron Builder: ```shell npm install electron-builder --save-dev ``` 在 `package.json` 中添加以下配置,以确保 Electron Builder 可以使用您的自定义版本的 Node.js: ```json { "build": { "nodeGypRebuild": false, "externals": [ "/path/to/your/custom/nodejs" ] } } ``` 4. 最后,您可以使用 Electron Builder 构建您的应用程序,它将包括您的自定义版本的 Node.js: ```shell npx electron-builder build ``` 以上步骤完成后,您的自定义 Node.js 版本已经成功集成到 Electron 应用程序中了。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值