NuSkooler / enigma-bbs

ENiGMA½ BBS Software
https://nuskooler.github.io/enigma-bbs/
BSD 2-Clause "Simplified" License
537 stars 104 forks source link

Runtime error. #97

Closed ignatius333 closed 8 years ago

ignatius333 commented 8 years ago

For :bug: bug reports, please fill out the information below plus any additional relevant information. If this is a feature request, feel free to clear the form.

Short problem description

Environment

Expected behavior

Actual behavior

Steps to reproduce

ignatius333 commented 8 years ago

I get this error when trying to execute main.js:

catch22bbs:~/enigma-bbs # ./main.js module.js:327 throw err; ^ Error: Cannot find module '/root/enigma-bbs/node_modules/sqlite3/lib/binding/node-v46-linux-ia32/node_sqlite3.node' at Function.Module._resolveFilename (module.js:325:15) at Function.Module._load (module.js:276:25) at Module.require (module.js:353:17) at require (internal/module.js:12:17) at Object. (/root/enigma-bbs/node_modules/sqlite3/lib/sqlite3.js:4:15) at Module._compile (module.js:409:26) at Object.Module._extensions..js (module.js:416:10) at Module.load (module.js:343:32) at Function.Module._load (module.js:300:12) at Module.require (module.js:353:17)

The obvious problem is that i'm using an IA64 machine, not an IA32 machine. I'm not sure which parameters to pass to the install program to solve this problem. Anyone have any ideas?

Thanks.

NuSkooler commented 8 years ago

@ignatius333 Node.js and ENiGMA½ run perfectly fine on 86_64, and many other platforms. What was the process you used to install? Did you use install.sh or a manual install?

Are you sure npm install succeeded after cloning the repo? The trace above shows you're missing the sqlite module which is downloaded and built when you run npm install (or, will happen if you use the install.sh script)

ignatius333 commented 8 years ago

I've tried both. Manually and with the install.sh. When I try to "compile" it manually, it doesn't compile (without errors), but when I use the install.sh route, it does, and does say that it did in fact succeed. I looked at the path statement for the sqlite module, and it's in x86_64 format, not x86_32. So, that's why it's showing that error, i'd guess.

ignatius333 commented 8 years ago
 catch22bbs:~/enigma-bbs/node_modules/sqlite3/lib/binding/node-v46-linux-x64 # file node_sqlite3.node

node_sqlite3.node: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, BuildID[sha1]=011167dcc475261c1cbc7a366011df0f50120e88, not stripped

NuSkooler commented 8 years ago

@ignatius333 Please try removing the node_modules directory from within your enig dir, then running npm install again & paste the log. What do you mean by compiling manually? You should really only need npm install.

...from the looks of file output, you have a good sqlite built. Do you have the wrong Node interpreter installed somehow? Is your Node 32bit? How did you go about installing Node.js? From the install.sh or some other means? Generally it's recommended to use something like nvm to install node and not apt-get the the like.

ignatius333 commented 8 years ago

npm ERR! farmhash@1.2.1 install: node-gyp rebuild npm ERR! Exit status 1 npm ERR! npm ERR! Failed at the farmhash@1.2.1 install script 'node-gyp rebuild'. npm ERR! This is most likely a problem with the farmhash package, npm ERR! not with npm itself. npm ERR! Tell the author that this fails on your system: npm ERR! node-gyp rebuild npm ERR! You can get information on how to open an issue for this project with: npm ERR! npm bugs farmhash npm ERR! Or if that isn't available, you can get their info via: npm ERR! npm ERR! npm owner ls farmhash npm ERR! There is likely additional logging output above.

npm ERR! Please include the following file with any support request: npm ERR! /root/enigma-bbs/npm-debug.log

By "manually" I mean, running "npm install". I used the install.sh to install it.

Thanks.

NuSkooler commented 8 years ago

@ignatius333 The latest error you posted doesn't quite align with the previous errors. This shows farmhash failing to compile, while the other showed that sqlite wasn't there (yet you listed the file output of the binary). There is something missing here.

Can you answer the questions above? If needed, feel free to hop in #enigma-bbs on FreeNet so we can go into more detail.

NuSkooler commented 8 years ago

Believe we're good on this at this point now that you have a good Node.js installed.