We recently took over a website and are now facing troubles updating the SASS. When running npm install
a bunch of errors get thrown out.
When rebuilding Gyp, something goes wrong and the process aborts.
I've looked over a bunch of different posts and have already tried the following:
- Ran it as sudo
- Removing .node-gyp and rerunning
npm install
- Making sure the correct libtool is loaded (I'm using the one supplied by MAMP, the one in /usr/bin gives even more errors on execution)(Am not using macports)
- Updated XCode to latest version
- Make sure brew doesnt interfere (as in Error building libxmljs for node.js)
- Updated NPM & node to latest versions and made sure there are no spaces in my path (as in https://github.com/nodejs/node-gyp/issues/809)
Meanwhile I tested this with the following node versions:
- node v7.4.0 + npm v4.0.5
- node v6.9.4 + npm v3.10.10
- node v4.6 + npm v3.1.8.10
- node v0.12.18 + npm v2.15.11
- node v0.11.13 + npm v1.4.9
None of these worked.
Here is the error-code generated in my terminal:
--- themes/the_theme ‹master* M?› » sudo npm install
Password:
npm WARN deprecated [email protected]: Please update to minimatch 3.0.2 or higher to avoid a RegExp DoS issue
> [email protected] install /Users/pietermathys/Sites/sitename/sites/sitename/themes/the_theme/node_modules/libxmljs
> node-gyp rebuild
CC(target) Release/obj.target/libxml/vendor/libxml/buf.o
CC(target) Release/obj.target/libxml/vendor/libxml/catalog.o
CC(target) Release/obj.target/libxml/vendor/libxml/chvalid.o
CC(target) Release/obj.target/libxml/vendor/libxml/dict.o
CC(target) Release/obj.target/libxml/vendor/libxml/encoding.o
CC(target) Release/obj.target/libxml/vendor/libxml/entities.o
CC(target) Release/obj.target/libxml/vendor/libxml/error.o
CC(target) Release/obj.target/libxml/vendor/libxml/globals.o
CC(target) Release/obj.target/libxml/vendor/libxml/hash.o
CC(target) Release/obj.target/libxml/vendor/libxml/HTMLparser.o
CC(target) Release/obj.target/libxml/vendor/libxml/HTMLtree.o
CC(target) Release/obj.target/libxml/vendor/libxml/legacy.o
CC(target) Release/obj.target/libxml/vendor/libxml/list.o
CC(target) Release/obj.target/libxml/vendor/libxml/parser.o
../vendor/libxml/parser.c:13492:43: warning: passing 'const xmlChar *' (aka 'const unsigned char *') to parameter of type 'const char *' converts between pointers to integer types with different sign [-Wpointer-sign]
hdlr = xmlFindCharEncodingHandler(doc->encoding);
^~~~~~~~~~~~~
../vendor/libxml/include/libxml/encoding.h:175:42: note: passing argument to parameter 'name' here
xmlFindCharEncodingHandler (const char *name);
^
1 warning generated.
CC(target) Release/obj.target/libxml/vendor/libxml/parserInternals.o
CC(target) Release/obj.target/libxml/vendor/libxml/pattern.o
CC(target) Release/obj.target/libxml/vendor/libxml/relaxng.o
CC(target) Release/obj.target/libxml/vendor/libxml/SAX2.o
CC(target) Release/obj.target/libxml/vendor/libxml/SAX.o
CC(target) Release/obj.target/libxml/vendor/libxml/tree.o
CC(target) Release/obj.target/libxml/vendor/libxml/threads.o
CC(target) Release/obj.target/libxml/vendor/libxml/uri.o
CC(target) Release/obj.target/libxml/vendor/libxml/valid.o
CC(target) Release/obj.target/libxml/vendor/libxml/xinclude.o
CC(target) Release/obj.target/libxml/vendor/libxml/xlink.o
CC(target) Release/obj.target/libxml/vendor/libxml/xmlIO.o
CC(target) Release/obj.target/libxml/vendor/libxml/xmlmemory.o
CC(target) Release/obj.target/libxml/vendor/libxml/xmlmodule.o
CC(target) Release/obj.target/libxml/vendor/libxml/xmlreader.o
CC(target) Release/obj.target/libxml/vendor/libxml/xmlregexp.o
CC(target) Release/obj.target/libxml/vendor/libxml/xmlsave.o
CC(target) Release/obj.target/libxml/vendor/libxml/xmlschemas.o
../vendor/libxml/xmlschemas.c:24203:10: warning: explicitly assigning value of variable of type 'xmlSchemaValType' to itself [-Wself-assign]
valType = valType;
~~~~~~~ ^ ~~~~~~~
1 warning generated.
CC(target) Release/obj.target/libxml/vendor/libxml/xmlschemastypes.o
CC(target) Release/obj.target/libxml/vendor/libxml/xmlstring.o
CC(target) Release/obj.target/libxml/vendor/libxml/xmlunicode.o
CC(target) Release/obj.target/libxml/vendor/libxml/xmlwriter.o
CC(target) Release/obj.target/libxml/vendor/libxml/xpath.o
../vendor/libxml/xpath.c:12402:13: warning: comparison of constant 'XML_NAMESPACE_DECL' (18) with expression of type 'xmlXPathTypeVal' is always false [-Wtautological-constant-out-of-range-compare]
if (type == XML_NAMESPACE_DECL)
~~~~ ^ ~~~~~~~~~~~~~~~~~~
In file included from ../vendor/libxml/xpath.c:185:
../vendor/libxml/trionan.c:194:1: warning: unused function 'trio_is_special_quantity' [-Wunused-function]
trio_is_special_quantity
^
../vendor/libxml/trionan.c:218:1: warning: unused function 'trio_is_negative' [-Wunused-function]
trio_is_negative
^
3 warnings generated.
CC(target) Release/obj.target/libxml/vendor/libxml/xpointer.o
LIBTOOL-STATIC Release/xml.a
libtool: unrecognized option `-static'
libtool: Try `libtool --help' for more information.
make: *** [Release/xml.a] Error 1
gyp ERR! build error
gyp ERR! stack Error: `make` failed with exit code: 2
gyp ERR! stack at ChildProcess.onExit (/usr/local/lib/node_modules/npm/node_modules/node-gyp/lib/build.js:276:23)
gyp ERR! stack at emitTwo (events.js:106:13)
gyp ERR! stack at ChildProcess.emit (events.js:191:7)
gyp ERR! stack at Process.ChildProcess._handle.onexit (internal/child_process.js:215:12)
gyp ERR! System Darwin 16.0.0
gyp ERR! command "/usr/local/bin/node" "/usr/local/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /Users/pietermathys/Sites/sitename/sites/sitename/themes/the_theme/node_modules/libxmljs
gyp ERR! node -v v6.9.4
gyp ERR! node-gyp -v v3.4.0
gyp ERR! not ok
[email protected] /Users/pietermathys/Sites/sitename/sites/sitename/themes/the_theme
└── (empty)
npm WARN [email protected] No description
npm WARN [email protected] No repository field.
npm WARN [email protected] No license field.
npm ERR! Darwin 16.0.0
npm ERR! argv "/usr/local/bin/node" "/usr/local/bin/npm" "install"
npm ERR! node v6.9.4
npm ERR! npm v3.10.10
npm ERR! code ELIFECYCLE
npm ERR! [email protected] install: `node-gyp rebuild`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the [email protected] install script 'node-gyp rebuild'.
npm ERR! Make sure you have the latest version of node.js and npm installed.
npm ERR! If you do, this is most likely a problem with the libxmljs package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR! node-gyp rebuild
npm ERR! You can get information on how to open an issue for this project with:
npm ERR! npm bugs libxmljs
npm ERR! Or if that isn't available, you can get their info via:
npm ERR! npm owner ls libxmljs
npm ERR! There is likely additional logging output above.
npm ERR! Please include the following file with any support request:
npm ERR! /Users/pietermathys/Sites/sitename/sites/sitename/themes/the_theme/npm-debug.log
npm ERR! code 1
I feel like I've exhausted most of my options, but I'm still not seeing it. I hope someone out there can shed some light on this.
The solution seems to be a couple of things combined: