how to determine whether I have 64bit or 32 bit node executable installed?

node.js

node.js Problem Overview


On my windows pc I have nodejs installed. I would like to determine whether it is 64 bit or 32 bit. How can one determine that? I executed

node --help

but that does not seem to have any option to give me the desired information.

node.js Solutions


Solution 1 - node.js

Run this from the command line:

node -p "process.arch"

It will return 'arm', 'arm64', 'ia32', 'mips','mipsel', 'ppc', 'ppc64', 's390', 's390x', 'x32', or 'x64'.

https://nodejs.org/api/process.html#process_process_arch

Solution 2 - node.js

If node is installed and executable you can simply run

c:\> node -p "process"    

and you should see the content of the process variable formatted. There the keys arch and platform indicates your operating system. In the example below it's an Windows 7 x64

{
    title : 'Administrator: C:\\Windows\\System32\\cmd.exe - node  ',
    version : 'v0.10.36',
    moduleLoadList :
    [   'Binding evals',
        ...
        'Binding signal_wrap',
        'NativeModule string_decoder'],
    versions : {
        http_parser : '1.0',
        node : '0.10.36',
        v8 : '3.14.5.9',
        ares : '1.9.0-DEV',
        uv : '0.10.30',
        zlib : '1.2.8',
        modules : '11',
        openssl : '1.0.1l'
    },
    arch : 'x64',
    platform : 'win32',
    argv : ['node'],
    execArgv : [],
    env : {
        ALLUSERSPROFILE : 'C:\\ProgramData',
        HOMEDRIVE : 'C:',
        JAVA_HOME : 'C:\\Program Files\\Java\\jdk1.8.0_05',
        NODEJS : 'C:\\Program Files (x86)\\nodejs\\',
        NUMBER_OF_PROCESSORS : '4',
        OS : 'Windows_NT',
        Path : 'C:\\ProgramData\\Oracle\\Java\\javapath;C:\\Windows\\system32;C:\\Windows;C:\\Windows\\System32\\Wbem;',
        PATHEXT : '.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC;.PY',
        PROCESSOR_ARCHITECTURE : 'AMD64',
        PROCESSOR_IDENTIFIER : 'Intel64 Family 6 Model 42 Stepping 7, GenuineIntel',
        PROCESSOR_LEVEL : '6',
        PROCESSOR_REVISION : '2a07',
        ProgramData : 'C:\\ProgramData',
        ProgramFiles : 'C:\\Program Files', 
        'ProgramFiles(x86)' : 'C:\\Program Files (x86)',
        ProgramW6432 : 'C:\\Program Files',
        PROMPT : '$P$G',
        PUBLIC : 'C:\\Users\\Public',
        PYTHON : 'C:\\Python34',
        SESSIONNAME : 'Console',
        SystemDrive : 'C:',
        SystemRoot : 'C:\\Windows',
        windir : 'C:\\Windows',
        windows_tracing_flags : '3'
    },
    features : {
        ...
    },
    config : {
        ...
    }
}

Solution 3 - node.js

If it's on Windows OS, just go an old-school way.. by using Windows Task Manager.

Here is my attempt:-

Simply run node from command prompt.

This will put node into REPL mode (indicated by > symbol). Now open Task Manager (Ctrl+Shift+Esc) to see node.exe process details. Mine is on Windows 10 64-bit with node 32-bit installed. Make sure you enable 'Platform' column to see 32-bit/64-bit information.

enter image description here

Solution 4 - node.js

in mac

$ node
 > require('os').arch()

in windows

c:\> node
> require('os').arch()

Solution 5 - node.js

Well the way I am suggesting is not at all a good way . You can go over to C: then go to Program Files and search nodejs folder there . If it is found then you are running 64 bit version else check on Program Files (x86) . If it is found there then you are running 32 bit version.

Solution 6 - node.js

This likely doesn't directly solve your problem, as I don't know the best way to get the same behavior on Windows, but using the file command on a Unix or Linux system will tell you the processor architecture of an executable:

$ file `which node`
/usr/local/bin/node: Mach-O 64-bit executable x86_64

If you have Cygwin installed, I'm pretty sure that it provides a file command, or else you could check online for similar programs that work on Windows.

Solution 7 - node.js

Just start node interpreter by running node. then in that, process.env gives a json with all the information you require. My try has a PROCESSOR_ARCHITECTURE: 'AMD64' entry in that.

I also find

ProgramFiles: 'C:\\Program Files', 'ProgramFiles(x86)': 'C:\\Program Files (x86)' ProgramW6432: 'C:\\Program Files'

Solution 8 - node.js

Enter the node REPL using the 'node' command.

The prompt will change to >

Then use the following to get the desired info-

  1. require('process').arch ==> this will give the node architecture version.
  2. require('process').platform ==> this will give the architecture of the compilation platform
  3. require('process').release and require('process').release.libUrl ==> also gives information about the version and achitecture
  4. require('process').config.variables.host_arch ==> this will also give the node architecture version.

Attributions

All content for this solution is sourced from the original question on Stackoverflow.

The content on this page is licensed under the Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) license.

Content TypeOriginal AuthorOriginal Content on Stackoverflow
QuestionruntimeZeroView Question on Stackoverflow
Solution 1 - node.jsChetView Answer on Stackoverflow
Solution 2 - node.jsSven 31415View Answer on Stackoverflow
Solution 3 - node.jsonelaviewView Answer on Stackoverflow
Solution 4 - node.jsHDKView Answer on Stackoverflow
Solution 5 - node.jsmeShaktiView Answer on Stackoverflow
Solution 6 - node.jsjezView Answer on Stackoverflow
Solution 7 - node.jsSiva TummaView Answer on Stackoverflow
Solution 8 - node.jsDebajyoti DuttaView Answer on Stackoverflow