After cloning, running npm install
or ./tools/presubmit.js
returns an error.
I am running Arch Linux, and my kernel release is 4.12.13-1-ARCH
.
Here are the errors:
npm install
/home/adrien/Git/propel/build/Release/libtensorflow_framework.so
CXX(target) Release/obj.target/tensorflow-binding/src/binding.o
../src/binding.cc: In function ‘napi_value__* HandleGetDevice(napi_env, napi_callback_info)’:
../src/binding.cc:743:50: error: ‘NAPI_AUTO_LENGTH’ was not declared in this scope
nstatus = napi_create_string_utf8(env, device, NAPI_AUTO_LENGTH, &js_device);
^~~~~~~~~~~~~~~~
../src/binding.cc:743:50: note: suggested alternative: ‘NAPI_NO_RETURN’
nstatus = napi_create_string_utf8(env, device, NAPI_AUTO_LENGTH, &js_device);
^~~~~~~~~~~~~~~~
NAPI_NO_RETURN
../src/binding.cc: In function ‘napi_value__* InitBinding(napi_env, napi_value)’:
../src/binding.cc:1049:7: error: ‘NAPI_AUTO_LENGTH’ was not declared in this scope
NAPI_AUTO_LENGTH, // JavasScript class name length
^~~~~~~~~~~~~~~~
../src/binding.cc:1049:7: note: suggested alternative: ‘NAPI_NO_RETURN’
NAPI_AUTO_LENGTH, // JavasScript class name length
^~~~~~~~~~~~~~~~
NAPI_NO_RETURN
In file included from ../src/binding.cc:15:0:
../src/binding.cc: At global scope:
/home/adrien/.node-gyp/8.5.0/include/node/node_api.h:96:5: error: invalid conversion from ‘napi_value__* (*)(napi_env, napi_value) {aka napi_value__* (*)(napi_env__*, napi_value__*)}’ to ‘napi_addon_register_func {aka void (*)(napi_env__*, napi_value__*, napi_value__*, void*)}’ [-fpermissive]
}; \
^
/home/adrien/.node-gyp/8.5.0/include/node/node_api.h:103:3: note: in expansion of macro ‘NAPI_MODULE_X’
NAPI_MODULE_X(modname, regfunc, NULL, 0)
^~~~~~~~~~~~~
../src/binding.cc:1178:1: note: in expansion of macro ‘NAPI_MODULE’
NAPI_MODULE(tensorflow_binding, InitBinding)
^~~~~~~~~~~
make: *** [tensorflow-binding.target.mk:114: Release/obj.target/tensorflow-binding/src/binding.o] Error 1
make: Leaving directory '/home/adrien/Git/propel/build'
./tools/presubmit.js
Extracting libtensorflow_framework.so
/home/adrien/Git/propel/build/Release/libtensorflow_framework.so
clang -c -o Release/binding.o ../src/binding.cc -I/usr/include/node -I/home/adrien/Git/propel -I/home/adrien/Git/propel/deps/libtensorflow/include -Wall -W -Wno-unused-parameter -std=gnu++0x -DNODE_GYP_MODULE_NAME=tensorflow-binding -DUSING_UV_SHARED=1 -DUSING_V8_SHARED=1 -DV8_DEPRECATION_WARNINGS=1 -D_DARWIN_USE_64_BIT_INODE=1 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -DBUILDING_NODE_EXTENSION -m64 -fPIC -pthread
../src/binding.cc:743:50: error: use of undeclared identifier 'NAPI_AUTO_LENGTH'
nstatus = napi_create_string_utf8(env, device, NAPI_AUTO_LENGTH, &js_device);
^
../src/binding.cc:1049:7: error: use of undeclared identifier 'NAPI_AUTO_LENGTH'
NAPI_AUTO_LENGTH, // JavasScript class name length
^
../src/binding.cc:1062:7: error: use of undeclared identifier 'NAPI_AUTO_LENGTH'
NAPI_AUTO_LENGTH, // JavasScript class name length
^
../src/binding.cc:1178:33: error: cannot initialize a member subobject of type 'napi_addon_register_func' (aka 'void (*)(napi_env__ *,
napi_value__ *, napi_value__ *, void *)') with an lvalue of type 'napi_value (napi_env, napi_value)' (aka 'napi_value__ *(napi_env__ *,
napi_value__ *)'): different number of parameters (4 vs 2)
NAPI_MODULE(tensorflow_binding, InitBinding)
^~~~~~~~~~~
/usr/include/node/node_api.h:103:26: note: expanded from macro 'NAPI_MODULE'
NAPI_MODULE_X(modname, regfunc, NULL, 0)
^~~~~~~
/usr/include/node/node_api.h:92:7: note: expanded from macro 'NAPI_MODULE_X'
regfunc, \
^~~~~~~