This worked for me
@brucejo just the part
meteor npm install --global --production windows-build-tools is the only thing I had to do from those install instructions. Actually when I tried to run
meteor npm install -g node-gyp I got errors.
Make note that I ran these commands from an admin shell in the app directory and used meteor at the start of the command.
I had the problem while upgrading with fourseven:email@example.com package. I added the package again manually with meteor add fourseven:scss and it upgraded correctly. Then my whole meteor upgrade worked. I am using ubuntu, if anyone had the same problem
Can confirm this worked for me on Windows 10. I had Windows Build Tools installed as described in the migrating to 1.4 and I ran
npm install -g node-gyp in an Admin permission cmd.
OK, I did some digging around and I am trying to get some clarification on how to think about the meteor global repository in the
I posted “Meteor and the npm global repository” to the forums.
I filed a bug: “‘meteor npm list -g’ not working on windows (looking in wrong directory)”
So far what I can gather is that:
node-gypcomes with the v1.4
- you need to make sure all the pre-req’s are installed so the
node-gypwill be able to use the correct compiler for your environment.
- installing code into your
dev_bundleis not recommended. You should follow the instructions as listed:
npm install --global --production windows-build-tools
meteor npm install --global --production windows-build-tools
to get mine to work, I did:
npm install -g node-gyp
my pre-requisites were already in place.
I think there are some unanswered questions here:
- If I install a package to the global node repository, will it override the
node-gyppre-requisites need to be installed in the
dev_bundlerepository to make the
node-gypwork? Maybe this is an exception to the overall guidance.
While i experienced the same issue. The only way i went around the problem was by uninstalling meteor and re-installing with a fresh download. It resolved all the problems. However i can understand that people are having issues updating existing projects that are based on the older build of meteor.
My suggestion is: use meteor remove … or locate the package file inside the .meteor folder and comment out the offending library. Thereafter you should be able to re-add it later once the update completes.
Hope this helps (worked for me on Windows 10 x64)
Edit: Unfortunately this did not work with all apps and i ran into an issue when a package had a dependency on fourseven:scss … Will keep everyone posted if i find a solution.
@brucejo I thought that was the “norm” when installing npm packages for Meteor (https://guide.meteor.com/using-npm-packages.html#installing-npm) That is the only reason I did it that way. I have only a high level understanding on how Meteor works (only 3 month experience) with not much npm experience and so I don’t think I’ll be able to shed much light on this subject other than what worked for me.
Meteor and the `npm global repository`
@aaronkenz Yes, it is the norm for project packages to do
node-gyp is a tool used by the build system and needs to be installed globally (e.g.
-g). Installing globally into the
dev_bundle should be considered very carefully.
Essentially, you altered the shipped
dev_bundle by doing a
-g install. But like I said above, I do not know if that is the right thing to do for the
node-gyp prerequisites or not.
same exact problem with the same exact dependency… but on windows. So you did not remove the package name from the package.json file in .meteor you removed it via command prompt?
try this : meteor remove npm-bcrypt
meteor add npm-bcrypt
This worked for me! I am on OS X El Capitan (v. 10.11.6)
Thnk for sharing
I didn’t remove it, I just added it again via command prompt (meteor add packagename) and it installed correctly. Then I upgraded the whole project.
I feel that adding and removing these packages manually via terminal is too cumbersome because you might have many of these packages breaking. Since this whole round-trip might annoy some people around here. I dug into the problem a bit further and it is indeed related to the chaining of the dependencies.
In a nutshell if you add a dependency that is crashing during install to the chain before a given package requires it. You resolve the issue.
So for instance:
if materialize:materialize makes use of fourseven:scss and the latter crashes during installation.
- Go to packages.json (in .meteor folder)
- Put in the crashing dependency (fourseven:scss) in a line preceding the package being installed (materialize:materialize)
And the upgrade will go smooth…
Hope this helps.
Hey guys I had the same problem, I just remove node and reinstall on linux, after I tried to update and it worked.
It work for me, thank you!
Hey Guys, I have this prob. on a CentOS release 6.7.
i.e. => Errors while adding packages:
While loading package firstname.lastname@example.org: etc…
Does any had this problem in Centos ? I tried some of the solutions above but none seems to work.
it works fine in macos - so it’s seems to be related with the Centos environment.
same on windows 10
CentOS 6 is extra-tricky because its C++ compiler is too old for the version of V8 that Node 4 uses. I had to do the following:
curl -sL https://rpm.nodesource.com/setup_4.x | bash - yum install -y nodejs devtoolset-3-gcc-c++
source scl_source enable devtoolset-3 export CXX=$(which c++) cd programs/server npm install node main.js
YMMV - I’m using
meteor build directly rather than
Server got 100% CPU when using Meteor.call (only on production)
Tnx Mrw34, yes, i found out in the end the issue was the compiler. I had to run the compilation/installation as sudo since some permissions issues was involved. Now I have a build-system that works on centos6.5 and manage to upgrade all my projects.