
> [email protected] install /home/johnsoct/bobtail/node_modules/libpq
> node-gyp rebuild
/home/johnsoct/.nvm/versions/node/v12.22.4/lib/node_modules/npm/node_modules/npm-lifecycle/node-gyp-bin/node-gyp: line 5: /usr/local/lib/node_modules/node-gyp/bin/node-gyp.js: No such file or directory
Eu li o erro e não, não há nada instalado em /usr/local/lib/... Quando instalo o node-gyp globalmente, ele não é instalado lá.
Eu tentei:
- reinstalando o postgres (https://fedoraproject.org/wiki/PostgreSQL)
- instalando libpq para fedora
- reiniciando 512394823094 vezes
- removendo node_modules e reinstalando (repetidamente, apenas esperando que algo mágico aconteça)
- removendo package-lock.json e reinstalando
- algumas outras coisas que esqueci há muito tempo
Estou ciente de uma pequena dica: o pacote que NÃO ESTÁ sendo instalado npm install
é o pg-native
. Não tenho certeza se isso faz diferença, mas acho que está relacionado, já que libpq
está sendo mencionado no relatório de instalação.
Se você estiver curioso, esta é a aparência do meu PATH (instalei e desinstalei o postgres usando o linuxbrew originalmente):
/home/johnsoct/bin:/usr/pgsql-10/bin:/usr/pgsql-10/bin:/home/linuxbrew/.linuxbrew/opt/postgresql@10/bin:/home/johnsoct/bin:/home/linuxbrew/.linuxbrew/opt/postgresql@10/bin:/home/johnsoct/.nvm/versions/node/v12.22.4/bin:/home/johnsoct/.local/bin:/home/johnsoct/bin:/home/linuxbrew/.linuxbrew/bin:/home/linuxbrew/.linuxbrew/sbin:/usr/local/bin:/usr/local/sbin:/usr/bin:/usr/sbin:/var/lib/snapd/snap/bin
Qualquer conselho/sugestão seria muito útil... Estou perdendo a cabeça aqui.
Responder1
Isso é muito improvável, mas como tive os mesmos problemas ao construir apenas libpq usando node-gyp, pensei em compartilhar minha correção de qualquer maneira, só para garantir.
Minha saída de erro ficou assim:
$ npm install
npm ERR! code 1
npm ERR! path /home/ekik/Source/home/grafana/node_modules/libpq
npm ERR! command failed
npm ERR! command sh -c -- node-gyp rebuild
npm ERR! node:internal/modules/cjs/loader:936
npm ERR! throw err;
npm ERR! ^
npm ERR!
npm ERR! Error: Cannot find module 'object-assign'
npm ERR! Require stack:
Isso começou a acontecer quando atualizei do NodeJS 14 para 16 ou 18 no Manjaro Linux. Aparentemente, o pacote node-gyp que está sendo enviado está usando toneladas de coisas obsoletas (coletadas dos logs de instalação do npm), que aparentemente não estão instaladas por padrão (mais).
Minha solução muito suja foi simplesmente:
sudo npm install --global object-assign code-point-at number-is-nan request
Esteja ciente de que isso polui seus node_modules globais.