2015-12-23 3 views
2

TL; DR: Почему npm не создает двоичные исполняемые файлы зависимостей и как я могу их построить без явно npm rebuild их?npm install не создает исполняемые файлы поставщика

В моем проекте описываются его зависимости в обычном пакете.json. Когда я запускаю npm install, все пакеты устанавливаются в node_modules, как и ожидалось. Однако три пакета имеют подкаталоги поставщиков, которые должны иметь в них двоичные исполняемые файлы, и они не собираются, как ожидалось.

$ Ls/USR/SRC/приложение/node_modules/OptiPNG-бен/продавец/
лс не может получить доступ к/USR/SRC/приложение/node_modules/OptiPNG-BIN/поставщика /: Нет такого файла или каталога

чтобы обойти эту проблему, мне нужно запустить "NPM перестраивать" на каждом из 3-х пакетов:

  • НПХ перестраивать узел-Сассы
  • НПХ восстановить jpegtran-бен
  • НПМ восстановить OptiPNG-бен

$ НПМ перестроение OptiPNG-бен

> [email protected] постустановочных/USR/SRC/приложение/node_modules/OptiPNG-бен
> узел Библиотека/install.js

✔ OptiPNG тест до сборки прошел успешно

[email protected]/USR/SRC/приложение/node_modules/OptiPNG-бен

$ Ls/USR/SRC/приложение/node_modules/OptiPNG-бен/продавец/
OptiPNG

Когда я бегу npm rebuild по себе, я думал, что, возможно, это будет "знать", чтобы построить каждый из них, но вместо этого, он перестраивает некоторые из других пакетов (которые не имеют исполняемые файлы):

$ НПМ перестраивать

> [email protected] постустановочных/USR/SRC/приложение/node_modules/Здравствуй история
> узел ./npm-scripts/postinstall.js

> [email protected] постустановочных/USR/SRC/приложение/node_modules/среагировать-маршрутизатор
> узел ./npm-scripts/postinstall .js

> [email protected] постустановочных/USR/SRC/приложение/node_modules/отродье синхронизация
> узла постустановочного

Как я могу получить НПЙ установить бинарные исполняемые файлы, принадлежащие эти 3 зависимости в своих каталогах поставщиков (без явного rebuild для каждого)?

ответ

0

Оказывается, это ошибка в npm 3.3.7 (и, возможно, другие версии npm). Обновление до npm 3.5.3 исправлено для меня.См. https://github.com/npm/npm/issues/6679

+0

Не работает для меня. –

Смежные вопросы