nodejs / help

:sparkles: Need help with Node.js? File an Issue here. :rocket:
1.46k stars 279 forks source link

npm install -g apiconnect error #1989

Closed m-samantha closed 5 years ago

m-samantha commented 5 years ago

I have installed node js v10.16.0 and when I am installing apiconnect toolkit using the command 'npm install -g apiconnect' . I see the below error

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

I have searched many forums , but could not get any solution. please help.

Thanks, samantha.

gireeshpunathil commented 5 years ago

@m-samantha - do you have a debug log that was generated from the npm install script? if so, please can you share?

m-samantha commented 5 years ago

This is the log report generated from the npm install command.

2019-06-20T15_14_23_816Z-debug.log

gireeshpunathil commented 5 years ago

the error message displayed in the log is not very conclusive about what happened with the installation other than the fact that a dependent module appmetrics failed to install.

can you perform:

npm install appmetrics@3.1.3

alone and see what happens?

m-samantha commented 5 years ago

I have run the npm install appmetrics@3.1.3 command and below is the error. image

sam-github commented 5 years ago

https://www.npmjs.com/package/apiconnect claims

Preqrequisites: Node.js version 0.12.0 or version 4.x.

But the install prereq links to https://www.ibm.com/support/knowledgecenter/SSFS6T/com.ibm.apic.toolkit.doc/tapim_cli_install.html which says only 8.x is supported.

Are you sure node 10.x is supported by apiconnect? I thought that post 8.x, the team had moved to different tooling.

Also, what are you using apiconnect for? If you aren't on an IBM supported platform for APIConnect, its possible you are using opensource features, and that those opensource features have more specific CLIs, like https://www.npmjs.com/package/@loopback/cli

m-samantha commented 5 years ago

I have uninstalled nodejs v10.16.0 and installed v8.15.1 as suggested in the api connect installation document, but the error is still the same . I am using apiconnect to create an loopback project. Also windows 7 Enterprise platform is listed in the IBM supported platform for APIConnect. see below the complete logs from the npm install command.

Microsoft Windows [Version 6.1.7601] Copyright (c) 2009 Microsoft Corporation. All rights reserved.

C:\windows\system32>cd "D:\Program Files\nodejs"

C:\windows\system32>D:

D:\Program Files\nodejs>node --version v8.15.1

D:\Program Files\nodejs>npm -v 6.4.1

D:\Program Files\nodejs>npm install -g apiconnect npm WARN deprecated @angular/http@2.4.10: Switch to @angular/common/http - see https ://angular.io/guide/http npm WARN deprecated angular-ui-router@0.2.18: This npm package 'angular-ui-router' h as been renamed to '@uirouter/angularjs'. Please update your package.json. See https ://ui-router.github.io/blog/uirouter-scoped-packages/ npm WARN deprecated samsam@1.1.2: This package has been deprecated in favour of @sin onjs/samsam npm WARN deprecated boom@2.10.1: This version has been deprecated in accordance with the hapi support policy (hapi.im/support). Please upgrade to the latest version to get the best features, bug fixes, and security patches. If you are unable to upgrade at this time, paid support is available for older versions (hapi.im/commercial). npm WARN deprecated cryptiles@2.0.5: This version has been deprecated in accordance with the hapi support policy (hapi.im/support). Please upgrade to the latest version to get the best features, bug fixes, and security patches. If you are unable to upg rade at this time, paid support is available for older versions (hapi.im/commercial) . npm WARN deprecated formatio@1.1.1: This package is unmaintained. Use @sinonjs/forma tio instead npm WARN deprecated hawk@3.1.3: This module moved to @hapi/hawk. Please make sure to switch over as this distribution is no longer supported and may contain bugs and cr itical security issues. npm WARN deprecated hoek@2.16.3: This version has been deprecated in accordance with the hapi support policy (hapi.im/support). Please upgrade to the latest version to get the best features, bug fixes, and security patches. If you are unable to upgrade at this time, paid support is available for older versions (hapi.im/commercial). npm WARN deprecated istanbul@0.3.22: This module is no longer maintained, try this i nstead: npm WARN deprecated npm i nyc npm WARN deprecated Visit https://istanbul.js.org/integrations for other alternative s. npm WARN deprecated json3@3.3.2: Please use the native JSON object instead of JSON 3

