2013-08-04 16 views
6

Próbowałem zainstalować topojsona, wykonując samouczek Let's Make a Map Mike'a Bostocka: http://bost.ocks.org/mike/map/ i uważam, że udało mi się uzyskać najnowszą wersję Node.js i npm. $ który również działa ogr2ogr. Jestem całkiem nowym programistą i Ubuntu i szczerze doceniam jakąś dokładną pomoc, dlaczego npm install topojson -g daje następujące błędy. Kiedy spróbuję tego samego polecenia z sudo, otrzymuję błędy typu: npm ERR! błąd rejestru parsujący json i gyp ERR! stack error: nie można zainstalować "pre" wersji węzła, użyj flagi --nodedir zamiast:Problemy z instalacją topojsona na ubuntu

Dzięki!

npm ERR! Error: EACCES, open '/home/natecraft/.npm/7edf76d6-topojson.lock' 
npm ERR! { [Error: EACCES, open '/home/natecraft/.npm/7edf76d6-topojson.lock'] 
npm ERR! errno: 3, 
npm ERR! code: 'EACCES', 
npm ERR! path: '/home/natecraft/.npm/7edf76d6-topojson.lock' } 
npm ERR! 
npm ERR! Please try running this command again as root/Administrator. 

npm ERR! System Linux 3.5.0-23-generic 
npm ERR! command "/home/natecraft/.nvm/v0.10.15/bin/node" "/home/natecraft/.nvm/v0.10.15/bin/npm" "install" "topojson" "-g" 
npm ERR! cwd /home/natecraft/Downloads/node-latest-install 
npm ERR! node -v v0.10.15 
npm ERR! npm -v 1.3.5 
npm ERR! path /home/natecraft/.npm/7edf76d6-topojson.lock 
npm ERR! code EACCES 
npm ERR! errno 3 
npm ERR! stack Error: EACCES, open '/home/natecraft/.npm/7edf76d6-topojson.lock' 
npm ERR! 
npm ERR! Additional logging details can be found in: 
npm ERR!  /home/natecraft/Downloads/node-latest-install/npm-debug.log 
npm ERR! not ok code 0 

Odpowiedz

4

Po pierwsze, należy sprawdzić wersję node.js - używać wersji stabilnej, a nie wersji rozwojowej. Po drugie, wywołaj polecenie npm jako superuser.

$ sudo npm install -g topojson 

Do tej pory po przełączeniu pliku node.js do wersji stabilnej instalacja TopoJSON przebiega prawidłowo. Dziękuję za uwagę.

+0

Która wersja zwłaszcza ty znalezienie stabilny? – philshem

2

Ten błąd wystąpił podczas instalacji topojson (Debian 3.2.0-4-amd64). Moje kroki, aby sprawić, że wszystko działa (omówione także here).

zainstalować węzeł v 0.11.10

git clone https://github.com/joyent/node.git 
cd node 
git checkout v0.11.10 
./configure && make 
sudo make install 

Usuń debian Gyp i zainstalować poprzez KMP:

sudo apt-get remove gyp 
npm install -g gyp 

Jawnie zainstalować contextify, mimo że była już zainstalowana wersja.

npm install [email protected] 

następnie zainstalowanie topojson powinien działać

sudo npm install -g topojson