【问题标题】:node-zopfli error: Failed at the node-zopfli@1.4.0 install scriptnode-zopfli 错误:在 node-zopfli@1.4.0 安装脚本中失败
【发布时间】:2020-06-27 07:45:30
【问题描述】:

将节点版本从 8 升级到 12 时,node-zopfli 安装失败并出现以下错误:

             from ../src/zopfli-binding.cc:1:
            /home/.cache/node-gyp/12.16.1/include/node/v8.h:2672:44: note: candidate: v8::MaybeLocal<v8::Object> v8::Value::ToObject(v8::Local<v8::Context>) const
         V8_WARN_UNUSED_RESULT MaybeLocal<Object> ToObject(
                                        ^~~~~~~~
            /home/.cache/node-gyp/12.16.1/include/node/v8.h:2672:44: note:   candidate expects 1 argument, 0 provided
            In file included from /home/.cache/node-gyp/12.16.1/include/node/v8-internal.h:14:0,
             from /home/.cache/node-gyp/12.16.1/include/node/v8.h:27,
             from /home/.cache/node-gyp/12.16.1/include/node/node.h:63,
             from ../src/zopfli-binding.cc:1:
            /home/.cache/node-gyp/12.16.1/include/node/v8.h:2686:31: note: candidate: v8::Local<v8::Object> v8::Value::ToObject(v8::Isolate*) const
             Local<Object> ToObject(Isolate* isolate) const);
                           ^
            /home/.cache/node-gyp/12.16.1/include/node/v8config.h:328:3: note: in definition of macro ‘V8_DEPRECATED’
 declarator __attribute__((deprecated(message)))
 ^~~~~~~~~~
            /home/.cache/node-gyp/12.16.1/include/node/v8.h:2686:31: note:   candidate expects 1 argument, 0 provided
             Local<Object> ToObject(Isolate* isolate) const);
                           ^
            /home/.cache/node-gyp/12.16.1/include/node/v8config.h:328:3: note: in definition of macro ‘V8_DEPRECATED’
   declarator __attribute__((deprecated(message)))
  ^~~~~~~~~~
../src/zopfli-binding.cc:209:86: error: no matching function for call to ‘v8::Value::ToObject()’
const unsigned char * data = (const unsigned char*)Buffer::Data(inbuffer->ToObject());
                                                                                  ^
In file included from /home/.cache/node-gyp/12.16.1/include/node/node.h:63:0,
             from ../src/zopfli-binding.cc:1:
            /home/.cache/node-gyp/12.16.1/include/node/v8.h:2672:44: note: candidate: 
