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

nvm install 4.0 tries and fails to install from source, when binary works #821

Closed
jokeyrhyme opened this issue Sep 9, 2015 · 16 comments
Closed
Assignees
Labels
installing node Issues with installing node/io.js versions.

Comments

@jokeyrhyme
Copy link

I'm using nvm#master (0ef2019)

$ uname -a

Linux hellmouth 4.1.6-1-ARCH #1 SMP PREEMPT Mon Aug 17 08:52:28 CEST 2015 x86_64 GNU/Linux

I've tried nvm install stable and nvm install 4.0.0, and I get the same message:

Installing node v1.0 and greater from source is not currently supported

However, I can do nvm_install_node_binary v4.0.0 and it installs just fine with output:

Checksums empty

If I then try nvm install stable and nvm install 4.0.0, and I get:

v4.0.0 is already installed.
Now using node v4.0.0 (npm v2.14.2)

This is the same result between Linux and OS X 10.11 public beta.

Is this something specific to my environment? Or is this an upstream Node.js problem with the hosting of the new v4.0 release?

@smile21
Copy link

smile21 commented Sep 9, 2015

+1
Installing node v1.0 and greater from source is not currently supported

@ljharb
Copy link
Member

ljharb commented Sep 9, 2015

Installing either io.js, or node v4.0 and later, from source, is currently not supported, no.

I'm working on it, but the tests keep timing out :-/

@ljharb ljharb self-assigned this Sep 9, 2015
@ljharb
Copy link
Member

ljharb commented Sep 9, 2015

@jokeyrhyme also, please don't use the master branch - stick to tagged releases :-)

@jokeyrhyme
Copy link
Author

Sorry, I didn't articulate this well enough: I'm not actually trying to build from source. Far from it. I'm just running nvm install FOO the same way I've always done for 0.10 and 0.12, and I'm expecting a binary-style installation.

For some reason, some of the logic in between nvm install FOO and the internal call to nvm_install_node_binary is getting confused and thinking that there is no pre-built binary available for my platform, so then it tries the source route and fails.

@jokeyrhyme
Copy link
Author

I just rolled back to nvm v0.26.1 (latest tag) and I'm still experiencing this.

It's not urgent or anything, I'm just curious about Node.js v4 at the moment. I'm sure all will be well by the time all the native modules I depend upon are sorted out. :)

@ljharb
Copy link
Member

ljharb commented Sep 9, 2015

Neither installing iojs nor node v4 from source via nvm has never worked with any version of nvm.

Native modules are already sorted out if they use nan :-)

If you run nvm install foo and it attempts to install from source, that just means that no prebuilt binary exists for your system.

@ljharb
Copy link
Member

ljharb commented Sep 9, 2015

Duplicate of #700

@ljharb ljharb added the installing node Issues with installing node/io.js versions. label Sep 9, 2015
@jokeyrhyme
Copy link
Author

that just means that no prebuilt binary exists for your system

@ljharb but there is a working prebuilt binary for my system, both Linux and OS X, as evidenced by being able to run nvm_install_node_binary successfully.

@jokeyrhyme
Copy link
Author

Okay, I've updated nvm to d4caf9f and nvm install 4.0 now works as expected, detecting that there is a prebuilt binary, downloading it, etc, never attempting to do a from-source install.

Great work everyone! <3 :D

@ljharb
Copy link
Member

ljharb commented Sep 9, 2015

@jokeyrhyme Again, this would have worked if you'd stuck to a tagged release. Please do not use nvm from master, as master is unstable and likely broken. If you roll back to v0.26.1 you'll find it works as well.

@jokeyrhyme
Copy link
Author

@ljharb if you read my post (#821 (comment)), I did roll back to a tagged release (v0.26.1), and I still had the problem.

But thanks for the advice, I promise I'll switch to tags. :)

@ljharb
Copy link
Member

ljharb commented Sep 9, 2015

Gotcha, thanks for clarifying :-D

@ljharb
Copy link
Member

ljharb commented Oct 25, 2015

@hdiwan yes, per #821 (comment) it is currently unsupported.

@ljharb
Copy link
Member

ljharb commented Oct 25, 2015

Yes - as soon as I can get the tests to pass without timing out.

@jlamendo
Copy link

jlamendo commented Nov 7, 2015

Thought I'd let you know - In one particular instance, I use nvm as a handy utility to build node.js from source. It's a pain doing it manually.

Because this is officially unsupported, and it doesn't appear that support is coming soon, I forked nvm and made a single change: I removed the check that refused to build from source if the version was nodev4.

It compiles and runs perfectly, on Ubuntu 14.x, anyways. Also may be relevant that I am using CC=afl-clang-fast and CXX=afl-clang-fast++ from the afl-fuzz project, both of which are based on clang/llvm, v3.5 in my case.

My modifications are an ugly hack at best, so I plan to move back to master once this is supported. Just mentioning this in the event that anyone else needs to build from source for v4.x in the meantime. You can view the changes I made here. Also more than willing to help with getting the tests to pass, if you can point to an issue.

@ljharb
Copy link
Member

ljharb commented Nov 7, 2015

@jlamendo i've got it working fine; the problem is that compiling from source is very slow, and travis-ci tests time out when there's been no stdout/stderr output for more than some period of time.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
installing node Issues with installing node/io.js versions.
Projects
None yet
Development

No branches or pull requests

4 participants