Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Windows installation fails #13

Closed
bilderbuchi opened this issue May 21, 2015 · 28 comments
Closed

Windows installation fails #13

bilderbuchi opened this issue May 21, 2015 · 28 comments

Comments

@bilderbuchi
Copy link

I am on Windows 8, Atom 0.200.0, and the installation fails with

Installing “Hydrogen@0.3.3” failed.

> zmq@2.11.1 install C:\Users\buchner\AppData\Local\Temp\apm-install-dir-115421-4460-cnflq2\node_modules\Hydrogen\node_modules\zmq
> node-gyp rebuild


C:\Users\buchner\AppData\Local\Temp\apm-install-dir-115421-4460-cnflq2\node_modules\Hydrogen\node_modules\zmq>node "C:\Users\buchner\AppData\Local\atom\app-0.200.0\resources\app\apm\node_modules\npm\bin\node-gyp-bin\\..\..\node_modules\node-gyp\bin\node-gyp.js" rebuild 

gypnpm ERR! Windows_NT 6.2.9200
npm ERR! argv "C:\\Users\\buchner\\AppData\\Local\\atom\\app-0.200.0\\resources\\app\\apm\\bin\\\\node.exe" "C:\\Users\\buchner\\AppData\\Local\\atom\\app-0.200.0\\resources\\app\\apm\\node_modules\\npm\\bin\\npm-cli.js" "--globalconfig" "C:\\Users\\buchner\\.atom\\.apm\\.apmrc" "--userconfig" "C:\\Users\\buchner\\.atom\\.apmrc" "install" "C:\\Users\\buchner\\AppData\\Local\\Temp\\d-115421-4460-c5n6l2\\package.tgz" "--target=0.22.0" "--arch=ia32"
npm ERR! node v0.10.35
npm ERR! npm  v2.5.1
npm ERR! code ELIFECYCLE

npm ERR! zmq@2.11.1 install: `node-gyp rebuild`
npm ERR! Exit status 1
npm ERR! 
npm ERR! Failed at the zmq@2.11.1 install script 'node-gyp rebuild'.
npm ERR! This is most likely a problem with the zmq 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 zmq
npm ERR! There is likely additional logging output above.

Python 3.4.2, Ipython notebook 3.1.0, and zeromq 4.0.5 are installed via Anaconda/Miniconda.

@speg
Copy link

speg commented May 21, 2015

Also failing on OS X 10.10.3:

> zmq@2.11.1 install /private/var/folders/_z/76phwkm974n8lgtp70xv4zzc0000z8/T/apm-install-dir-115421-528-gnhwxo/node_modules/Hydrogen/node_modules/zmq
> node-gyp rebuild


/bin/sh: pkg-config: command not found
gyp: Call to 'pkg-config libzmq --libs' returned exit status 127. while trying to load binding.gyp
gyp ERR! configure error 
gyp ERR! stack Error: `gyp` failed with exit code: 1
gyp ERR! stack     at ChildProcess.onCpExit (/Applications/Atom.app/Contents/Resources/app/apm/node_modules/npm/node_modules/node-gyp/lib/configure.js:343:16)
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 Darwin 14.3.0
gyp ERR! command "node" "/Applications/Atom.app/Contents/Resources/app/apm/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /private/var/folders/_z/76phwkm974n8lgtp70xv4zzc0000z8/T/apm-install-dir-115421-528-gnhwxo/node_modules/Hydrogen/node_modules/zmq
gyp ERR! node -v v0.10.35
gyp ERR! node-gyp -v v1.0.2
gyp ERR! not ok 
npm ERR! Darwin 14.3.0
npm ERR! argv "/Applications/Atom.app/Contents/Resources/app/apm/bin/node" "/Applications/Atom.app/Contents/Resources/app/apm/node_modules/npm/bin/npm-cli.js" "--globalconfig" "/Users/Steve/.atom/.apm/.apmrc" "--userconfig" "/Users/Steve/.atom/.apmrc" "install" "/private/var/folders/_z/76phwkm974n8lgtp70xv4zzc0000z8/T/d-115421-528-1ffwoyp/package.tgz" "--target=0.22.0" "--arch=x64"
npm ERR! node v0.10.35
npm ERR! npm  v2.5.1
npm ERR! code ELIFECYCLE

npm ERR! zmq@2.11.1 install: `node-gyp rebuild`
npm ERR! Exit status 1
npm ERR! 
npm ERR! Failed at the zmq@2.11.1 install script 'node-gyp rebuild'.
npm ERR! This is most likely a problem with the zmq 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 zmq
npm ERR! There is likely additional logging output above.

npm ERR! Please include the following file with any support request:
npm ERR!     /private/var/folders/_z/76phwkm974n8lgtp70xv4zzc0000z8/T/apm-install-dir-115421-528-gnhwxo/npm-debug.log

@willwhitney
Copy link
Collaborator

@speg This is a different problem — run brew install pkg-config first. It says to in the readme, but I should make it more prominent.

@speg
Copy link

speg commented May 21, 2015

@willwhitney Ah, sorry. I read it as install pkg-config if zeromq fails. But I see you just fixed that in 8504fff! Thanks, I am up and running! :shipit:

@willwhitney
Copy link
Collaborator

@bilderbuchi Seems like node's zmq package isn't working properly on Windows. I'll look into why.

@willwhitney
Copy link
Collaborator

Looks like it's node-gyp that's the root cause.

@bilderbuchi (or anyone else with a Windows machine): would you be willing to spend a few minutes on a pull request to get the kinks worked out with Windows? It would be very helpful!

@willwhitney willwhitney added the help wanted Help is desired label May 21, 2015
@bilderbuchi
Copy link
Author