npm WARN deprecated minimatch@2.0.10: Please update to minimatch 3.0.2 or higher to avoid a RegExp DoS issue npm WARN deprecated mixin-deep@1.3.1: Critical bug fixed in v2.0.1, please upgrade t o the latest version. npm WARN deprecated set-value@2.0.0: Critical bug fixed in v3.0.1, please upgrade to the latest version. npm WARN deprecated sntp@1.0.9: This module moved to @hapi/sntp. Please make sure to switch over as this distribution is no longer supported and may contain bugs and cr itical security issues. npm WARN deprecated set-value@0.4.3: Critical bug fixed in v3.0.1, please upgrade to the latest version. npm WARN deprecated buildmail@4.0.1: This project is unmaintained npm WARN deprecated coffee-script@1.6.3: CoffeeScript on NPM has moved to "coffeescr ipt" (no hyphen) npm WARN deprecated connect@2.30.2: connect 2.x series is deprecated npm WARN deprecated core-js@2.6.5: core-js@<2.6.8 is no longer maintained. Please, u pgrade to core-js@3 or at least to actual version of core-js@2. npm WARN deprecated cross-spawn-async@2.2.5: cross-spawn no longer requires a build toolchain, use it instead npm WARN deprecated crypto@0.0.3: This package is no longer supported. It's now a bu ilt-in Node module. If you've depended on crypto, you should switch to the one that' s built-in. npm WARN deprecated ecstatic@3.3.1: https://github.com/jfhbrook/node-ecstatic/issues /259 npm WARN deprecated samsam@1.1.3: This package has been deprecated in favour of @sin onjs/samsam npm WARN deprecated gulp-util@3.0.8: gulp-util is deprecated - replace it, following the guidelines at https://medium.com/gulpjs/gulp-util-ca3b1f9f9ac5 npm WARN deprecated node-uuid@1.4.8: Use uuid module instead npm WARN deprecated core-js@2.3.0: core-js@<2.6.8 is no longer maintained. Please, u pgrade to core-js@3 or at least to actual version of core-js@2. npm WARN deprecated ejs@1.0.0: Critical security bugs fixed in 2.5.5 npm WARN deprecated mailcomposer@4.0.1: This project is unmaintained npm WARN deprecated swagger-ui@2.2.10: No longer maintained, please upgrade to swagg er-ui@3. npm WARN deprecated nodemailer@2.7.2: All versions below 4.0.1 of Nodemailer are dep recated. See https://nodemailer.com/status/ npm WARN deprecated samsam@1.3.0: This package has been deprecated in favour of @sin onjs/samsam npm WARN deprecated sprintf@0.1.1: The sprintf package is deprecated in favor of spr intf-js. npm WARN deprecated socks@1.1.9: If using 2.x branch, please upgrade to at least 2.1 .6 to avoid a serious bug with socket data flow and an import issue introduced in 2. 1.0 npm WARN deprecated sprintf@0.1.5: The sprintf package is deprecated in favor of spr intf-js. npm WARN deprecated swagger-ui@2.0.24: No longer maintained, please upgrade to swagg er-ui@3. npm WARN deprecated swagger-client@2.0.36: No longer maintained, please upgrade to s wagger-client@3. npm WARN deprecated natives@1.1.6: This module relies on Node.js's internals and wil l break at some point. Do not use it, and update to graceful-fs@4.x. C:\Users\smachanuru\AppData\Roaming\npm\apic -> C:\Users\smachanuru\AppData\Roaming\ npm\node_modules\apiconnect\bin\cli.js

buffertools@2.1.6 install C:\Users\smachanuru\AppData\Roaming\npm\node_modules\api connect\node_modules\buffertools node-gyp rebuild

