установить iodocs на Linux - PullRequest
       12

установить iodocs на Linux

2 голосов
/ 06 марта 2012

У меня была эта проблема изначально, поэтому я попытался

npm install --force

Кажется, что работает, только с одним предупреждением:

npm WARN querystring@0.0.1 package.json: bugs['web'] should probably be bugs['url']

Но когда я пытаюсь запустить его, он дает мне:

[ec2-user@ip-10-136-14-95 iodocs]$ node ./app.js
The "sys" module is now called "util". It should have a similar interface.

node.js:201
        throw e; // process.nextTick error, or 'error' event on first tick
              ^
Error: Cannot find module 'hashlib'
    at Function._resolveFilename (module.js:332:11)
    at Function._load (module.js:279:25)
    at Module.require (module.js:354:17)
    at require (module.js:370:17)
    at Object.<anonymous> (/home/ec2-user/iodocs/app.js:37:19)
    at Module._compile (module.js:441:26)
    at Object..js (module.js:459:10)
    at Module.load (module.js:348:31)
    at Function._load (module.js:308:12)
    at Array.0 (module.js:479:10)

Понятия не имею, что с этим делать, пожалуйста, пролите немного света на меня.

Кстати, я пытаюсь установить iodocs на Linux 2.6.35.14-97.44.amzn1.x86_64 EC2.

=========================== Update =================== =============================

Я также пытался установить его на Heroku , но столкнулся с той же проблемой:

-----> Heroku receiving push
-----> Node.js app detected
-----> Resolving engine versions
       Using Node.js version: 0.6.12
       Using npm version: 1.0.106
-----> Fetching Node.js binaries
-----> Vendoring node into slug
-----> Installing dependencies with npm
       npm WARN querystring@0.0.1 package.json: bugs['web'] should probably be bugs['url']
       npm ERR! Unsupported
       npm ERR! Not compatible with your version of node/npm: querystring@0.0.1
       npm ERR! Required: {"node":"0.4.x","teleport":">=0.2.0"}
       npm ERR! Actual:   {"npm":"1.0.106","node":"0.6.12"}
       npm ERR! 
       npm ERR! System Linux 2.6.32-342-ec2
       npm ERR! command "/tmp/node-node-kXeE/bin/node" "/tmp/node-npm-1IT8/cli.js" "install"
       npm ERR! cwd /tmp/build_3mjp7psqka071
       npm ERR! node -v v0.6.12
       npm ERR! npm -v 1.0.106
       npm ERR! code ENOTSUP

       > hashlib@1.0.1 preinstall /tmp/build_3mjp7psqka071/node_modules/hashlib
       > node-waf clean || true; node-waf configure build

       npm ERR! 
       npm ERR! Additional logging details can be found in:
       npm ERR!     /tmp/build_3mjp7psqka071/npm-debug.log
       npm not ok
       Nothing to clean (project not configured)
       Checking for program g++ or c++          : /usr/bin/g++ 
       Checking for program cpp                 : /usr/bin/cpp 
       Checking for program ar                  : /usr/bin/ar 
       Checking for program ranlib              : /usr/bin/ranlib 
       Checking for g++                         : ok  
       Checking for program gcc or cc           : /usr/bin/gcc 
       Checking for gcc                         : ok  
       Checking for node path                   : not found 
       Checking for node prefix                 : ok /tmp/node-node-kXeE 
       'configure' finished successfully (0.476s)
       Waf: Entering directory `/tmp/build_3mjp7psqka071/node_modules/hashlib/build'
       [1/6] cc: libhash/md4c.c -> build/Release/libhash/md4c_1.o
       [2/6] cc: libhash/md5c.c -> build/Release/libhash/md5c_1.o
       [3/6] cc: libhash/sha0c.c -> build/Release/libhash/sha0c_1.o
       [4/6] cxx: hashlib.cc -> build/Release/hashlib_2.o
       ../hashlib.cc:14:16: error: ev.h: No such file or directory
       ../hashlib.cc:15:17: error: eio.h: No such file or directory
       ../hashlib.cc:311: error: 'eio_req' was not declared in this scope
       ../hashlib.cc:311: error: 'req' was not declared in this scope
       ../hashlib.cc:312: error: expected ',' or ';' before '{' token
       Waf: Leaving directory `/tmp/build_3mjp7psqka071/node_modules/hashlib/build'
       Build failed:  -> task failed (err #1): 
        {task: cxx hashlib.cc -> hashlib_2.o}
 !     Failed to install dependencies with npm
 !     Heroku push rejected, failed to compile Node.js app

Ответы [ 2 ]

2 голосов
/ 06 марта 2012

Я точно так же столкнулся с этой проблемой.

Я думаю, что есть "Запрос на извлечение", который мог бы исправить это: https://github.com/mashery/iodocs/pull/14

Я собираюсь реализовать его, и если он будет работать, сообщит.

РЕДАКТИРОВАТЬ:

Я смог получить дальше.Вот несколько вещей, которые вам нужно сделать:

  1. реализовать запрос на получение, связанный выше
  2. в package.json, обновить "express": "2.5.8" (версия, которую они имеют 2.4.8. Isnнесовместим с node.js v1.0.0
  3. удалить каталог "hashlib" из "iosdocs / node_modules"

npm install теперь должен работать.

Однако, если вы запускаете node ./app.js, я получаю эту ошибку:

Модуль "sys" теперь называется "util". У него должен быть подобный интерфейс. Экспресс-сервер прослушивает порт 3000

node.js: 201 throw e; // error.nextTick error или событие «error» при первом тике

EDIT # 2:

Понял! Вы должны запустить redis-server (DUH).

Итак, я сделал следующее:

  1. Загрузите Redis 2.4.8 изих сайт
  2. Следуйте их инструкциям в распаковке, сборка
  3. запустить сервер с src/redis-server

Бам, СЕЙЧАС запустить node ./app.js, и это работает!

0 голосов
/ 18 сентября 2015

Я столкнулся с той же ошибкой модуля для hashlib.После устранения неполадок я стер папку iodocs и вместо нее использовал jsonmccreary's fork из iodocs .

После клонирования репо вот что я сделал:

  1. npm install
  2. установленный redis-сервер sudo apt-get install redis-server
  3. запустилRedis-сервер 'Redis-сервер'

Теперь, работает node ./app.js работает!

РЕДАКТИРОВАТЬ:

Джейсон говорит о некоторых проблемахнастраивая heroku для iodocs в его блоге , где я нашел его форк.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...