Hexagon / node-telldus

Node bindings for telldus-core
Other
34 stars 10 forks source link

Problems installing after upgrading node 0.10.41 -> 4.2.6 #71

Closed Arkkimaagi closed 8 years ago

Arkkimaagi commented 8 years ago

I'm building a project on Raspberry Pi and Tellstick Duo. I got it working once already, but when continuing forward, I decided to upgrade node from version 0.10.41 to 4.2.6. (As a new module that I wanted to test required node 0.12+ and I could not find a way to upgrade to 0.12)

After the upgrade I'm unable to install the node-telldus.

  1. Updated node, reinstalled everything in my project except telldus module
  2. I installed node-gyp (tried both locally and globally)
  3. Tried to install the telldus module

I keep getting the same error. What am I doing wrong?

arkkis@vatukka ~/valot $ npm install telldus

> telldus@1.0.1 install /home/arkkis/valot/node_modules/telldus
> node-gyp configure build

make: Entering directory '/home/arkkis/valot/node_modules/telldus/build'
  CXX(target) Release/obj.target/telldus/telldus.o
In file included from /home/arkkis/.node-gyp/4.2.6/include/node/node.h:42:0,
                 from ../telldus.cc:9:
/home/arkkis/.node-gyp/4.2.6/include/node/v8.h:336:1: error: expected unqualified-id before ‘using’
/home/arkkis/.node-gyp/4.2.6/include/node/v8.h:469:1: error: expected unqualified-id before ‘using’
/home/arkkis/.node-gyp/4.2.6/include/node/v8.h:852:1: error: expected unqualified-id before ‘using’
../telldus.cc: In function ‘void telldus_v8::RunCallback(uv_work_t*, int)’:
../telldus.cc:751:5: error: ‘Handle’ was not declared in this scope
../telldus.cc:751:17: error: expected primary-expression before ‘>’ token
../telldus.cc:751:19: error: ‘argv’ was not declared in this scope
../telldus.cc: In function ‘void telldus_v8::SyncCaller(const v8::FunctionCallbackInfo<v8::Value>&)’:
../telldus.cc:1049:5: error: ‘Handle’ was not declared in this scope
../telldus.cc:1049:17: error: expected primary-expression before ‘>’ token
../telldus.cc:1049:19: error: ‘argv’ was not declared in this scope
../telldus.cc: At global scope:
../telldus.cc:1121:11: error: variable or field ‘init’ declared void
../telldus.cc:1121:11: error: ‘Handle’ was not declared in this scope
../telldus.cc:1121:24: error: expected primary-expression before ‘>’ token
../telldus.cc:1121:26: error: ‘exports’ was not declared in this scope
../telldus.cc:1138:1: error: ‘init’ was not declared in this scope
telldus.target.mk:86: recipe for target 'Release/obj.target/telldus/telldus.o' failed
make: *** [Release/obj.target/telldus/telldus.o] Error 1
make: Leaving directory '/home/arkkis/valot/node_modules/telldus/build'
gyp ERR! build error
gyp ERR! stack Error: `make` failed with exit code: 2
gyp ERR! stack     at ChildProcess.onExit (/usr/local/lib/node_modules/npm/node_modules/node-gyp/lib/build.js:276:23)
gyp ERR! stack     at emitTwo (events.js:87:13)
gyp ERR! stack     at ChildProcess.emit (events.js:172:7)
gyp ERR! stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:200:12)
gyp ERR! System Linux 4.1.7+
gyp ERR! command "/usr/local/bin/node" "/usr/local/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "configure" "build"
gyp ERR! cwd /home/arkkis/valot/node_modules/telldus
gyp ERR! node -v v4.2.6
gyp ERR! node-gyp -v v3.2.1
gyp ERR! not ok
npm WARN enoent ENOENT: no such file or directory, open '/home/arkkis/valot/node_modules/node-gyp.DELETE/package.json'
npm ERR! Linux 4.1.7+
npm ERR! argv "/usr/local/bin/node" "/usr/local/bin/npm" "install" "telldus"
npm ERR! node v4.2.6
npm ERR! npm  v3.5.3
npm ERR! code ELIFECYCLE

npm ERR! telldus@1.0.1 install: `node-gyp configure build`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the telldus@1.0.1 install script 'node-gyp configure build'.
npm ERR! Make sure you have the latest version of node.js and npm installed.
npm ERR! If you do, this is most likely a problem with the telldus package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR!     node-gyp configure build
npm ERR! You can get information on how to open an issue for this project with:
npm ERR!     npm bugs telldus
npm ERR! Or if that isn't available, you can get their info via:
npm ERR!     npm owner ls telldus
npm ERR! There is likely additional logging output above.

npm ERR! Please include the following file with any support request:
npm ERR!     /home/arkkis/valot/npm-debug.log
Arkkimaagi commented 8 years ago