C:\Users\smachanuru\AppData\Roaming\npm\node_modules\apiconnect\node_modules\buffert ools>if not defined npm_config_node_gyp (node "D:\Program Files\nodejs\node_modules\ npm\node_modules\npm-lifecycle\node-gyp-bin\....\node_modules\node-gyp\bin\node-gy p.js" rebuild ) else (node "D:\Program Files\nodejs\node_modules\npm\node_modules\n ode-gyp\bin\node-gyp.js" rebuild ) 'node' is not recognized as an internal or external command, operable program or batch file.

heapdump@0.3.14 install C:\Users\smachanuru\AppData\Roaming\npm\node_modules\apico nnect\node_modules\heapdump node-gyp rebuild

C:\Users\smachanuru\AppData\Roaming\npm\node_modules\apiconnect\node_modules\heapdum p>if not defined npm_config_node_gyp (node "D:\Program Files\nodejs\node_modules\npm \node_modules\npm-lifecycle\node-gyp-bin\....\node_modules\node-gyp\bin\node-gyp.j s" rebuild ) else (node "D:\Program Files\nodejs\node_modules\npm\node_modules\node -gyp\bin\node-gyp.js" rebuild ) 'node' is not recognized as an internal or external command, operable program or batch file.

dtrace-provider@0.8.7 install C:\Users\smachanuru\AppData\Roaming\npm\node_modules \apiconnect\node_modules\dtrace-provider node-gyp rebuild || node suppress-error.js

C:\Users\smachanuru\AppData\Roaming\npm\node_modules\apiconnect\node_modules\dtrace- provider>if not defined npm_config_node_gyp (node "D:\Program Files\nodejs\node_modu les\npm\node_modules\npm-lifecycle\node-gyp-bin\....\node_modules\node-gyp\bin\nod e-gyp.js" rebuild ) else (node "D:\Program Files\nodejs\node_modules\npm\node_modul es\node-gyp\bin\node-gyp.js" rebuild ) 'node' is not recognized as an internal or external command, operable program or batch file. 'node' is not recognized as an internal or external command, operable program or batch file.

node-report@2.2.7 install C:\Users\smachanuru\AppData\Roaming\npm\node_modules\api connect\node_modules\node-report node-gyp rebuild

C:\Users\smachanuru\AppData\Roaming\npm\node_modules\apiconnect\node_modules\node-re port>if not defined npm_config_node_gyp (node "D:\Program Files\nodejs\node_modules\ npm\node_modules\npm-lifecycle\node-gyp-bin\....\node_modules\node-gyp\bin\node-gy p.js" rebuild ) else (node "D:\Program Files\nodejs\node_modules\npm\node_modules\n ode-gyp\bin\node-gyp.js" rebuild ) 'node' is not recognized as an internal or external command, operable program or batch file.

sqlite3@3.1.13 install C:\Users\smachanuru\AppData\Roaming\npm\node_modules\apicon nect\node_modules\sqlite3 node-pre-gyp install --fallback-to-build

'node' is not recognized as an internal or external command, operable program or batch file.

appmetrics@3.1.3 install C:\Users\smachanuru\AppData\Roaming\npm\node_modules\apic onnect\node_modules\appmetrics node extract_all_binaries.js || node-gyp rebuild

'node' is not recognized as an internal or external command, operable program or batch file.

