![18.04 版 NPM 时非法硬件指令(核心转储)崩溃](https://linux22.com/image/1016645/18.04%20%E7%89%88%20NPM%20%E6%97%B6%E9%9D%9E%E6%B3%95%E7%A1%AC%E4%BB%B6%E6%8C%87%E4%BB%A4%EF%BC%88%E6%A0%B8%E5%BF%83%E8%BD%AC%E5%82%A8%EF%BC%89%E5%B4%A9%E6%BA%83.png)
我已经有好几个星期没有使用过 node/npm 了,但今天我却不知道这是从什么时候开始失败的。我正在使用 nodejsv13.10.1
和 npm v6.13.7
,当我尝试安装 npm 依赖项时,我收到错误:
[1] 5035 illegal hardware instruction (core dumped)
为了重现我只需这样做:
$ mkdir myAwesomeFolder
$ npm init -y
$ npm typescript
> BUM!
npm 可能需要我的 CPU 不支持的指令吗?怎么可能?这可能是内核更新的问题吗?我什么都没碰过。
知道如何修复此问题吗?
答案1
我也遇到了同样的问题net-keepalive
。类似这样的模块需要针对每个特定架构进行编译。当我使用 node 8 和 10 时,该模块可以正常工作,但升级到 14 后,我的应用程序开始崩溃
#
# Fatal error in , line 0
# Check failed: result.second.
#
#
#
#FailureMessage Object: 0x7ffed3b1da80
1: 0x55ad9a832af3 [/usr/bin/node]
2: 0x55ad9b277038 V8_Fatal(char const*, ...) [/usr/bin/node]
3: 0x55ad9ac0bd14 v8::internal::GlobalBackingStoreRegistry::Register(std::shared_ptr<v8::internal::BackingStore>) [/usr/bin/node]
4: 0x55ad9a979582 v8::ArrayBuffer::GetBackingStore() [/usr/bin/node]
5: 0x55ad9a774406 napi_get_typedarray_info [/usr/bin/node]
6: 0x7fe23f8cae38 FFI::FFI::InitializeBindings(Napi::Env, Napi::Object) [/myapp/node_modules/net-keepalive/node_modules/ffi-napi/build/Release/ffi_bindings.node]
7: 0x7fe23f8cb6c0 [/myapp/node_modules/net-keepalive/node_modules/ffi-napi/build/Release/ffi_bindings.node]
8: 0x7fe23f8c7bb5 __napi_Init(napi_env__*, napi_value__*) [/myapp/node_modules/net-keepalive/node_modules/ffi-napi/build/Release/ffi_bindings.node]
9: 0x55ad9a7890d4 napi_module_register_by_symbol(v8::Local<v8::Object>, v8::Local<v8::Value>, v8::Local<v8::Context>, napi_value__* (*)(napi_env__*, napi_value__*)) [/usr/bin/node]
10: 0x55ad9a78d4b6 [/usr/bin/node]
11: 0x55ad9a78c75a node::binding::DLOpen(v8::FunctionCallbackInfo<v8::Value> const&) [/usr/bin/node]
12: 0x55ad9a9aae07 v8::internal::FunctionCallbackArguments::Call(v8::internal::CallHandlerInfo) [/usr/bin/node]
13: 0x55ad9a9ab1ce [/usr/bin/node]
14: 0x55ad9a9aba1a [/usr/bin/node]
15: 0x55ad9a9ac376 v8::internal::Builtin_HandleApiCall(int, unsigned long*, v8::internal::Isolate*) [/usr/bin/node]
16: 0x55ad9b1463f9 [/usr/bin/node]
[1] 2623 illegal hardware instruction (core dumped)
因此我将模块更新到最新版本,现在可以工作了。
您是否尝试过清除缓存?
npm cache clear --force