This is what I got with node 5.5.0

arkkis@vatukka ~/valot-2 $ npm install --save telldus

> telldus@1.0.1 install /home/arkkis/valot-2/node_modules/telldus
> node-gyp configure build

make: Entering directory '/home/arkkis/valot-2/node_modules/telldus/build'
  CXX(target) Release/obj.target/telldus/telldus.o
In file included from /home/arkkis/.node-gyp/5.5.0/include/node/node.h:42:0,
                 from ../telldus.cc:9:
/home/arkkis/.node-gyp/5.5.0/include/node/v8.h:336:1: error: expected unqualified-id before ‘using’
/home/arkkis/.node-gyp/5.5.0/include/node/v8.h:469:1: error: expected unqualified-id before ‘using’
/home/arkkis/.node-gyp/5.5.0/include/node/v8.h:856:1: error: expected unqualified-id before ‘using’
../telldus.cc: In function ‘void telldus_v8::RunCallback(uv_work_t*, int)’:
../telldus.cc:751:5: error: ‘Handle’ was not declared in this scope
../telldus.cc:751:17: error: expected primary-expression before ‘>’ token
../telldus.cc:751:19: error: ‘argv’ was not declared in this scope
../telldus.cc: In function ‘void telldus_v8::SyncCaller(const v8::FunctionCallbackInfo<v8::Value>&)’:
../telldus.cc:1049:5: error: ‘Handle’ was not declared in this scope
../telldus.cc:1049:17: error: expected primary-expression before ‘>’ token
../telldus.cc:1049:19: error: ‘argv’ was not declared in this scope
../telldus.cc: At global scope:
../telldus.cc:1121:11: error: variable or field ‘init’ declared void
../telldus.cc:1121:11: error: ‘Handle’ was not declared in this scope
../telldus.cc:1121:24: error: expected primary-expression before ‘>’ token
../telldus.cc:1121:26: error: ‘exports’ was not declared in this scope
../telldus.cc:1138:1: error: ‘init’ was not declared in this scope
telldus.target.mk:86: recipe for target 'Release/obj.target/telldus/telldus.o' failed
make: *** [Release/obj.target/telldus/telldus.o] Error 1
make: Leaving directory '/home/arkkis/valot-2/node_modules/telldus/build'
gyp ERR! build error
gyp ERR! stack Error: `make` failed with exit code: 2
gyp ERR! stack     at ChildProcess.onExit (/home/arkkis/.nvm/versions/node/v5.5.0/lib/node_modules/npm/node_modules/node-gyp/lib/build.js:270:23)
gyp ERR! stack     at emitTwo (events.js:100:13)
gyp ERR! stack     at ChildProcess.emit (events.js:185:7)
gyp ERR! stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:200:12)
gyp ERR! System Linux 4.1.7+
gyp ERR! command "/home/arkkis/.nvm/versions/node/v5.5.0/bin/node" "/home/arkkis/.nvm/versions/node/v5.5.0/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "configure" "build"
gyp ERR! cwd /home/arkkis/valot-2/node_modules/telldus
gyp ERR! node -v v5.5.0
gyp ERR! node-gyp -v v3.0.3
gyp ERR! not ok
npm WARN EJSONPARSE Failed to parse json
npm WARN EJSONPARSE Trailing comma in object at 10:3
npm WARN EJSONPARSE   },
npm WARN EJSONPARSE   ^
npm WARN EPACKAGEJSON valot-2 No description
npm WARN EPACKAGEJSON valot-2 No repository field.
npm WARN EPACKAGEJSON valot-2 No README data
npm WARN EPACKAGEJSON valot-2 No license field.
npm ERR! Linux 4.1.7+
npm ERR! argv "/home/arkkis/.nvm/versions/node/v5.5.0/bin/node" "/home/arkkis/.nvm/versions/node/v5.5.0/bin/npm" "install" "--save" "telldus"
npm ERR! node v5.5.0
npm ERR! npm  v3.3.12
npm ERR! code ELIFECYCLE

npm ERR! telldus@1.0.1 install: `node-gyp configure build`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the telldus@1.0.1 install script 'node-gyp configure build'.
npm ERR! Make sure you have the latest version of node.js and npm installed.
npm ERR! If you do, this is most likely a problem with the telldus package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR!     node-gyp configure build
npm ERR! You can get their info via:
npm ERR!     npm owner ls telldus
npm ERR! There is likely additional logging output above.

npm ERR! Please include the following file with any support request:
npm ERR!     /home/arkkis/valot-2/npm-debug.log
Arkkimaagi commented 8 years ago

It seems that I had too old gcc and/or c++ versions, I was able to fix those using this information: https://github.com/fivdi/onoff/wiki/Node.js-v4-and-native-addons

I'll close this issue now as it was not the fault of this code. If you wish, you can add this link to tips. Or not. :)