Problems when installing on Ubuntu 18.04
Chưa có ai nhận issue này.
Đánh giá
- Độ khó
- 4/5
- Thời gian dự kiến
- 3-5 ngày
- Mức phù hợp với người mới
- 25/100
- Loại issue
- Lỗi
- Độ rõ ràng
- Cần làm rõ
- Mức độ hoạt động
- Đình trệ
- Công nghệ
- javascript, node.js, ubuntu
- Lĩnh vực
- backend, build-system
Hướng nghiên cứu
Bắt đầu bằng cách tái hiện lỗi với npm install, lệnh chạy node-gyp rebuild, trên Ubuntu 18.04, và đọc lib/bindings.cc cùng với các lỗi đã báo cáo liên quan đến node-addon-api và các header của Node. Được xem là hoàn tất khi native addon build thành công và npm install hoàn tất trong môi trường được báo cáo.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
Hi,
I installed
https://www.ubuntuupdates.org/package/core/bionic/universe/base/libhidapi-dev
https://www.ubuntuupdates.org/package/core/bionic/universe/base/libhidapi-hidraw0
https://www.ubuntuupdates.org/package/core/bionic/universe/base/libhidapi-libusb0
Trying to install dependency packages.
Then it throw an exception withe the message of can't find lblas on /user/bin/ld, i believe that was fixed with:
sudo apt-get install libblas-dev liblapack-dev
But now I'm getting this error (which it seem that you fixed here):
https://github.com/nodejs/node-addon-api/issues/173
and
https://github.com/dashersw/brain-bits/blob/master/lib/bindings.cc
, but it doesn't for me ).
npm install
> [email protected] install /home/a-user-name/Projects/testing/brain-bits
> node-gyp rebuild
make: Entering directory '/home/a-user-name/Projects/testing/brain-bits/build'
SOLINK_MODULE(target) Release/obj.target/node_modules/node-addon-api/src/nothing.node
COPY Release/nothing.node
CXX(target) Release/obj.target/emotiv/lib/bindings.o
In file included from /home/a-user-name/Projects/testing/brain-bits/node_modules/node-addon-api/napi.h:1449:0,
from ../lib/bindings.cc:7:
/home/a-user-name/Projects/testing/brain-bits/node_modules/node-addon-api/napi-inl.h: In member function ‘Napi::Value Napi::Function::MakeCallback(napi_value, size_t, napi_value__* const*) const’:
/home/a-user-name/Projects/testing/brain-bits/node_modules/node-addon-api/napi-inl.h:1277:44: error: cannot convert ‘napi_value {aka napi_value__*}’ to ‘napi_async_context {aka napi_async_context__*}’ for argument ‘2’ to ‘napi_status napi_make_callback(napi_env, napi_async_context, napi_value, napi_value, size_t, napi_value__* const*, napi_value__**)’
_env, recv, _value, argc, args, &result);
^
In file included from /usr/include/nodejs/src/node_api.h:15:0,
from /home/a-user-name/Projects/testing/brain-bits/node_modules/node-addon-api/napi.h:4,
from ../lib/bindings.cc:7:
/usr/include/nodejs/src/node_api_types.h:14:16: note: class type ‘napi_value__’ is incomplete
typedef struct napi_value__ *napi_value;
^~~~~~~~~~~~
In file included from /home/a-user-name/Projects/testing/brain-bits/node_modules/node-addon-api/napi.h:1449:0,
from ../lib/bindings.cc:7:
/home/a-user-name/Projects/testing/brain-bits/node_modules/node-addon-api/napi-inl.h: In static member function ‘static void Napi::Error::Fatal(const char*, const char*)’:
/home/a-user-name/Projects/testing/brain-bits/node_modules/node-addon-api/napi-inl.h:1484:37: error: invalid conversion from ‘const char*’ to ‘size_t {aka long unsigned int}’ [-fpermissive]
napi_fatal_error(location, message);
^
/home/a-user-name/Projects/testing/brain-bits/node_modules/node-addon-api/napi-inl.h:1484:37: error: too few arguments to function ‘void napi_fatal_error(const char*, size_t, const char*, size_t)’
In file included from /home/a-user-name/Projects/testing/brain-bits/node_modules/node-addon-api/napi.h:4:0,
from ../lib/bindings.cc:7:
/usr/include/nodejs/src/node_api.h:115:33: note: declared here
NAPI_EXTERN NAPI_NO_RETURN void napi_fatal_error(const char* location,
^~~~~~~~~~~~~~~~
In file included from /home/a-user-name/Projects/testing/brain-bits/node_modules/node-addon-api/napi.h:1449:0,
from ../lib/bindings.cc:7:
/home/a-user-name/Projects/testing/brain-bits/node_modules/node-addon-api/napi-inl.h: In member function ‘bool Napi::CallbackInfo::IsConstructCall() const’:
/home/a-user-name/Projects/testing/brain-bits/node_modules/node-addon-api/napi-inl.h:2020:24: error: ‘napi_is_construct_call’ was not declared in this scope
napi_status status = napi_is_construct_call(_env, _info, &isConstructCall);
^~~~~~~~~~~~~~~~~~~~~~
/home/a-user-name/Projects/testing/brain-bits/node_modules/node-addon-api/napi-inl.h:2020:24: note: suggested alternative: ‘isConstructCall’
napi_status status = napi_is_construct_call(_env, _info, &isConstructCall);
^~~~~~~~~~~~~~~~~~~~~~
isConstructCall
/home/a-user-name/Projects/testing/brain-bits/node_modules/node-addon-api/napi-inl.h: In static member function ‘static napi_value__* Napi::ObjectWrap<T>::ConstructorCallbackWrapper(napi_env, napi_callback_info)’:
/home/a-user-name/Projects/testing/brain-bits/node_modules/node-addon-api/napi-inl.h:2474:24: error: there are no arguments to ‘napi_is_construct_call’ that depend on a template parameter, so a declaration of ‘napi_is_construct_call’ must be available [-fpermissive]
napi_status status = napi_is_construct_call(env, info, &isConstructCall);
^~~~~~~~~~~~~~~~~~~~~~
/home/a-user-name/Projects/testing/brain-bits/node_modules/node-addon-api/napi-inl.h:2474:24: note: (if you use ‘-fpermissive’, G++ will accept your code, but allowing the use of an undeclared name is deprecated)
/home/a-user-name/Projects/testing/brain-bits/node_modules/node-addon-api/napi-inl.h: In constructor ‘Napi::AsyncWorker::AsyncWorker(const Napi::Object&, const Napi::Function&)’:
/home/a-user-name/Projects/testing/brain-bits/node_modules/node-addon-api/napi-inl.h:2684:50: error: cannot convert ‘void (*)(napi_env, void*) {aka void (*)(napi_env__*, void*)}’ to ‘napi_value {aka napi_value__*}’ for argument ‘2’ to ‘napi_status napi_create_async_work(napi_env, napi_value, napi_value, napi_async_execute_callback, napi_async_complete_callback, void*, napi_async_work__**)’
_env, OnExecute, OnWorkComplete, this, &_work);
^
../lib/bindings.cc: In function ‘void Complete(napi_env, napi_status, void*)’:
../lib/bindings.cc:197:67: error: cannot convert ‘napi_value {aka napi_value__*}’ to ‘napi_async_context {aka napi_async_context__*}’ for argument ‘2’ to ‘napi_status napi_make_callback(napi_env, napi_async_context, napi_value, napi_value, size_t, napi_value__* const*, napi_value__**)’
s = napi_make_callback(env, global, callback, 2, argv, &result);
^
In file included from /usr/include/nodejs/src/node_api.h:15:0,
from /home/a-user-name/Projects/testing/brain-bits/node_modules/node-addon-api/napi.h:4,
from ../lib/bindings.cc:7:
/usr/include/nodejs/src/node_api_types.h:14:16: note: class type ‘napi_value__’ is incomplete
typedef struct napi_value__ *napi_value;
^~~~~~~~~~~~
../lib/bindings.cc: In function ‘napi_value__* read(napi_env, napi_callback_info)’:
../lib/bindings.cc:224:96: error: cannot convert ‘void (*)(napi_env, void*) {aka void (*)(napi_env__*, void*)}’ to ‘napi_value {aka napi_value__*}’ for argument ‘2’ to ‘napi_status napi_create_async_work(napi_env, napi_value, napi_value, napi_async_execute_callback, napi_async_complete_callback, void*, napi_async_work__**)’
create_async_work(env, Execute, Complete, &the_carrier, &the_carrier._request);
^
../lib/bindings.cc: In function ‘void CancelComplete(napi_env, napi_status, void*)’:
../lib/bindings.cc:256:74: error: cannot convert ‘napi_value {aka napi_value__*}’ to ‘napi_async_context {aka napi_async_context__*}’ for argument ‘2’ to ‘napi_status napi_make_callback(napi_env, napi_async_context, napi_value, napi_value, size_t, napi_value__* const*, napi_value__**)’
s = napi_make_callback(env, global, callback, 0, nullptr, &result);
^
In file included from /usr/include/nodejs/src/node_api.h:15:0,
from /home/a-user-name/Projects/testing/brain-bits/node_modules/node-addon-api/napi.h:4,
from ../lib/bindings.cc:7:
/usr/include/nodejs/src/node_api_types.h:14:16: note: class type ‘napi_value__’ is incomplete
typedef struct napi_value__ *napi_value;
^~~~~~~~~~~~
../lib/bindings.cc: In function ‘napi_value__* TestCancel(napi_env, napi_callback_info)’:
../lib/bindings.cc:284:106: error: cannot convert ‘void (*)(napi_env, void*) {aka void (*)(napi_env__*, void*)}’ to ‘napi_value {aka napi_value__*}’ for argument ‘2’ to ‘napi_status napi_create_async_work(napi_env, napi_value, napi_value, napi_async_execute_callback, napi_async_complete_callback, void*, napi_async_work__**)’
BusyCancelComplete, &async_carrier[i], &async_carrier[i]._request);
^
../lib/bindings.cc:298:98: error: cannot convert ‘void (*)(napi_env, void*) {aka void (*)(napi_env__*, void*)}’ to ‘napi_value {aka napi_value__*}’ for argument ‘2’ to ‘napi_status napi_create_async_work(napi_env, napi_value, napi_value, napi_async_execute_callback, napi_async_complete_callback, void*, napi_async_work__**)’
CancelComplete, &async_carrier[0], &async_carrier[0]._request);
^
In file included from /home/a-user-name/Projects/testing/brain-bits/node_modules/node-addon-api/napi.h:4:0,
from ../lib/bindings.cc:7:
../lib/bindings.cc: At global scope:
/usr/include/nodejs/src/node_api.h:96:5: error: invalid conversion from ‘void (*)(napi_env, napi_value, napi_value, void*) {aka void (*)(napi_env__*, napi_value__*, napi_value__*, void*)}’ to ‘napi_addon_register_func {aka napi_value__* (*)(napi_env__*, napi_value__*)}’ [-fpermissive]
}; \
^
/usr/include/nodejs/src/node_api.h:103:3: note: in expansion of macro ‘NAPI_MODULE_X’
NAPI_MODULE_X(modname, regfunc, NULL, 0) // NOLINT (readability/null_usage)
^~~~~~~~~~~~~
../lib/bindings.cc:334:1: note: in expansion of macro ‘NAPI_MODULE’
NAPI_MODULE(addon, Init)
^~~~~~~~~~~
In file included from /home/a-user-name/Projects/testing/brain-bits/node_modules/node-addon-api/napi.h:1449:0,
from ../lib/bindings.cc:7:
/home/a-user-name/Projects/testing/brain-bits/node_modules/node-addon-api/napi-inl.h: In static member function ‘static void Napi::Error::Fatal(const char*, const char*)’:
/home/a-user-name/Projects/testing/brain-bits/node_modules/node-addon-api/napi-inl.h:1485:1: warning: ‘noreturn’ function does return
}
^
emotiv.target.mk:105: recipe for target 'Release/obj.target/emotiv/lib/bindings.o' failed
make: *** [Release/obj.target/emotiv/lib/bindings.o] Error 1
make: Leaving directory '/home/a-user-name/Projects/testing/brain-bits/build'
gyp ERR! build error
gyp ERR! stack Error: `make` failed with exit code: 2
gyp ERR! stack at ChildProcess.onExit (/usr/share/node-gyp/lib/build.js:258:23)
gyp ERR! stack at emitTwo (events.js:126:13)
gyp ERR! stack at ChildProcess.emit (events.js:214:7)
gyp ERR! stack at Process.ChildProcess._handle.onexit (internal/child_process.js:198:12)
gyp ERR! System Linux 4.15.0-45-generic
gyp ERR! command "/usr/bin/node" "/usr/bin/node-gyp" "rebuild"
gyp ERR! cwd /home/a-user-name/Projects/testing/brain-bits
gyp ERR! node -v v8.10.0
gyp ERR! node-gyp -v v3.6.2
gyp ERR! not ok
the same happens with your other project
I just bougth the emotiv but i can't make it work :(
- Ngôn ngữ chính
- JavaScript
- Star
- 187
- Fork
- 23
- Chỉ số merge pull request
- Không có pull request nào được merge trong 30 ngày
Chuẩn bị môi trường
Dự án này không cung cấp dev container, Dockerfile hay hướng dẫn đóng góp, nên bạn cần tự thiết lập môi trường: hãy bắt đầu từ README và xem hướng dẫn đóng góp lần đầu của chúng tôi để biết các bước chung.
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của dashersw/brain-bits
-
How to use the appĐang mở
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 25/100
dashersw/brain-bits#4 · 5 bình luận ·
Tất cả issue của dashersw/brain-bits
Issue tương tự
-
JS/TS: JSX props compile errors should link to a doc page explaining the static-list requirementĐang mởarea: js-runtime enhancement exists-upstream interop priority: low
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 78/100
shayanhabibi/fickl#307 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
editor good first issue
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 82/100
webarkit/webarkit-studio#16 ·
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 82/100
superdesigndev/treg#1324 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 72/100
entur/iteru-3dbus#48 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 85/100
pigeon189/zcode-fox-widget#17 · 1 bình luận ·