Node.js nvm exit status 145: The directory is not empty - javascript

I have Node.js version 14.18.1 installed and I want to update to 16.10.0 for compatibility for a project. To upgrade I have installed the latest version of nvm (1.1.8) and did nvm install 16.10.0. And then nvm use 16.10.0 and got the error: exit status 145: The directory is not empty. I tried looking this up, but couldn't find anyone on the internet encountering the same issue.
I have also tried adding the path at C:\Users\*user*\AppData\Roaming\nvm\settings.txt to my system environment path, but that didn't work either. Does anyone have an idea as to what might work? Thank you.

I solved by:
Delete all contents of folder path: C:\Program Files\nodejs
and try to run nvm use 16.10.0 again.

Related

How to install Stencil-CLI for BigCommerce properly

I want to install Stencil-CLI for BigCommerce and got this error list:
Command failed: git submodule update -q --init --recursive
I'm using node version 12.22.9 (I've also tried version 22.7 and 22.8, but the issue was present there too); nvm version is 0.36.0.
Reinstalling nvm and/or node didn't help.
To solve this problem, just wait for response from git repo, and then it will fix itself (I just went home, and the next day I just ran this command again)

why is nvm (for windows) not working and whenever it runs it gives an error message?

nvm (for windows https://github.com/coreybutler/nvm-windows)
I have downloaded the nvm-setup and installed it, but whenever it runs it gives an error message.
I've tried to reinstall the nvm, reset the PATH environment variable and install version 1.1.6, and non of it seems to be working.
NVM_HOME points to my nvm file correctly and it's in the PATH.
C:\Users>nvm --version
Running version 1.1.7.
C:\Users>nvm list
12.3.1
C:\Users>nvm use 12.3.1
exit status 1: 'D:\Program' ���O�����Υ~���R�O�B�i���檺�{���Χ妸�ɡC
This happend when you install nvm in a directory that have spaces in the name, for example: C:\Program Files
Change the install directory for nvm and it solved.
In my case, I also had to install the node in another location without spaces in path
C:\Program Files\nodejs -> C:\nodejs
Try cmd with administrator privileges

bash: nodemon command not found windows 10

I spent a lot of time looking for a solution, but didn't find anything (with my case) So...
I checked global packages npm list -g --depth=0 and got
But when I went to the folder C:\Users\Sergey\AppData\Roaming\npm\node_modules, there was no nodemon
I know this question has already existed. Please, help me anyone...
I found a solution (in my case).
All you need is to add C:\Users\Sergey\AppData\Roaming\npm and C:\usr\local (of course with your file paths npm and local) to System variables (Control Panel\System and Security\System\Advanced system settings).
And after that restart your PC
Have you tried re-installing nodemon?
npm i -g nodemon#latest
If that too does not work, try installing nodemon in your project, dont't save it as dependency though.
Also you may to remove node folder and install nodeJS again

Uncaught Error: Module did not self-register

I try to use node-vlc with nw.js (v0.12.0-alpha2). When i launch my app without nw.js it works, but when i launch it with nw.js i got an error:
Uncaught Error: Module did not self-register.", source: /home/alexis/Bureau/dev/jukebox/node_modules/vlc/node_modules/ffi/node_modules/bindings/bindings.js (84)
I tried some commands with nw-gyp but it couldn't help me.
I am on Ubuntu 14, 64-bit.
If you've upgraded node then npm rebuild might fix this for you
For me:
rm -r node_modules then
npm install
I had a similar issue with another product and my fix was to change the version of node I was using. I was using 0.12.0 and changed back to 0.10.26.
Personally, I use NVM to handle node version changing. With NVM installed it's as simple as running
nvm use 0.10.26
Or setting the default version to 0.10.26
nvm alias default 0.10.26
Hopefully this helps you out - our issues came from different products but the solution may be the same.
I had similar problem.
/Users/user/NodeAddons/bridge/node_modules/bindings/bindings.js:83
Error: Module did not self-register.
In my case I was doing a C/C++ Add-on, and I had forgotten to export the add-on, in my main.cc was missing the code below:
void Init(v8::Handle<v8::Object> exports) {
NODE_SET_METHOD(exports, "method", method);
}
NODE_MODULE(method, Init);
Hope this helps others!
Thanks :)
I've add the same issue because I installed to modules as sudo...
Removing the node modules folder and reinstalling as normal user fixed it.
For me npm rebuild or npm update didn't work. I had to remove the node_modules folder and run npm install to install them again.
I once had this problem when creating a multi-file c++ addon. In my binding.gyp file I had:
"sources": ["src/*.cc", "src/*.h" ]
And my project contained several *.cc files. However, the NODE_MODULE() macro was called only on one file which imported the rest of the files. But node expects that it is called on the frist *.cc file listed in sources. So I had to change sources to explicitly add that file to the beginning
For me, running npm update worked
I was getting an internal error: Module did not self-register.
Deleted the node_modules folder
ran npm install
It worked just fine.
I had this error with Snappy. Was using Node 11. Checked Snappy's NPM page https://www.npmjs.com/package/snappy where they listed which versions of node they supported.
Deleting node_modules folder rm -rf node_modules and then reinstalling using the correct version of Node resolved it.
One of the versions they supported on Linux at the time of this writing was Node version 12.
nvm deactivate 11
nvm uninstall 11
nvm install 12
nvm use 12
Problem solved
Another cause of this problem: if you're using pm2, then after upgrading node you may need to reinstall pm2. Test whether pm2 is the issue by running your app
without pm2 node server.js
then with pm2: pm2 start server.js.
Proper way to update PM2 after updating Node.js
I had this same issue with 0.12 and io.js 1.3.0, reverting to Node.js 0.10 fixed the issue.
Rebuild your C++ add-ons.
Did you encounter something like this?
Module did not self-register: '…\node_modules\#u4\opencv4nodejs\build\Release\opencv4nodejs.node
It’s likely that you have just updated your Node.js. Once you updated your Node.js, you need to rebuild your C++ add-ons, Node.js packages written in C++.
Why
When you build Node.js’ C++ add-ons, they get compiled into require-able .node files and linked to the currently installed Node.js ABI library, which is not compatible with other versions of it. Your packages were built only compatible with the specific version of Node.js.
How
Firstly, try npm rebuild. If your C++-add-on-based packages have a build script, it’ll do. If it doesn’t, you need to manually build your C++ native add-on packages. Do again what you did when you were installing such packages. Refer to the building instructions in the packages’ documentations to rebuild them. Or try reinstalling (npm install) them.
I had the same problem. My script that was referencing a global reference script had an invalid reference. I took off that invalid reference and the error was gone. My error message had no indication of that particular invalid reference which made it harder to debug. But 'Uncaught Error: Module did not self-register' was the message I was getting.
This also happen in my other project. For some reason, it wouldn't recognize the reference path if one of the characters are uppercase. Even thought, the upper-casing was the correct spelling of the path.
I had this issue while setting up my Cypress project.
I found out the issue was caused because Cypress uses node from its bundle version by default (which was version 8.0 in my case) , whilst the package I wanted to use required the node version to be 10 or higher.
I did have node 12.0 installed on my machine but since cypress was not using that I had to add the line shown below in the settings file (cypress.json) to set the value for 'nodeVersion' to 'system', to tell cypress explicitly to use the node version installed on my machine.
Add this line to your settings file:
**"nodeVersion": "system"**

nvm node.js use version not working

I am trying to install node.js using NVM tool (LINK to NVM)
I have Linux Mint 17 cinnamon
I have follower instructions on nvm page and everything went fine except when I run :
nvm use 0.10
it works while I am logged in on computer. When I restart computer I cannot access node shell in termninal (it says I need to install node with apt-get etc) and it works again only when I type nvm use which is annoying.
Is this normal behaviour or I am doing something wrong or there is some other problem?
Thanks,
Ivan
This is normal behaviour, but you can put nvm use 0.10 in .bashrc to avoid typing it all the time.

Categories