node模块离线的话npm 能用吗
发布于 10 年前 作者 dulante 7015 次浏览 最后一次编辑是 8 年前

我现在遇到的问题是这样的我在32位的linux系统下通过npm安装了node-oracle这个模块,然后我把我的工程复制到别的32为系统上都是正常的 但是放到64位的系统上会报这样的错node_modules/oracle/build/Release/oracle_bindings.node: wrong ELF class: ELFCLASS32; 度娘了一下是说64位的不能引用32位的,而现在蛋疼的是64位的Linux是无网络状态,所以我想在github上下载源码到64位无网络状态下编译,是通过npm编译还是gcc其他什么工具进行编译 说的有点多有点乱求指点啊!

6 回复

放项目放去一台同样的 64 位机器上,删除 node_modules 之后执行 npm install。然后再把整个项目拷去那个 64 位 linux 上。

npm 中的模块不是可以通过本地安装的么?

二进制文件需要重新编译。你可以去npm下载tgz包,再拷贝到目标机器上安装。

@fengxiaolong 你指的是通过与全局安装相对的本地安装还是说下载包本地编译?

@JacksonTian 到目标机器是通过node-gyp安装吗?为什么我执行node-gyp configure的时候 还会出现下载node的log

gyp info it worked if it ends with ok gyp info using node-gyp@1.0.1 gyp info using node@0.10.26 | linux | ia32 gyp http GET http://nodejs.org/dist/v0.10.26/node-v0.10.26.tar.gz gyp http 200 http://nodejs.org/dist/v0.10.26/node-v0.10.26.tar.gz

@dulante 设置 --disturl=http://localhost:8089/dist

你自己用node起个服务。node-gyp安装的时候需要去拿nodejs的源码。所以会去下载。你设置--disturl更改地址,让他去本地拿就好。

回到顶部