mscdex / mmmagic

An async libmagic binding for node.js for detecting content types by data inspection
MIT License
618 stars 49 forks source link

not able to install mmmagic #153

Closed shah20 closed 3 years ago

shah20 commented 3 years ago

Hi tried many thing but not able to install mmmagic. Why does it need Visual studio? D:\Tries>npm i nan npm notice created a lockfile as package-lock.json. You should commit this file. npm WARN mimetypechecks@1.0.0 No description npm WARN mimetypechecks@1.0.0 No repository field.

D:\Tries>npm i mmmagic

mmmagic@0.5.3 install D:\Tries\node_modules\mmmagic node-gyp rebuild

D:\Tries\node_modules\mmmagic>if not defined npm_config_node_gyp (node "C:\Program Files\nodejs\node_modules\npm\node_modules\npm-lifecycle\node-gyp-bin\....\node_modules\node-gyp\bin\node-gyp.js" rebuild ) else (node "C:\Program Files\nodejs\node_modules\npm\node_modules\node-gyp\bin\node-gyp.js" rebuild ) gyp ERR! find VS gyp ERR! find VS msvs_version not set from command line or npm config gyp ERR! find VS VCINSTALLDIR not set, not running in VS Command Prompt gyp ERR! find VS could not use PowerShell to find Visual Studio 2017 or newer gyp ERR! find VS looking for Visual Studio 2015 gyp ERR! find VS - not found gyp ERR! find VS not looking for VS2013 as it is only supported up to Node.js 8 gyp ERR! find VS gyp ERR! find VS ** gyp ERR! find VS You need to install the latest version of Visual Studio gyp ERR! find VS including the "Desktop development with C++" workload. gyp ERR! find VS For more information consult the documentation at: gyp ERR! find VS https://github.com/nodejs/node-gyp#on-windows gyp ERR! find VS ** gyp ERR! find VS gyp ERR! configure error gyp ERR! stack Error: Could not find any Visual Studio installation to use gyp ERR! stack at VisualStudioFinder.fail (C:\Program Files\nodejs\node_modules\npm\node_modules\node-gyp\lib\find-visualstudio.js:121:47) gyp ERR! stack at C:\Program Files\nodejs\node_modules\npm\node_modules\node-gyp\lib\find-visualstudio.js:74:16 gyp ERR! stack at VisualStudioFinder.findVisualStudio2013 (C:\Program Files\nodejs\node_modules\npm\node_modules\node-gyp\lib\find-visualstudio.js:351:14) gyp ERR! stack at C:\Program Files\nodejs\node_modules\npm\node_modules\node-gyp\lib\find-visualstudio.js:70:14 gyp ERR! stack at C:\Program Files\nodejs\node_modules\npm\node_modules\node-gyp\lib\find-visualstudio.js:372:16 gyp ERR! stack at C:\Program Files\nodejs\node_modules\npm\node_modules\node-gyp\lib\util.js:54:7 gyp ERR! stack at C:\Program Files\nodejs\node_modules\npm\node_modules\node-gyp\lib\util.js:33:16 gyp ERR! stack at ChildProcess.exithandler (child_process.js:310:5) gyp ERR! stack at ChildProcess.emit (events.js:310:20) gyp ERR! stack at maybeClose (internal/child_process.js:1021:16) gyp ERR! System Windows_NT 10.0.19041 gyp ERR! command "C:\Program Files\nodejs\node.exe" "C:\Program Files\nodejs\node_modules\npm\node_modules\node-gyp\bin\node-gyp.js" "rebuild" gyp ERR! cwd D:\Tries\node_modules\mmmagic gyp ERR! node -v v12.16.3 gyp ERR! node-gyp -v v5.1.0 gyp ERR! not ok npm WARN mimetypechecks@1.0.0 No description npm WARN mimetypechecks@1.0.0 No repository field.

npm ERR! code ELIFECYCLE npm ERR! errno 1 npm ERR! mmmagic@0.5.3 install: node-gyp rebuild npm ERR! Exit status 1 npm ERR! npm ERR! Failed at the mmmagic@0.5.3 install script. npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR! A complete log of this run can be found in: npm ERR! C:\Users\Rushabh Shah\AppData\Roaming\npm-cache_logs\2020-09-18T06_37_40_346Z-debug.log

D:\Tries>

mscdex commented 3 years ago

It needs a proper build environment because it's a compiled addon (written in C++), not just plain javascript.

I should note that you don't necessarily need a full Visual Studio installation. You should be able to use something like the windows-build-tools npm package to install just what you need to build node addons like mmmagic.

shah20 commented 3 years ago

Okay, @mscdex thanks, otherwise I was going to install Visual Studio. you save lot of my time 👍