Ошибка "недопустимый заголовок ELF" при загрузке модуля libyaml

Когда я вхожу в узел и пытаюсь потребовать libyaml я получаю:

> require('libyaml')
Error: /home/ubuntu/shadow/node_modules/libyaml/build/Release/binding.node: invalid ELF header
at Object.Module._extensions..node (module.js:485:11)
at Module.load (module.js:356:32)
at Function.Module._load (module.js:312:12)
at Module.require (module.js:362:17)
at require (module.js:378:17)
at Object.<anonymous> (/home/ubuntu/shadow/node_modules/libyaml/index.js:7:15)
at Module._compile (module.js:449:26)
at Object.Module._extensions..js (module.js:467:10)
at Module.load (module.js:356:32)
at Function.Module._load (module.js:312:12)

я использую node version 0.8.12 а также libyaml version 0.2.1, Любопытно, что ошибка зависит от сервера, но, похоже, она не основана на номерах версий, потому что она отлично работает на одном из боксов с одинаковыми версиями.

2 ответа

Можно также использовать 'npm rebuild module-name', чтобы перекомпилировать код C на компьютере развертывания как часть сценария предварительной установки.

Документация

Спасибо vinayr за то, что посоветовал мне запустить npm install на производственной коробке. Проблема в том, что им нужно было установить npm по-разному. Я решил это с помощью команды предварительного развертывания на коробке как часть развертывания. Задача решена.

Другие вопросы по тегам