I don't speak *script, so I think whipping up a PR is out of my reach. I could try installing devbuilds or whatever, though, if you tell me how, but I'm pretty busy at work in the coming weeks (and my home machine is Linux only ;-) :-/ ).

@jzthree
Copy link
Contributor

jzthree commented May 21, 2015

I can install sucessfully on Windows Server 2012 although there are some other compatibility issues. I had the node-gyp rebuild problem before when using MSVS2010 compiler. It worked fine after I uninstalled MSVS2010 and use MSVS2012 C++ compiler.

But to make it functional it seems that we still need some compatibility fixes. I will report my partial progress so far. The first issue is related to ipython/jupyter kernels path in kernel-manager.coffee. I worked-around that and now it is the line "child_process.execSync('mkdir -p ' + @fileStoragePath)" in config-manager.coffee complaining with "bad file descriptor error". Any idea on what's going on here?

@willwhitney
Copy link
Collaborator

Unfortunately there are a few things that will break on Windows.

The path that I store kernel config files in uses a Unix slash, plus instead of shelling out that should be using fs.mkdirSync.

I think that changing the line to fileStoragePath: path.join(__dirname, '..', 'kernel-configs') should work in Windows, then instead of execSync on the line it should be fs.mkdirSync(@fileStoragePath).

@willwhitney
Copy link
Collaborator

@jzthree Just made those changes to config-manager.coffee and pushed to master, so you can pull them or copy-paste them to see if that helps.

@jzthree
Copy link
Contributor

jzthree commented May 21, 2015

Yes this basically fixed it. I made a few minor compatibility changes see pull request #16 so it now runs python kernel on my machine without problem (I haven't tested other kernels. UPDATE: I just tested IJulia and it also works out of the box). Thanks for the awesome package and being so helpful!!

@willwhitney
Copy link
Collaborator

@jzthree You're amazing! Thanks for the help!

@bilderbuchi
Copy link
Author

@willwhitney this is not fixed for me, I still get the same error message as originally reported afaict, for hydrogen 0.3.5.
However, I saw this other issue #12 about installation not working with Python 3 - Python 3 is the only python on my system, but I don't get the error message as reported in #12 about the Python executable mismatch, so I'm not sure I'm hitting this.

@willwhitney willwhitney reopened this May 22, 2015
@willwhitney
Copy link
Collaborator

@bilderbuchi right, sorry. Since it looks like the issue is with node-gyp, try following their install instructions. It looks like they have some extra dependencies on Windows. You will also need to use Python 2.x for sure — the underlying gyp tool doesn't support 3.x (which is ridiculous, and I would love a way to replace the current zmq module to fix all this).

If that works for you, I'll add some info to the install instructions for Windows.

@willwhitney willwhitney removed the help wanted Help is desired label May 22, 2015
@ksze ksze mentioned this issue May 22, 2015
@bilderbuchi
Copy link
Author

Thanks for the follow-up. I have to say I'm hesitant to pull in the extra dependencies of Python2 and Visuals Studio (both which I don't use). I think I'll give up on trying to get this on windows, and try installing this on my Linux machine, instead. Sorry for the noise.

@bilderbuchi
Copy link
Author

Happy to say, after installing libzmq3-dev, this installed and works on Ubuntu. :-) Feel free to close this or keep open for other unfortunate souls...

@willwhitney
Copy link
Collaborator

Glad you've got it running :)

Sorry installation on Windows is such a drag. Something really needs to replace node-gyp as the build tool of choice for Node.

@rgbkrk
Copy link
Member

rgbkrk commented May 23, 2015

Here we go...

screenshot 2015-05-23 08 55 54

FML

screenshot 2015-05-23 08 59 14

@willwhitney
Copy link
Collaborator

@rgbkrk how did you get this working?

@rgbkrk
Copy link
Member

rgbkrk commented May 24, 2015

That was just a base install of Atom, nothing fancy.

@willwhitney
Copy link
Collaborator

Yup, figured it out. I thought you had gotten Hydrogen running on it.

@rgbkrk
Copy link
Member

rgbkrk commented May 25, 2015

Check this out:

screenshot 2015-05-25 09 31 04

Steps for me to get there:

@rgbkrk
Copy link
Member

rgbkrk commented May 25, 2015

Proof, there it is:

screenshot 2015-05-25 09 41 15

@rgbkrk
Copy link
Member

rgbkrk commented May 25, 2015

I'll go ahead and update the README.

@rgbkrk rgbkrk mentioned this issue May 25, 2015
@willwhitney
Copy link
Collaborator

Whoa, way to go! I'll merge that immediately.

@DavidPowell
Copy link

I followed @rgbkrk's instructions but I still get errors. I have multiple microsoft compilers installed to compile extensions for python 2.7 and 3.4, so I wonder if one of these is somehow getting called instead of the visual studio community edition 2015. Is there some way that the relevant binaries can be distributed, instead of end users needing to compile them?

@willwhitney
Copy link
Collaborator

Oof, I'm sorry. Our current state of affairs regarding ZMQ really sucks.

We're working on ways around this, including a bundled Go binary that intermediates between talking ZMQ to the kernel and websockets to the client. That would allow Hydrogen to be pure JS.

Here's the project: https://github.com/rgbkrk/juno
If you know any Go, contributions would be welcomed!

@rgbkrk
Copy link
Member

rgbkrk commented Aug 13, 2015

Juno will be the base library for comms, the opinionated version for hydrogen will be under a separate name. I'm hoping to try out goczmq and its model for idiomatic go for working with zmq.

@TKCen
Copy link
Contributor

TKCen commented Aug 22, 2015

Updated the windows requirements in pull request #95

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

7 participants