C:\Users\smachanuru\AppData\Roaming\npm\node_modules\apiconnect\node_modules\appmetr ics>if not defined npm_config_node_gyp (node "D:\Program Files\nodejs\node_modules\n pm\node_modules\npm-lifecycle\node-gyp-bin\....\node_modules\node-gyp\bin\node-gyp .js" rebuild ) else (node "D:\Program Files\nodejs\node_modules\npm\node_modules\no de-gyp\bin\node-gyp.js" rebuild ) 'node' is not recognized as an internal or external command, operable program or batch file. npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@1.2.9 (node_modules\apiconn ect\node_modules\fsevents): npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@1.2. 9: wanted {"os":"darwin","arch":"any"} (current: {"os":"win32","arch":"x64"}) npm WARN optional SKIPPING OPTIONAL DEPENDENCY: modern-syslog@1.2.0 (node_modules\ap iconnect\node_modules\modern-syslog): npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for modern-syslog @1.2.0: wanted {"os":"!win32","arch":"any"} (current: {"os":"win32","arch":"x64"}) npm WARN optional SKIPPING OPTIONAL DEPENDENCY: buffertools@2.1.6 (node_modules\apic onnect\node_modules\buffertools): npm WARN optional SKIPPING OPTIONAL DEPENDENCY: buffertools@2.1.6 install: node-gyp rebuild npm WARN optional SKIPPING OPTIONAL DEPENDENCY: Exit status 1 npm WARN optional SKIPPING OPTIONAL DEPENDENCY: heapdump@0.3.14 (node_modules\apicon nect\node_modules\heapdump): npm WARN optional SKIPPING OPTIONAL DEPENDENCY: heapdump@0.3.14 install: node-gyp r ebuild npm WARN optional SKIPPING OPTIONAL DEPENDENCY: Exit status 1 npm WARN optional SKIPPING OPTIONAL DEPENDENCY: dtrace-provider@0.8.7 (node_modules\ apiconnect\node_modules\dtrace-provider): npm WARN optional SKIPPING OPTIONAL DEPENDENCY: dtrace-provider@0.8.7 install: node -gyp rebuild || node suppress-error.js npm WARN optional SKIPPING OPTIONAL DEPENDENCY: Exit status 1 npm WARN optional SKIPPING OPTIONAL DEPENDENCY: node-report@2.2.7 (node_modules\apic onnect\node_modules\node-report): npm WARN optional SKIPPING OPTIONAL DEPENDENCY: node-report@2.2.7 install: node-gyp rebuild npm WARN optional SKIPPING OPTIONAL DEPENDENCY: Exit status 1 npm WARN optional SKIPPING OPTIONAL DEPENDENCY: sqlite3@3.1.13 (node_modules\apiconn ect\node_modules\sqlite3): npm WARN optional SKIPPING OPTIONAL DEPENDENCY: sqlite3@3.1.13 install: node-pre-gy p install --fallback-to-build npm WARN optional SKIPPING OPTIONAL DEPENDENCY: Exit status 1

npm ERR! code ELIFECYCLE npm ERR! errno 1 npm ERR! appmetrics@3.1.3 install: node extract_all_binaries.js || node-gyp rebuild npm ERR! Exit status 1 npm ERR! npm ERR! Failed at the appmetrics@3.1.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\smachanuru\AppData\Roaming\npm-cache_logs\2019-06-20T16_27_57 _330Z-debug.log

Also In the logs I see this error

'node' is not recognized as an internal or external command,

I have verified the environment variables and the nodejs path is present

sam-github commented 5 years ago

Use the loopback CLI to create loopback projects, see https://loopback.io/lb3/getting-started or https://loopback.io/doc/en/lb4/Getting-started.html. Use either npm i -g @loopback/cli for LB4, or npm i -g loopback-cli for LB3.

Using apiconnect is the hard way to create Loopback apps, it does do that, but it mostly exists to interact with the APIConnect/APIGateway servers. If you are not an IBM API Gateway customer, I don't think you should be using it (and if you are, then you can access official support channels).

m-samantha commented 5 years ago

we have the APIConnect environment configured on our servers, that is the reason I am trying to install apiconnect using 'npm install' and create loopback apps using apiconnect.

can you please help.

sam-github commented 5 years ago

Sorry, I think I've told you everything I know. I'm not really sure what an "APIConnect environment" is, for example. I still suspect you may just have a Loopback app, and as such, should transition from apiconnect to the loopback CLIs I referenced. If you are actually using APIConnect, then you are an IBM customer and should go through IBM support channels. Your chance of getting help on something so specific to IBM from the opensource community is not great. I'm not sure what else I can suggest.

sam-github commented 5 years ago

