jupyter / atom-notebook

[Deprecated] Jupyter Notebook, but inside Atom.
MIT License
306 stars 48 forks source link

Doesn't run due to "incompatible native module" #35

Closed sayingandparsing closed 6 years ago

sayingandparsing commented 8 years ago

Originally jupyter-nb wouldn't install due to incompatible dependencies for runas. Escaped this issue by cloning the git version and running apm install. However, the package still fails to open ipython notebooks. On start up, atom logs the error "/usr/share/atom/resources/app.asar/src/package.js:713 Failed to require the main module of 'jupyter-notebook' because it requires an incompatible native module." and instructs me to run apm rebuild, which I did, with no noticeable difference. I also specified the path in settings. Anyone have an idea how I might fix this, or at least collect an error message that isn't so vague?

rgbkrk commented 8 years ago

Do you have a longer form log from the apm rebuild or in the console for which native module is causing trouble?

gnestor commented 8 years ago

"Incompatible native module" usually implies that the version of Node that is installing module and its dependencies is different than Atom's version (which I believe is Node 4 with Atom >=1.2). What version of Node are you using to install jupyter-notebook? What version of Atom are you running?

sayingandparsing commented 8 years ago

I'm using the current verions of Atom and Node for the arch distribution, which is probably the origin of the problem. Atom is at 1.5.3-1, so probably still using node 4, while my system is using Node 5.6. Would downgrading node likely get jupyter-notebook running? I'm not necessarily opposed to doing that, but this is the only atom package that seems to be affected by the conflict.

gnestor commented 8 years ago

If you install jupyter-notebook from within Atom using the package manager, you shouldn't run into any module version mismatches. However, if you clone the repo and install or use apm, you will be building the dependencies using Node 5 and Atom will require that the package be rebuilt. Try installing in Atom and if that doesn't work, try using apm. If neither work, share the logs.

sayingandparsing commented 8 years ago

Installing the git version does work, but I get the message about native module incompatibility at startup, and can't open python notebooks. When I try to install it though the atom package screen, it fails and returns error relating to runas. Thanks for the help. Here's the log from installation inside atom:

runas@3.1.1 install /tmp/apm-install-dir-116117-4985-9zn302/node_modules/jupyter-notebook/node_modules/pathwatcher/node_modules/runas node-gyp rebuild

make: Entering directory '/tmp/apm-install-dir-116117-4985-9zn302/node_modules/jupyter-notebook/node_modules/pathwatcher/node_modules/runas/build' CXX(target) Release/obj.target/runas/src/main.o runas.target.mk:90: recipe for target 'Release/obj.target/runas/src/main.o' failed make: Leaving directory '/tmp/apm-install-dir-116117-4985-9zn302/node_modules/jupyter-notebook/node_modules/pathwatcher/node_modules/runas/build'

bufferutil@1.2.1 install /tmp/apm-install-dir-116117-4985-9zn302/node_modules/jupyter-notebook/node_modules/ws/node_modules/bufferutil node-gyp rebuild

make: Entering directory '/tmp/apm-install-dir-116117-4985-9zn302/node_modules/jupyter-notebook/node_modules/ws/node_modules/bufferutil/build' CXX(target) Release/obj.target/bufferutil/src/bufferutil.o SOLINK_MODULE(target) Release/obj.target/bufferutil.node COPY Release/bufferutil.node make: Leaving directory '/tmp/apm-install-dir-116117-4985-9zn302/node_modules/jupyter-notebook/node_modules/ws/node_modules/bufferutil/build'

utf-8-validate@1.2.1 install /tmp/apm-install-dir-116117-4985-9zn302/node_modules/jupyter-notebook/node_modules/ws/node_modules/utf-8-validate node-gyp rebuild

make: Entering directory '/tmp/apm-install-dir-116117-4985-9zn302/node_modules/jupyter-notebook/node_modules/ws/node_modules/utf-8-validate/build' CXX(target) Release/obj.target/validation/src/validation.o SOLINK_MODULE(target) Release/obj.target/validation.node COPY Release/validation.node make: Leaving directory '/tmp/apm-install-dir-116117-4985-9zn302/node_modules/jupyter-notebook/node_modules/ws/node_modules/utf-8-validate/build'

jupyter-js-utils@0.3.2 postinstall /tmp/apm-install-dir-116117-4985-9zn302/node_modules/jupyter-notebook/node_modules/jupyter-js-services/node_modules/jupyter-js-utils npm dedupe

jupyter-js-services@0.5.1 postinstall /tmp/apm-install-dir-116117-4985-9zn302/node_modules/jupyter-notebook/node_modules/jupyter-js-services npm dedupe

minimist@1.2.0 node_modules/jupyter-js-utils/node_modules/minimist -> node_modules/minimist requirejs@2.1.22 node_modules/jupyter-js-utils/node_modules/requirejs -> node_modules/requirejs

../src/main.cc:1:17: fatal error: nan.h: No such file or directory compilation terminated. make: *\ [Release/obj.target/runas/src/main.o] Error 1 gyp ERR! build error gyp ERR! stack Error: make failed with exit code: 2 gyp ERR! stack at ChildProcess.onExit (/usr/share/atom/resources/app/apm/node_modules/npm/node_modules/node-gyp/lib/build.js:269:23) gyp ERR! stack at ChildProcess.emit (events.js:98:17) gyp ERR! stack at Process.ChildProcess._handle.onexit (child_process.js:820:12) gyp ERR! System Linux 4.4.1-2-ARCH gyp ERR! command "node" "/usr/share/atom/resources/app/apm/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild" gyp ERR! cwd /tmp/apm-install-dir-116117-4985-9zn302/node_modules/jupyter-notebook/node_modules/pathwatcher/node_modules/runas gyp ERR! node -v v0.10.40 gyp ERR! node-gyp -v v2.0.2 gyp ERR! not ok npm ERR! Linux 4.4.1-2-ARCH npm ERR! argv "/usr/share/atom/resources/app/apm/bin/node" "/usr/share/atom/resources/app/apm/node_modules/npm/bin/npm-cli.js" "--globalconfig" "/home/reagan/.atom/.apm/.apmrc" "--userconfig" "/home/reagan/.atom/.apmrc" "install" "/tmp/d-116117-4985-6omr19/package.tgz" "--target=0.34.5" "--arch=x64" npm ERR! node v0.10.40 npm ERR! npm v2.13.3 npm ERR! code ELIFECYCLE

npm ERR! runas@3.1.1 install: node-gyp rebuild npm ERR! Exit status 1 npm ERR! npm ERR! Failed at the runas@3.1.1 install script 'node-gyp rebuild'. npm ERR! This is most likely a problem with the runas 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 their info via: npm ERR! npm owner ls runas npm ERR! There is likely additional logging output above.

npm ERR! Please include the following file with any support request: npm ERR! /tmp/apm-install-dir-116117-4985-9zn302/npm-debug.log

gnestor commented 8 years ago

The node-gyp issue is related to Python 3 (see https://github.com/jupyter/atom-notebook/issues/32, https://github.com/jupyter/atom-notebook/issues/30, https://github.com/jupyter/atom-notebook/issues/23, https://github.com/jupyter/atom-notebook/issues/31). Try PYTHON=python2 apm install to specify the Python version for npm.

sayingandparsing commented 8 years ago

I saw those issues a while back, and probably tried setting to python2 when I installed the git package that gave me the incompatible module error. But when I enter 'PYTHON=python2 apm install jupyter-notebook' to install the standard version I still get a runas error. Any ideas on what else I could try?

gnestor commented 8 years ago

You could try to open up an issue on node-runas...