node-libxml-xsd завершается с ошибкой "... xmljs.node: файл не распознан: формат файла не распознан" при выполнении перестройки node-gyp - PullRequest
0 голосов
/ 07 июня 2018

При попытке создать контейнер Docker для приложения Meteor, пересборка узла-гипа завершается неудачно при попытке компиляции node-libxml-xsd со следующей ошибкой:

<command-line>:0:0: note: this is the location of the previous definition
  SOLINK_MODULE(target) Release/obj.target/node-libxml-xsd.node
/home/docker/data/app/programs/server/npm/node_modules/libxmljs-mt/build/Release/xmljs.node: file not recognized: File format not recognized
collect2: error: ld returned 1 exit status
make: *** [Release/obj.target/node-libxml-xsd.node] Error 1
node-libxml-xsd.target.mk:133: recipe for target 'Release/obj.target/node-libxml-xsd.node' failed
make: Leaving directory '/home/docker/data/app/programs/server/npm/node_modules/libxml-xsd/build'
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:258:23)
gyp ERR! stack     at emitTwo (events.js:126:13)
gyp ERR! stack     at ChildProcess.emit (events.js:214:7)
gyp ERR! stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:198:12)
gyp ERR! System Linux 4.9.93-boot2docker
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 /home/docker/data/app/programs/server/npm/node_modules/libxml-xsd
gyp ERR! node -v v8.11.2
gyp ERR! node-gyp -v v3.6.2
gyp ERR! not ok
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! libxml-xsd@0.5.2 install: `node-gyp rebuild`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the libxml-xsd@0.5.2 install script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

Я собираю его на Mac (boot2docker), используя Node 8.9.4.Есть идеи?

1 Ответ

0 голосов
/ 07 июня 2018

Я нашел ответ, поэтому я пишу для потомков:

Оказывается, libxml-xsd не перестраивает libxmljs-mt в первую очередь, поэтому перед запуском npm install мне нужно выполнить:

cd npm && npm rebuild --unsafe-perm libxmljs-mt
...