Btw, I verified, apiconnect only supports node 8.x, it also has a very old version of LB3 inside it. Using loopback-cli would be better.

smartmouse commented 5 years ago

I tried the latest apiconnect installation, it works fine on my windows 10. I currently do not have any windows 7 to try, but it should work the same. I observed that one of the error you go is "node not recognized in your path", I think something in your node installation/set up may be messing up.

Screen Shot 2019-06-24 at 8 32 08 AM
smartmouse commented 5 years ago

What is your goal here? Do you want to use the latest loopback ? If only for loopback, then @sam-github is correct, the loopback version in apiconnect is still loopback 3.x. If you want to use latest loopback 4.x, you can directly use the loopback-cli for now.

m-samantha commented 5 years ago

"node not recognized in your path" - I have verified that node is part of path in the environment variables , even then I get the error saying node is not recognized. At the time of nodejs installation I did not see any issues.. Is there any way I can check if the nodejs setup is causing any issues.

What is your goal here - we have the APIConnect environment configured on our servers, we have successfully implemented RESTAPI's using API connect . we are now exploring the option of creating the loopback projects using API connect.

smartmouse commented 5 years ago

@m-samantha , do u want to have a web-ex session? Easier to work together to check the environment.

m-samantha commented 5 years ago

Sure , webex would be great . Can youplease setup and send me the link.

On Mon, Jun 24, 2019 at 10:06 AM hohoho notifications@github.com wrote:

@m-samantha https://github.com/m-samantha , do u want to have a web-ex session? Easier to work together to check the environment.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/nodejs/help/issues/1989?email_source=notifications&email_token=AMNCA3E4HI5RMQWVQZDZODTP4DIHJA5CNFSM4HZVCKWKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGODYNBHMY#issuecomment-505025459, or mute the thread https://github.com/notifications/unsubscribe-auth/AMNCA3DNN3TFIRHLU3XY6LLP4DIHJANCNFSM4HZVCKWA .

-- Thanks and Regards, Samantha.

gireeshpunathil commented 5 years ago

I would like to join too. (I am in IST, but don't mind up to 10 PM my time.)

smartmouse commented 5 years ago

@m-samantha which timezone are you in? EST? PST? @gireeshpunathil is in indian timezone, so early morning EST 9:00 EST will be better for him?

smartmouse commented 5 years ago

In the meantime, you can try compare my windows 7 environment. I got a hold of a new windows 7 environment. and this is the node js file I downloaded and then set up installation with the path

Screen Shot 2019-06-24 at 6 17 18 PM

This is my path

Screen Shot 2019-06-24 at 6 25 23 PM

I have installed apiconnect - there were some issues with indirect dependencies of natives modules that requires compilation on the platform since I do not have python installed. BUT apiconnect still completes the installation.

Screen Shot 2019-06-24 at 6 15 44 PM

We also have a tarball available in fix central and you can use the tarball as well. https://ibm.biz/BdzPg9 Open node.js windows ->Run as Administrator

npm i -g apiconnect-4.0.29.tgz.

m-samantha commented 5 years ago

I am in EST time zone, can we have the session at 9:30 EST ? -- Thanks and Regards, Samantha.

smartmouse commented 5 years ago

webex at 9:30 EST https://ibm.webex.com/meet/ivyho

m-samantha commented 5 years ago

I have uninstalled and reinstalled nodejs . This time I have used the nodejs command prompt and was able to install api connect. earlier I was using the regular windows command prompt may be that was my mistake.

image

Thanks a lot everyone for all your help

smartmouse commented 5 years ago

A Pleasure!

gireeshpunathil commented 5 years ago

for posterity:

I was using the regular windows command prompt may be that was my mistake.

that was not the mistake. i) Installing Node without selecting the option to set Node path in the environment variables, ii) executing scripts that expects Node in the execution environment without explicitly setting the PATH in conjunction with (i) , led to the problem.

Either select the option to set Node path in the environment while installing (recommended) or explicitly add the it in the command shell whenever you want to run node programs.