Skip to content

Latest commit

 

History

History
42 lines (25 loc) · 1.01 KB

README.md

File metadata and controls

42 lines (25 loc) · 1.01 KB

require-rebuild

Patch require() to rebuild a node module if it has been built for a different node version.

Works with electron as well and has been tested on OSX and Windows.

Usage

Once, as the first line of your program, include this line:

require('require-rebuild')();

That's it! Now all further require() calls, no matter how deep in your dependency tree, will make sure a native module has been compiled for the right node version.

To see it in action, install a native module, then switch to a different node version with a different abi, and see how it rebuilds on the fly:

$ node example.js
Recompiling node_modules/bignum
CXX(target) Release/obj.target/bignum/bignum.o
SOLINK_MODULE(target) Release/bignum.node
Done!

General warning

This belongs into application code, not into a lib. Better leave it to a lib's consumer how to build their dependencies.

Build systems

At this moment, those build systems are supported

  • node-gyp
  • prebuild

License

MIT