Handle is not a member of V8



  • I tried to setup nodebb locally but encounter these issues:

    '''
    info sharp Detected globally-installed libvips v8.7.4
    info sharp Building from source via node-gyp
    make: Entering directory '/home/jordanly/JordanLy/My Folder/Sydney-Study/Personal project/nodebb/node_modules/sharp/build'
    TOUCH Release/obj.target/libvips-cpp.stamp
    CXX(target) Release/obj.target/sharp/src/common.o
    In file included from ../src/common.cc:27:
    ../src/common.h:78:20: error: ‘Handle’ is not a member of ‘v8’
    78 | bool HasAttr(v8::Handlev8::Object obj, std::string attr);
    | ^~~~~~
    ../src/common.h:78:37: error: expected primary-expression before ‘>’ token
    78 | bool HasAttr(v8::Handlev8::Object obj, std::string attr);
    | ^
    ../src/common.h:78:39: error: ‘obj’ was not declared in this scope
    78 | bool HasAttr(v8::Handlev8::Object obj, std::string attr);
    | ^~~
    ../src/common.h:78:56: error: expected primary-expression before ‘attr’
    78 | bool HasAttr(v8::Handlev8::Object obj, std::string attr);
    | ^~~~
    ../src/common.h:78:60: error: expression list treated as compound expression in initializer [-fpermissive]
    78 | bool HasAttr(v8::Handlev8::Object obj, std::string attr);
    | ^
    ../src/common.h:79:29: error: ‘Handle’ is not a member of ‘v8’
    79 | std::string AttrAsStr(v8::Handlev8::Object obj, std::string attr);
    | ^~~~~~
    ../src/common.h:79:46: error: expected primary-expression before ‘>’ token
    79 | std::string AttrAsStr(v8::Handlev8::Object obj, std::string attr);
    | ^
    ../src/common.h:79:48: error: ‘obj’ was not declared in this scope
    79 | std::string AttrAsStr(v8::Handlev8::Object obj, std::string attr);
    | ^~~
    ../src/common.h:79:65: error: expected primary-expression before ‘attr’
    79 | std::string AttrAsStr(v8::Handlev8::Object obj, std::string attr);
    | ^~~~
    ../src/common.h:80:38: error: ‘Handle’ is not a member of ‘v8’
    80 | std::vector<double> AttrAsRgba(v8::Handlev8::Object obj, std::string attr);
    | ^~~~~~
    ../src/common.h:80:55: error: expected primary-expression before ‘>’ token
    80 | std::vector<double> AttrAsRgba(v8::Handlev8::Object obj, std::string attr);
    | ^
    ../src/common.h:80:57: error: ‘obj’ was not declared in this scope
    80 | std::vector<double> AttrAsRgba(v8::Handlev8::Object obj, std::string attr);
    | ^~~
    ../src/common.h:80:74: error: expected primary-expression before ‘attr’
    80 | std::vector<double> AttrAsRgba(v8::Handlev8::Object obj, std::string attr);
    | ^~~~
    ../src/common.h:81:48: error: ‘Handle’ is not a member of ‘v8’
    81 | template<typename T> v8::Local<T> AttrAs(v8::Handlev8::Object obj, std::string attr) {
    | ^~~~~~
    ../src/common.h:81:65: error: expected primary-expression before ‘>’ token
    81 | template<typename T> v8::Local<T> AttrAs(v8::Handlev8::Object obj, std::string attr) {
    | ^
    ../src/common.h:81:67: error: ‘obj’ was not declared in this scope
    81 | template<typename T> v8::Local<T> AttrAs(v8::Handlev8::Object obj, std::string attr) {
    | ^~~
    ../src/common.h:81:84: error: expected primary-expression before ‘attr’
    81 | template<typename T> v8::Local<T> AttrAs(v8::Handlev8::Object obj, std::string attr) {
    | ^~~~
    ../src/common.h:81:37: warning: variable templates only available with ‘-std=c++14’ or ‘-std=gnu++14’
    81 | template<typename T> v8::Local<T> AttrAs(v8::Handlev8::Object obj, std::string attr) {
    | ^~~~~~
    ../src/common.h:81:89: error: expected ‘;’ before ‘{’ token
    81 | template<typename T> v8::Local<T> AttrAs(v8::Handlev8::Object obj, std::string attr) {
    | ^~
    | ;
    ../src/common.h:84:37: error: ‘Handle’ is not a member of ‘v8’
    84 | template<typename T> T AttrTo(v8::Handlev8::Object obj, std::string attr) {
    | ^~~~~~
    ../src/common.h:84:54: error: expected primary-expression before ‘>’ token
    84 | template<typename T> T AttrTo(v8::Handlev8::Object obj, std::string attr) {
    | ^
    ../src/common.h:84:56: error: ‘obj’ was not declared in this scope
    84 | template<typename T> T AttrTo(v8::Handlev8::Object obj, std::string attr) {
    | ^~~
    ../src/common.h:84:73: error: expected primary-expression before ‘attr’
    84 | template<typename T> T AttrTo(v8::Handlev8::Object obj, std::string attr) {
    | ^~~~
    ../src/common.h:84:26: warning: variable templates only available with ‘-std=c++14’ or ‘-std=gnu++14’
    84 | template<typename T> T AttrTo(v8::Handlev8::Object obj, std::string attr) {
    | ^~~~~~
    ../src/common.h:84:78: error: expected ‘;’ before ‘{’ token
    84 | template<typename T> T AttrTo(v8::Handlev8::Object obj, std::string attr) {
    | ^~
    | ;
    ../src/common.h:87:37: error: ‘Handle’ is not a member of ‘v8’
    87 | template<typename T> T AttrTo(v8::Handlev8::Object obj, int attr) {
    | ^~~~~~
    ../src/common.h:87:54: error: expected primary-expression before ‘>’ token
    87 | template<typename T> T AttrTo(v8::Handlev8::Object obj, int attr) {
    | ^
    ../src/common.h:87:56: error: ‘obj’ was not declared in this scope
    87 | template<typename T> T AttrTo(v8::Handlev8::Object obj, int attr) {
    | ^~~
    ../src/common.h:87:61: error: expected primary-expression before ‘int’
    87 | template<typename T> T AttrTo(v8::Handlev8::Object obj, int attr) {
    | ^~~
    ../src/common.h:84:26: warning: variable templates only available with ‘-std=c++14’ or ‘-std=gnu++14’
    84 | template<typename T> T AttrTo(v8::Handlev8::Object obj, std::string attr) {
    | ^~~~~~
    ../src/common.h:87:70: error: expected ‘;’ before ‘{’ token
    87 | template<typename T> T AttrTo(v8::Handlev8::Object obj, int attr) {
    | ^~
    | ;
    ../src/common.h:93:9: error: ‘Handle’ is not a member of ‘v8’
    93 | v8::Handlev8::Object input, std::vector<v8::Localv8::Object> &buffersToPersist);
    | ^~~~~~
    ../src/common.h:93:26: error: expected primary-expression before ‘>’ token
    93 | v8::Handlev8::Object input, std::vector<v8::Localv8::Object> &buffersToPersist);
    | ^
    ../src/common.h:93:28: error: ‘input’ was not declared in this scope
    93 | v8::Handlev8::Object input, std::vector<v8::Localv8::Object> &buffersToPersist);
    | ^~~~~
    ../src/common.h:93:70: error: expected primary-expression before ‘&’ token
    93 | v8::Handlev8::Object input, std::vector<v8::Localv8::Object> &buffersToPersist);
    | ^
    ../src/common.h:93:71: error: ‘buffersToPersist’ was not declared in this scope
    93 | v8::Handlev8::Object input, std::vector<v8::Localv8::Object> &buffersToPersist);
    | ^~~~~~~~~~~~~~~~
    ../src/common.h:93:87: error: expression list treated as compound expression in initializer [-fpermissive]
    93 | v8::Handlev8::Object input, std::vector<v8::Localv8::Object> &buffersToPersist);
    | ^
    ../src/common.cc:34:8: error: redefinition of ‘bool sharp::HasAttr’
    34 | bool HasAttr(v8::Handlev8::Object obj, std::string attr) {
    | ^~~~~~~
    In file included from ../src/common.cc:27:
    ../src/common.h:78:8: note: ‘bool sharp::HasAttr’ previously defined here
    78 | bool HasAttr(v8::Handlev8::Object obj, std::string attr);
    | ^~~~~~~
    ../src/common.cc:34:20: error: ‘Handle’ is not a member of ‘v8’
    34 | bool HasAttr(v8::Handlev8::Object obj, std::string attr) {
    | ^~~~~~
    ../src/common.cc:34:37: error: expected primary-expression before ‘>’ token
    34 | bool HasAttr(v8::Handlev8::Object obj, std::string attr) {
    | ^
    ../src/common.cc:34:39: error: ‘obj’ was not declared in this scope
    34 | bool HasAttr(v8::Handlev8::Object obj, std::string attr) {
    | ^~~
    ../src/common.cc:34:56: error: expected primary-expression before ‘attr’
    34 | bool HasAttr(v8::Handlev8::Object obj, std::string attr) {
    | ^~~~
    ../src/common.cc:37:15: error: redefinition of ‘std::string sharp::AttrAsStr’
    37 | std::string AttrAsStr(v8::Handlev8::Object obj, std::string attr) {
    | ^~~~~~~~~
    In file included from ../src/common.cc:27:
    ../src/common.h:79:15: note: ‘std::string sharp::AttrAsStr’ previously declared here
    79 | std::string AttrAsStr(v8::Handlev8::Object obj, std::string attr);
    | ^~~~~~~~~
    ../src/common.cc:37:29: error: ‘Handle’ is not a member of ‘v8’
    37 | std::string AttrAsStr(v8::Handlev8::Object obj, std::string attr) {
    | ^~~~~~
    ../src/common.cc:37:46: error: expected primary-expression before ‘>’ token
    37 | std::string AttrAsStr(v8::Handlev8::Object obj, std::string attr) {
    | ^
    ../src/common.cc:37:48: error: ‘obj’ was not declared in this scope
    37 | std::string AttrAsStr(v8::Handlev8::Object obj, std::string attr) {
    | ^~~
    ../src/common.cc:37:65: error: expected primary-expression before ‘attr’
    37 | std::string AttrAsStr(v8::Handlev8::Object obj, std::string attr) {
    | ^~~~
    ../src/common.cc:40:23: error: redefinition of ‘std::vector<double> sharp::AttrAsRgba’
    40 | std::vector<double> AttrAsRgba(v8::Handlev8::Object obj, std::string attr) {
    | ^~~~~~~~~~
    In file included from ../src/common.cc:27:
    ../src/common.h:80:23: note: ‘std::vector<double> sharp::AttrAsRgba’ previously declared here
    80 | std::vector<double> AttrAsRgba(v8::Handlev8::Object obj, std::string attr);
    | ^~~~~~~~~~
    ../src/common.cc:40:38: error: ‘Handle’ is not a member of ‘v8’
    40 | std::vector<double> AttrAsRgba(v8::Handlev8::Object obj, std::string attr) {
    | ^~~~~~
    ../src/common.cc:40:55: error: expected primary-expression before ‘>’ token
    40 | std::vector<double> AttrAsRgba(v8::Handlev8::Object obj, std::string attr) {
    | ^
    ../src/common.cc:40:57: error: ‘obj’ was not declared in this scope
    40 | std::vector<double> AttrAsRgba(v8::Handlev8::Object obj, std::string attr) {
    | ^~~
    ../src/common.cc:40:74: error: expected primary-expression before ‘attr’
    40 | std::vector<double> AttrAsRgba(v8::Handlev8::Object obj, std::string attr) {
    | ^~~~
    ../src/common.cc:50:20: error: redefinition of ‘sharp::InputDescriptor* sharp::CreateInputDescriptor’
    50 | InputDescriptor* CreateInputDescriptor(
    | ^~~~~~~~~~~~~~~~~~~~~
    In file included from ../src/common.cc:27:
    ../src/common.h:92:20: note: ‘sharp::InputDescriptor* sharp::CreateInputDescriptor’ previously defined here
    92 | InputDescriptor* CreateInputDescriptor(
    | ^~~~~~~~~~~~~~~~~~~~~
    ../src/common.cc:51:9: error: ‘Handle’ is not a member of ‘v8’
    51 | v8::Handlev8::Object input, std::vector<v8::Localv8::Object> &buffersToPersist
    | ^~~~~~
    ../src/common.cc:51:26: error: expected primary-expression before ‘>’ token
    51 | v8::Handlev8::Object input, std::vector<v8::Localv8::Object> &buffersToPersist
    | ^
    ../src/common.cc:51:28: error: ‘input’ was not declared in this scope
    51 | v8::Handlev8::Object input, std::vector<v8::Localv8::Object> &buffersToPersist
    | ^~~~~
    ../src/common.cc:51:70: error: expected primary-expression before ‘&’ token
    51 | v8::Handlev8::Object input, std::vector<v8::Localv8::Object> &buffersToPersist
    | ^
    ../src/common.cc:51:71: error: ‘buffersToPersist’ was not declared in this scope
    51 | v8::Handlev8::Object input, std::vector<v8::Localv8::Object> &buffersToPersist
    | ^~~~~~~~~~~~~~~~
    make: *** [sharp.target.mk:184: Release/obj.target/sharp/src/common.o] Error 1
    make: Leaving directory '/home/jordanly/JordanLy/My Folder/Sydney-Study/Personal project/nodebb/node_modules/sharp/build'
    gyp ERR! build error
    gyp ERR! stack Error: make failed with exit code: 2
    gyp ERR! stack at ChildProcess.onExit (/usr/lib/node_modules/npm/node_modules/node-gyp/lib/build.js:194:23)
    gyp ERR! stack at ChildProcess.emit (events.js:321:20)
    gyp ERR! stack at Process.ChildProcess._handle.onexit (internal/child_process.js:275:12)
    gyp ERR! System Linux 5.3.0-29-generic
    gyp ERR! command "/usr/bin/node" "/usr/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
    gyp ERR! cwd /home/jordanly/JordanLy/My Folder/Sydney-Study/Personal project/nodebb/node_modules/sharp
    gyp ERR! node -v v13.7.0
    gyp ERR! node-gyp -v v5.0.5
    gyp ERR! not ok
    npm ERR! code ELIFECYCLE
    npm ERR! errno 1
    npm ERR! sharp@0.21.3 install: (node install/libvips && node install/dll-copy && prebuild-install) || (node-gyp rebuild && node install/dll-copy)
    npm ERR! Exit status 1
    npm ERR!
    npm ERR! Failed at the sharp@0.21.3 install script.
    npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

    npm ERR! A complete log of this run can be found in:
    npm ERR! /home/jordanly/.npm/_logs/2020-02-05T08_20_16_954Z-debug.log
    Error installing dependencies!
    message: Command failed: npm install --production
    stdout: null
    stderr: null
    /home/jordanly/JordanLy/My Folder/Sydney-Study/Personal project/nodebb/src/cli/package-install.js:54
    throw e;
    ^

    Error: Command failed: npm install --production
    at checkExecSyncError (child_process.js:611:11)
    at Object.execSync (child_process.js:647:15)
    at Object.installAll (/home/jordanly/JordanLy/My Folder/Sydney-Study/Personal project/nodebb/src/cli/package-install.js:45:9)
    at Object.<anonymous> (/home/jordanly/JordanLy/My Folder/Sydney-Study/Personal project/nodebb/src/cli/index.js:60:18)
    at Module._compile (internal/modules/cjs/loader.js:1151:30)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:1171:10)
    at Module.load (internal/modules/cjs/loader.js:1000:32)
    at Function.Module._load (internal/modules/cjs/loader.js:899:14)
    at Module.require (internal/modules/cjs/loader.js:1040:19)
    at require (internal/modules/cjs/helpers.js:72:18) {
    status: 1,
    signal: null,
    output: [ null, null, null ],
    pid: 7526,
    stdout: null,
    stderr: null
    }
    '''
    Then after installation, I try to start it, here's the command line result

    ./nodebb start

    Starting NodeBB
    "./nodebb stop" to stop the NodeBB server
    "./nodebb log" to view server output
    "./nodebb help" for more commands

    Lastly, I have tried to find where the forum is running (port 4567, forum.examle.com, etc.) but no luck. Please help me, I followed the installation guide here https://docs.nodebb.org/installing/os/ubuntu/#installing-mongodb


Log in to reply
 

Suggested Topics

| |