Почему иногда установка npm не работает на Mac?

Я создал проект nodejs, когда я запускаю команду npm install, он терпит неудачу с некоторой ошибкой

Тот же проект работает в системе Ubuntu, но когда я клонирую этот код в системе Mac и пытаюсь запустить npm, установка не удалась с некоторой ошибкой

Я думаю, что есть что-то с модулем Scrypt, но я точно не знаю причину Пожалуйста, помогите мне, заранее спасибо

ОС: MAC
Узел: 10,15
Npm: 6,0

Смотрите ошибку ниже:-

WareWolf:mynodeapp$ npm install
> scrypt@6.0.3 preinstall /node_modules/scrypt
> node node-scrypt-preinstall.js

Error: Error: Command failed: ./configure
configure: error: /node_modules/scrypt/scrypt/scrypt-1.2.0':
configure: error: C compiler cannot create executables
See `config.log' for more details

> scrypt@6.0.3 install /node_modules/scrypt
> node-gyp rebuild

gyp ERR! build error
gyp ERR! stack Error: `make` failed with exit code: 1
gyp ERR! stack     at ChildProcess.onExit (/usr/local/Cellar/nvm/0.34.0/versions/node/v10.15.0/lib/node_modules/npm/node_modules/node-gyp/lib/build.js:262:23)
gyp ERR! stack     at ChildProcess.emit (events.js:182:13)
gyp ERR! stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:240:12)
gyp ERR! System Darwin 17.7.0
gyp ERR! command "/usr/local/Cellar/nvm/0.34.0/versions/node/v10.15.0/bin/node" "/usr/local/Cellar/nvm/0.34.0/versions/node/v10.15.0/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /node_modules/scrypt
gyp ERR! node -v v10.15.0
gyp ERR! node-gyp -v v3.8.0
gyp ERR! not ok

npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! scrypt@6.0.3 install: `node-gyp rebuild`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the scrypt@6.0.3 install script.

1 ответ

Решение

Я получил это путем удаления файла `package-lock.json ', файла.npm, файла node_modules и очистки кэша npm

Требуемые шаги:

npm install npm@latest -g
npm cache clean — force
rm -rf ~/.npm
rm -rf node_modules
rm -f package-lock.json

В npm install.staging, при запуске npm install создается папка node_modules, но все модули помещаются в подпапку с именем.staging.

Я обнаружил ту же проблему, когда начал проект на своем Linux-компьютере, и мне нравится клонировать его для работы с Mac.

Решение работает для меня:

npminstall --no-optional

Дополнительная информация: /questions/16465571/kak-reshit-npm-ustanovit-preduprezhdenie-brosaya-fsevents-na-ne-mac-os/16465583#16465583

Другой способ решить эту проблему - удалить package-lock.json.

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