Hexagon / node-telldus

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

telldus-core.h missing #60

Closed NilsOlof closed 10 years ago

NilsOlof commented 10 years ago

I have tried to install on both linux and windows. Both stops at can not find telldus-core.h that is referenced in telldus.c in the node-gyp build process. What am I doing wrong?

Hexagon commented 10 years ago

You need to install telldus-core (the official libs available at telldus site). I think there is a link in the readme.

Solution added 2014-09-16: To get this to work, you'll also need to install libtelldus-core-dev if using ubuntu.

NilsOlof commented 10 years ago

The strange thing is that it is installed in both linux and windows according to instructions in readme. (Just did an extra check)

Hexagon commented 10 years ago

Oh. Hmm, long time since i did a fresh install. Will look into it tomorrow if anyone else doesn't have any pointers to give.

Hexagon commented 10 years ago

Made an successful run on arch linux just now

sudo pacman -S nodejs
sudo yaourt -S telldus-core
npm install node-gyp
git clone https://github.com/Hexagon/node-telldus.git
cd node-telldus
sudo npm install --python=/usr/bin/python2.7 -g

For the reference, arch repos gave me nodejs v0.10.31, and AUR gave me telldus-core 2.1.2

Hexagon commented 10 years ago

Trying on Windows ...

Install node v0.10.31 - http://nodejs.org/download/

To make npm work, manually create npm folder in User\Application Data,

cd C:\Documents and Settings\Hexagon\Application Data
mkdir npm

Install gyp

npm install node-gyp

Install telldus center 2.1.2 from http://download.telldus.se/TellStick/Software/TelldusCenter/ , IMPORTANT: check "Development files" during install.

Install latest version of python 2, i chose 2.7.3 from https://www.python.org/downloads/

Try to install VS 2013 express from http://www.visualstudio.com/en-us/products/visual-studio-express-vs.aspx

Be required to log in with a microsoft account ...

Realise that you need to install 763 000 versions of .net and crap, get slightly pissed off while installing those ...

Try to install VS 2013 again ...

Realise that Windows XP is "too old" for VS2013 ...

Install VS 2010 from http://go.microsoft.com/?linkid=9709949 , SUCCESS!

Restart the computer ...

Wait for more stuff to install ...

Get an error message that isn't related to a microsoft product, now we're talking!

..\telldus.cc(12): fatal error C1083: Cannot open include file: 'telldus-core.h
': No such file or directory [C:\Documents and Settings\Hexagon\Application Data\
npm\node_modules\telldus\build\telldus.vcxproj]

Edit packages.json and binding.gyp , fixing the above message ....

Get a whole heap of other error messages ...

..\telldus.cc(159): error C3861: 'tdGetDeviceId': identifier not found [C:\Docu
ments and Settings\Hexagon\Application Data\npm\node_modules\telldus\build\telldu
s.vcxproj]
..\telldus.cc(160): error C3861: 'tdGetName': identifier not found [C:\Document
s and Settings\Hexagon\Application Data\npm\node_modules\telldus\build\telldus.vc
xproj]
..\telldus.cc(161): error C3861: 'tdGetModel': identifier not found [C:\Documen
ts and Settings\Hexagon\Application Data\npm\node_modules\telldus\build\telldus.v
cxproj]
..\telldus.cc(162): error C3861: 'tdGetProtocol': identifier not found [C:\Docu
ments and Settings\Hexagon\Application Data\npm\node_modules\telldus\build\telldu
s.vcxproj]
..\telldus.cc(164): error C3861: 'tdMethods': identifier not found [C:\Document
s and Settings\Hexagon\Application Data\npm\node_modules\telldus\build\telldus.vc
xproj]
..\telldus.cc(165): error C3861: 'tdGetDeviceType': identifier not found [C:\Do
cuments and Settings\Hexagon\Application Data\npm\node_modules\telldus\build\tell
dus.vcxproj]
..\telldus.cc(166): error C3861: 'tdLastSentCommand': identifier not found [C:\
Documents and Settings\Hexagon\Application Data\npm\node_modules\telldus\build\te
lldus.vcxproj]
..\telldus.cc(170): error C3861: 'tdLastSentValue': identifier not found [C:\Do
cuments and Settings\Hexagon\Application Data\npm\node_modules\telldus\build\tell
dus.vcxproj]
..\telldus.cc(176): error C3861: 'tdReleaseString': identifier not found [C:\Do
cuments and Settings\Hexagon\Application Data\npm\node_modules\telldus\build\tell
dus.vcxproj]
..\telldus.cc(186): error C3861: 'tdGetNumberOfDevices': identifier not found [
C:\Documents and Settings\Hexagon\Application Data\npm\node_modules\telldus\build
\telldus.vcxproj]
..\telldus.cc(186): fatal error C1003: error count exceeds 100; stopping compil
ation [C:\Documents and Settings\Hexagon\Application Data\npm\node_modules\telldu
s\build\telldus.vcxproj]

I give up for now :) The actual issue with telldus-core.h is solved anyhow ...

Hexagon commented 10 years ago

Windows support should be fixed by now, proceeding to testing on other platforms

Hexagon commented 10 years ago

Ubuntu!

sudo apt-get install nodejs npm
npm install gyp
sudo nano /etc/apt/sources.list # ADD deb line from http://developer.telldus.com/wiki/TellStickInstallationUbuntu
wget -q http://download.telldus.se/debian/telldus-public.key -O- | sudo apt-key add -
sudo apt-get update && sudo apt-get install libtelldus-core-dev
git clone https://github.com/Hexagon/node-telldus.git
cd node-telldus
sudo npm install -g

Ah, in Ubuntu/Debian you'll have to install libtelldus-core-dev, then it's working. Closing this now!

NilsOlof commented 10 years ago

Excellent! I don't have time to test right now but will test later. Thanks!