В MacOS 10.14 Mojave невозможно установить модуль `newrelic` Node.js - PullRequest
0 голосов
/ 16 ноября 2018

После обновления до MacOS 10.14 Mojave, похоже, что установка модуля Node.js newrelic (версия 4.11.0) не удалась.

Давайте создадим проект:

$ mkdir test-newrelic
$ cd test-newrelic/
$ npm init
$ npm init --yes

Теперь давайте установим модуль newrelic:

$ npm install --save newrelic

> @newrelic/native-metrics@3.1.2 install /Users/<user>/Sources/test-newrelic/node_modules/@newrelic/native-metrics
> node ./lib/pre-build.js install native_metrics

> /Users/<user>/.nvm/versions/node/v6.14.4/bin/node /Users/<user>/.nvm/versions/node/v6.14.4/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js clean configure
gyp WARN download NVM_NODEJS_ORG_MIRROR is deprecated and will be removed in node-gyp v4, please use NODEJS_ORG_MIRROR
gyp WARN download NVM_NODEJS_ORG_MIRROR is deprecated and will be removed in node-gyp v4, please use NODEJS_ORG_MIRROR
> /Users/<user>/.nvm/versions/node/v6.14.4/bin/node /Users/<user>/.nvm/versions/node/v6.14.4/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js build -j 4 native_metrics
gyp WARN download NVM_NODEJS_ORG_MIRROR is deprecated and will be removed in node-gyp v4, please use NODEJS_ORG_MIRROR
CXX(target) Release/obj.target/native_metrics/src/native_metrics.o
CXX(target) Release/obj.target/native_metrics/src/GCBinder.o
CXX(target) Release/obj.target/native_metrics/src/LoopChecker.o
CXX(target) Release/obj.target/native_metrics/src/RUsageMeter.o
warningwarning: : warningwarninginclude: include:   pathpath  forfor  stdlibc++stdlibc++includeinclude    headerspathheaderspath    notfornotfor    found;stdlibc++found;stdlibc++    passpassheadersheaders    '-std=libc++''-std=libc++'notnot    onfound;onfound;   thethepass   commandcommand'-std=libc++'   linelineon   totothe   useusecommand   thetheline   libc++libc++to   standardstandarduse   librarylibrarythe  insteadinstead  [-Wstdlibcxx-not-found][-Wstdlibcxx-not-found]

pass '-std=libc++' on  the libc++command  standardline  libraryto  insteaduse  [-Wstdlibcxx-not-found]the
libc++ standard library instead [-Wstdlibcxx-not-found]
In file included from ../src/RUsageMeter.cpp:../src/LoopChecker.cpp../src/GCBinder.cpp2:::2210::
:10 :../src/GCBinder.hpp :fatal error3: :fatal error10: :'cstring'  'algorithm'file  fatal errorfilenot:   notfound 'map'found
file
not found
#include <cstring>#include <algorithm>
#include <map>

^~~~~~~~~         ^~~~~~~~~~~
^~~~~

In file included from ../src/native_metrics.cpp:2:
In file included from ../../../nan/nan.h:52:
In file included from /Users/<user>/.node-gyp/6.14.4/include/node/node.h:42:
/Users/<user>/.node-gyp/6.14.4/include/node/v8.h:21:10: fatal error: 'utility' file not found
#include <utility>
^~~~~~~~~
1 warning and 1 error generated.
1 warning and 1 error generated.
1 warning and 1 error generated.
1 warning and 1 error generated.
make: *** [Release/obj.target/native_metrics/src/RUsageMeter.o] Error 1
make: *** Waiting for unfinished jobs....
make: *** [Release/obj.target/native_metrics/src/native_metrics.o] Error 1
make: *** [Release/obj.target/native_metrics/src/LoopChecker.o] Error 1
make: *** [Release/obj.target/native_metrics/src/GCBinder.o] Error 1
gyp ERR! build error
gyp ERR! stack Error: `make` failed with exit code: 2
gyp ERR! stack     at ChildProcess.onExit (/Users/<user>/.nvm/versions/node/v6.14.4/lib/node_modules/npm/node_modules/node-gyp/lib/build.js:276:23)
gyp ERR! stack     at emitTwo (events.js:106:13)
gyp ERR! stack     at ChildProcess.emit (events.js:191:7)
gyp ERR! stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:219:12)
gyp ERR! System Darwin 18.2.0
gyp ERR! command "/Users/<user>/.nvm/versions/node/v6.14.4/bin/node" "/Users/<user>/.nvm/versions/node/v6.14.4/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "build" "-j" "4" "native_metrics"
gyp ERR! cwd /Users/<user>/Sources/test-newrelic/node_modules/@newrelic/native-metrics
gyp ERR! node -v v6.14.4
gyp ERR! node-gyp -v v3.4.0
gyp ERR! not ok
Error: Failed to execute install: Error: Failed to install module: Error: Failed to execute /Users/<user>/.nvm/versions/node/v6.14.4/bin/node /Users/<user>/.nvm/versions/node/v6.14.4/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js build -j 4 native_metrics: code 1; Error: Failed to download https://download.newrelic.com/nodejs_agent/builds/_newrelic_native_metrics-3_1_2-native_metrics-48-darwin-x64.gz: code 404
test-newrelic@1.0.0 /Users/<user>/Sources/test-newrelic
└─┬ newrelic@4.11.0
├─┬ @newrelic/koa@1.0.7
│ └── methods@1.1.2
├── @newrelic/superagent@1.0.0
├── @tyriar/fibonacci-heap@2.0.8
├─┬ async@2.6.1
│ └── lodash@4.17.11
├─┬ concat-stream@1.6.2
│ ├── buffer-from@1.1.1
│ ├── inherits@2.0.3
│ └── typedarray@0.0.6
├─┬ https-proxy-agent@2.2.1
│ ├─┬ agent-base@4.2.1
│ │ └─┬ es6-promisify@5.0.0
│ │   └── es6-promise@4.2.5
│ └─┬ debug@3.2.6
│   └── ms@2.1.1
├── json-stringify-safe@5.0.1
├─┬ readable-stream@2.3.6
│ ├── core-util-is@1.0.2
│ ├── isarray@1.0.0
│ ├── process-nextick-args@2.0.0
│ ├── safe-buffer@5.1.2
│ ├── string_decoder@1.1.1
│ └── util-deprecate@1.0.2
└── semver@5.6.0

npm WARN test-newrelic@1.0.0 No description
npm WARN test-newrelic@1.0.0 No repository field.
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: @newrelic/native-metrics@3.1.2 (node_modules/@newrelic/native-metrics):
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: @newrelic/native-metrics@3.1.2 install: `node ./lib/pre-build.js install native_metrics`
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: Exit status 1

Кажется, что Node-gyp не может найти заголовки.

1 Ответ

0 голосов
/ 14 июля 2019

Я исправил это, зайдя на сайт: https://developer.apple.com/download/more/ и скачал Инструменты командной строки macOS 10.13 для Xcode 10

После установки инструментов командной строкипопробуйте выполнить sudo xcode-select -r (-r означает сброс)

...