v8::MaybeLocal<v8::Object> v8::Value::ToObject(v8::Local<v8::Context>) const
  V8_WARN_UNUSED_RESULT MaybeLocal<Object> ToObject(
                                        ^~~~~~~~
            /home/.cache/node-gyp/12.16.1/include/node/v8.h:2672:44: note:   candidate expects 1 argument, 0 provided
 In file included from /home/.cache/node-gyp/12.16.1/include/node/v8-internal.h:14:0,
             from /home/.cache/node-gyp/12.16.1/include/node/v8.h:27,
             from /home/.cache/node-gyp/12.16.1/include/node/node.h:63,
             from ../src/zopfli-binding.cc:1:
            /home/.cache/node-gyp/12.16.1/include/node/v8.h:2686:31: note: candidate: 
v8::Local<v8::Object> v8::Value::ToObject(v8::Isolate*) const
             Local<Object> ToObject(Isolate* isolate) const);
                           ^
            /home/.cache/node-gyp/12.16.1/include/node/v8config.h:328:3: note: in definition of macro ‘V8_DEPRECATED’
  declarator __attribute__((deprecated(message)))
   ^~~~~~~~~~
            /home/.cache/node-gyp/12.16.1/include/node/v8.h:2686:31: note:   candidate expects 1 argument, 0 provided
             Local<Object> ToObject(Isolate* isolate) const);
                           ^
            /home/.cache/node-gyp/12.16.1/include/node/v8config.h:328:3: note: in definition of macro ‘V8_DEPRECATED’
   declarator __attribute__((deprecated(message)))
   ^~~~~~~~~~
            zopfli.target.mk:143: recipe for target 'Release/obj.target/zopfli/src/zopfli-binding.o' failed
            make: *** [Release/obj.target/zopfli/src/zopfli-binding.o] Error 1
            make: Leaving directory '/home/node_modules/node-zopfli/build'
            gyp ERR! build error 
            gyp ERR! stack Error: `make` failed with exit code: 2
            gyp ERR! stack     at ChildProcess.onExit (/home/.nvm/versions/node/v12.16.1/lib/node_modules/npm/node_modules/node-gyp/lib/build.js:194:23)
            gyp ERR! stack     at ChildProcess.emit (events.js:311:20)
            gyp ERR! stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:275:12)
            gyp ERR! System Linux 5.3.0-40-generic
            gyp ERR! command "/home/.nvm/versions/node/v12.16.1/bin/node" "/home/.nvm/versions/node/v12.16.1/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "build" "--fallback-to-build" "--module=/home/node_modules/node-zopfli/lib/binding/node-v72-linux-x64/zopfli.node" "--module_name=zopfli" "--module_path=/home/node_modules/node-zopfli/lib/binding/node-v72-linux-x64"
            gyp ERR! cwd /home/node_modules/node-zopfli
            gyp ERR! node -v v12.16.1
            gyp ERR! node-gyp -v v5.0.5
            gyp ERR! not ok 
            node-pre-gyp ERR! build error 
            node-pre-gyp ERR! stack Error: Failed to execute '/home/.nvm/versions/node/v12.16.1/bin/node /home/.nvm/versions/node/v12.16.1/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js build --fallback-to-build --module=/home/node_modules/node-zopfli/lib/binding/node-v72-linux-x64/zopfli.node --module_name=zopfli --module_path=/home/node_modules/node-zopfli/lib/binding/node-v72-linux-x64' (1)
            node-pre-gyp ERR! stack     at ChildProcess.<anonymous> (/home/node_modules/node-pre-gyp/lib/util/compile.js:83:29)
            node-pre-gyp ERR! stack     at ChildProcess.emit (events.js:311:20)
            node-pre-gyp ERR! stack     at maybeClose (internal/child_process.js:1021:16)
            node-pre-gyp ERR! stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:286:5)
            node-pre-gyp ERR! System Linux 5.3.0-40-generic
            node-pre-gyp ERR! command "/home/.nvm/versions/node/v12.16.1/bin/node" "/home/node_modules/.bin/node-pre-gyp" "install" "--fallback-to-build"
            node-pre-gyp ERR! cwd /home/node_modules/node-zopfli
            node-pre-gyp ERR! node -v v12.16.1
            node-pre-gyp ERR! node-pre-gyp -v v0.6.39
            node-pre-gyp ERR! not ok 
            Failed to execute '/home/.nvm/versions/node/v12.16.1/bin/node /home/.nvm/versions/node/v12.16.1/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js build --fallback-to-build --module=/home/node_modules/node-zopfli/lib/binding/node-v72-linux-x64/zopfli.node --module_name=zopfli --module_path=/home/node_modules/node-zopfli/lib/binding/node-v72-linux-x64' (1)
            zopfli.target.mk:143: recipe for target 'Release/obj.target/zopfli/src/zopfli-binding.o' failedl script
            make: *** [Release/obj.target/zopfli/src/zopfli-binding.o] Error 1
            make: Leaving directory '/home/node_modules/node-zopfli/build'
            gyp ERR! build error 
            gyp ERR! stack Error: `make` failed with exit code: 2
            gyp ERR! stack     at ChildProcess.onExit (/home/.nvm/versions/node/v12.16.1/lib/node_modules/npm/node_modules/node-gyp/lib/build.js:194:23)
            gyp ERR! stack     at ChildProcess.emit (events.js:311:20)
            gyp ERR! stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:275:12)
            gyp ERR! System Linux 5.3.0-40-generic
            gyp ERR! command "/home/.nvm/versions/node/v12.16.1/bin/node" "/home/.nvm/versions/node/v12.16.1/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "build" "--fallback-to-build" "--module=/home/node_modules/node-zopfli/lib/binding/node-v72-linux-x64/zopfli.node" "--module_name=zopfli" "--module_path=/home/node_modules/node-zopfli/lib/binding/node-v72-linux-x64"
            gyp ERR! cwd /home/node_modules/node-zopfli
            gyp ERR! node -v v12.16.1
            gyp ERR! node-gyp -v v5.0.5
            gyp ERR! not ok 
            npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@1.2.11 (node_modules/fsevents):
            npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@1.2.11: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})

            npm ERR! code ELIFECYCLE
            npm ERR! errno 1
            npm ERR! node-zopfli@1.4.0 install: `node-pre-gyp install --fallback-to-build`
            npm ERR! Exit status 1
            npm ERR! 
            npm ERR! Failed at the node-zopfli@1.4.0 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!     /home/.npm/_logs/2020-03-16T07_09_26_729Z-debug.log

它显示缓存问题,在清除缓存后检查并尝试更新相同以及不同的包。尽管如此,同样的问题正在发生。这是由于版本还是其他原因。有什么解决办法吗?

提前致谢。

【问题讨论】:

    标签: node.js package node-modules package.json


    【解决方案1】:

    自从有人问这个问题以来已经有一段时间了,我没有解释,但我确实有一个可能的解决方案:

    试运行:

    npm install -g node-gyp@latest
    npm update node-sass npm update node scripts
    npm rebuild node-sass
    npm install --build-from-source node-zopfli
    rm -rf node_modules
    npm install --save react react-dom react-scripts
    npm rebuild node-sass
    

    现在尝试运行该项目。

    我目前正在处理一个旧项目。不知道为什么它是这样构建的,或者 node-zopfli@1.4.0 是什么,但我现在可以运行该项目。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-11-23
      • 2021-10-14
      • 1970-01-01
      • 2018-10-16
      • 2017-03-29
      • 2020-01-25
      • 2018-11-06
      相关资源
      最近更新 更多