这似乎是一个奇怪的错误。我尝试逐行调试本机代码,但这个错误似乎突然发生,就像在函数调用结束时一样。这似乎是由我正在使用的本机库中的某些代码部分引起的,因为如果我删除一些函数调用,这个错误似乎消失了。
节点版本:12.16.3 节点gyp版本:6.1.0
顺便说一句,我正在使用 nvm。如果这有帮助。
在搜索了 omp_get_max_threads 之后,我尝试将 -fopenmp 添加到 binding.gyp 文件中的编译器标志中,就像这样。
{
"targets": [{
"target_name": "custom_addon",
"cflags!": [ "-fno-exceptions" ],
"cflags_cc!": [ "-fno-exceptions" ],
"cflags": ["-fopenmp"],
"cflags_cc": ["-fopenmp"],
"sources": [
"custom_addon.cpp"
],
'include_dirs': [
"<!@(node -p \"require('node-addon-api').include\")",
"${workspaceRoot}"
],
'libraries': [],
'dependencies': [
"<!(node -p \"require('node-addon-api').gyp\")"
]
}]
}
尽管如此,问题仍然存在。顺便说一句,我使用的是 node-addon-api 包,而不是直接使用 n-api。