在节点10中使用ifxnjs混淆安装错误

问题描述 投票:3回答:1

在官方节点上运行项目的npm install:10 docker image退出并出现令人困惑的构建错误。我可以提供其他细节,但我不知道什么是相关的。

../src/odbc.cpp: In static member function 'static v8::Local<v8::Value> ODBC::GetSQLError(SQLSMALLINT, SQLHANDLE, char*)':
../src/odbc.cpp:1184:87: error: no matching function for call to 'v8::Object::SetPrototype(v8::Local<v8::Value>)'
       objError->SetPrototype(Exception::Error(Nan::New(errorMessage).ToLocalChecked()));
                                                                                       ^
In file included from ../src/odbc.cpp:21:0:
/root/.node-gyp/10.15.3/include/node/v8.h:3442:37: note: candidate: v8::Maybe<bool> v8::Object::SetPrototype(v8::Local<v8::Context>, v8::Local<v8::Value>)
   V8_WARN_UNUSED_RESULT Maybe<bool> SetPrototype(Local<Context> context,
                                     ^~~~~~~~~~~~
/root/.node-gyp/10.15.3/include/node/v8.h:3442:37: note:   candidate expects 2 arguments, 1 provided
make: *** [Release/obj.target/ifx_njs_bind/src/odbc.o] Error 1
ifx_njs_bind.target.mk:113: recipe for target 'Release/obj.target/ifx_njs_bind/src/odbc.o' failed
make: Leaving directory '/usr/src/app/node_modules/ifxnjs-aa64/build'

已解决:通过切换到sails-informix而不是sails-informix2的项目依赖项,docker构建完成且没有错误。构建安装ifxnjs而不是“ifxnjs-aa64”。

几个月前,作者似乎分叉了一些模块。我之前没有安装过这些,所以我没有意识到这些差异。

node.js informix
1个回答
1
投票

我很想知道docker VM平台。 NPM for Linux64,Win64和ARM已经提供了Informix node.js 10.x驱动程序,如果您在其中一个平台上,那么您不需要本地构建的驱动程序本机组件。由于某种原因,它启动了Informix node.js驱动程序本机组件的本地构建,(本地构建需要比通常的驱动程序安装更多的设置)。如果您不打算进行本地构建,那么您可以调查环境启动构建的原因,而不仅仅是从NPM包管理器中获取二进制文件。您是否可以尝试仅安装Informix node.js驱动程序,可以使用以下命令来完成。

npm install ifxnjs

一旦驱动程序安装成功,那么您可以执行“npm install”,无论出于何种原因,您都在试用它。

© www.soinside.com 2019 - 2024. All rights reserved.