什么是节点GYP

问题描述:

谁能给我解释一下什么是node-gyp以及为什么它使用我的系统文件来构建Node.js的包。什么是节点GYP

  1. 如果Ii构建节点项目并且它在内部使用了node-gyp。
  2. 然后我焦油该项目,并移动到不同的系统
  3. 我解压它那里,并尝试使用它

请问这种方法的工作?

+7

它的GitHub的网页上描述:https://github.com/nodejs/node-gyp。基本上,'node-gyp'就像'make'。它是一个用于控制C++项目编译过程的工具。只有它专门为node.js插件(以C++编写的模块)而设计。因此,如果使用相同的CPU,转到其他系统可能会有效。移到不同的操作系统或CPU(例如从x86到ARM)将不起作用。对于Linux,移动到不同版本的同一发行版的不同发行版可能会或可能无法正常工作。如果转移到不同版本的node.js可行,我不是100%确定的 – slebetman

节点-GYP是一个工具,它编译Node.js的扩展中心。 Node.js的扩展中心是当地的Node.js模块,用C或C++,它因此需要你的机器上编译。他们用相似的节点GYP工具编译后,它们的功能可以通过以下方式访问需要(),就像任何其他的Node.js模块。

如果你做你的建议的模块将无法正常工作,您需要编译/与你移动的程序在系统上的节点GYP构建它。

节点GYP:https://github.com/nodejs/node-gyp

Node.js的附加组件:https://nodejs.org/api/addons.html