Używam "instalacji na przykład", aby pobrać i skompilować wszystkie zależności od małej aplikacji node.js, którą napisałem. Plik "package.json", którego używam, jest poprawny i zawiera wszystkie potrzebne informacje."Nie można znaleźć pliku wykonywalnego Pythona ..." - npm install zawiesza się
Jeden z pakietów do zainstalowania ma "węzeł-gyp" jako zależność, więc wcześniej zainstalowałem pakiet "python2".
Teraz, w pewnym momencie zaczynam się komunikaty o błędach:
> node-gyp rebuild
gyp ERR! configure error
gyp ERR! stack Error: Can't find Python executable "python", you can set the PYTHON env variable.
gyp ERR! stack at failNoPython (/usr/lib/node_modules/npm/node_modules/node-gyp/lib/configure.js:103:14)
gyp ERR! stack at /usr/lib/node_modules/npm/node_modules/node-gyp/lib/configure.js:42:11
gyp ERR! stack at F (/usr/lib/node_modules/npm/node_modules/which/which.js:40:25)
gyp ERR! stack at E (/usr/lib/node_modules/npm/node_modules/which/which.js:43:29)
gyp ERR! stack at /usr/lib/node_modules/npm/node_modules/which/which.js:54:16
gyp ERR! stack at FSReqWrap.oncomplete (fs.js:99:15)
gyp ERR! System Linux 3.18.9-200.fc21.x86_64
gyp ERR! command "node" "/usr/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /srv/visitor/node_modules/phantom/node_modules/dnode/node_modules/weak
gyp ERR! node -v v0.12.1
gyp ERR! node-gyp -v v1.0.3
gyp ERR! not ok
npm WARN optional dep failed, continuing [email protected]
Kwestie wydaje się, że zmienna środowiskowa brakuje.
Czy ktoś może wskazać mi właściwy kierunek? Niezależnie od tego, gdzie szukam w Internecie, nie ma żadnej wzmianki o zmiennej "PYTHON", tylko "PYTHONPATH" i inne podobne. Jaki jest poprawny sposób, aby to naprawić, aby nie uzyskać tych błędów?
UPDATE 1:
Po wykonaniu porady z tego wątku dodałem te polecenia przed wykonaniem "npm install":
PYTHON=/usr/sbin/python2
export PYTHON
Teraz ja dostaję ten błąd:
> node-gyp rebuild
gyp ERR! build error
gyp ERR! stack Error: not found: make
gyp ERR! stack at F (/usr/lib/node_modules/npm/node_modules/which/which.js:40:28)
gyp ERR! stack at E (/usr/lib/node_modules/npm/node_modules/which/which.js:43:29)
gyp ERR! stack at /usr/lib/node_modules/npm/node_modules/which/which.js:54:16
gyp ERR! stack at FSReqWrap.oncomplete (fs.js:99:15)
gyp ERR! System Linux 3.18.9-200.fc21.x86_64
gyp ERR! command "node" "/usr/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /srv/visitor/node_modules/phantom/node_modules/dnode/node_modules/weak
gyp ERR! node -v v0.12.1
gyp ERR! node-gyp -v v1.0.3
gyp ERR! not ok
npm WARN optional dep failed, continuing [email protected]
Uważam to za absurd, że mówi "... nie znaleziono: make ...". Czy istnieje taka możliwość? Jeśli tak, to w jaki sposób pakiety są instalowane poprawnie?
Szczerze mówiąc, nic nie rozumiem. Jakieś pomysły?
Musisz ustawić zmienną środowiskową 'PYTHON'. To, co jest w tej zmiennej, będzie użyte. Nie ma znaczenia, czym jest 'PYTHONPATH'. – adarsh
@adarsh Tyle mogę powiedzieć. Czy mógłbyś rozwinąć? Jeśli odpowiesz na to pytanie, przegłosuję. – dsljanus
z jakiego systemu operacyjnego używasz? jak zainstalowałeś python2? spróbuj wykonać to w linii poleceń najpierw – irqed