Problem installera telldus-core med cmake i ubuntu 9.10

Moderator: Telldus

Post Reply
Hjtrakfö
Posts: 27
Joined: Fri Mar 17, 2023 9:45 am

Problem installera telldus-core med cmake i ubuntu 9.10

Post by Hjtrakfö »

Jag försöker installera telldus-core för att kunna skriva nåra små C-snuttar på en ubuntu9.10 server. Jag följer anvisningen i Wikin "TellStick installation - Linux"

Har kommit till kommandoraden:

cmake -DBUILD_LIBTELLDUS-CORE=0 -DBUILD_TDTOOL=0 -DBUILD_RFCMD_WITH_LIBFTDI=0 .

Det blir ett fel som jag inte lyckas googla upp nån lösning på:

CMake Error at /usr/share/cmake-2.6/Modules/FindQt4.cmake:640 (MESSAGE):
Could NOT find QtCore header
Call Stack (most recent call first):
telldus-service/service/CMakeLists.txt:1 (FIND_PACKAGE)

Lite hjälp på vägen vore tacksamt!
micke.prag
Site Admin
Posts: 2243
Joined: Fri Mar 17, 2023 9:45 am
Location: Lund
Contact:

Post by micke.prag »

Installera Qt4-core devpaket. Kanske heter libqt4-core-dev?
Micke Prag
Software
Telldus Technologies
micke.prag
Site Admin
Posts: 2243
Joined: Fri Mar 17, 2023 9:45 am
Location: Lund
Contact:

Post by micke.prag »

Ska du skriva egna program rekommenderar jag dig att kompilera telldus-core och inte rfcmd. Du kan läsa dokumentationen till telldus-core:
http://developer.telldus.se/doxygen/
Micke Prag
Software
Telldus Technologies
Hjtrakfö
Posts: 27
Joined: Fri Mar 17, 2023 9:45 am

Post by Hjtrakfö »

Jag försöker följa er instruktion på
http://developer.telldus.se/wiki/TellSt ... 0-%20Linux

Det är telldus-core jag försöker få installerat, det verkar som att det är det som instruktionen beskriver?
Jag har redan libqt4-core, men efter din post letade jag upp libqt4-dev också (146MB!).
Jag är mest van att använda plain make, så jag gör detta rätt brain dead efter instruktionen. Nu gick iaf. cmake steget igenom, ska försöka make imorgon.

Tack så länge!
micke.prag
Site Admin
Posts: 2243
Joined: Fri Mar 17, 2023 9:45 am
Location: Lund
Contact:

Post by micke.prag »

Till cmake skickar du in DBUILD_LIBTELLDUS-CORE=0 vilket specifikt säger till att inte bygga telldus-core. Hur hittade du till guiden? Det är nämligen en rätt gammal guide.

För att bygga telldus-core kan du följa:
http://developer.telldus.se/wiki/TellSt ... tionSource

Fungerar inte våra binära paket eller vad är anledningen till att du bygger själv?
Micke Prag
Software
Telldus Technologies
Hjtrakfö
Posts: 27
Joined: Fri Mar 17, 2023 9:45 am

Post by Hjtrakfö »

Ja, jag är kanske ute i helt fel skidspår.
Tog för givet att jag måste bygga ett lib från källkod.
Det jag vill göra är att bygga vidare på ert C++exempel som så:

Code: Select all

 int intNumberOfDevices = tdGetNumberOfDevices();
 for (int i = 0; i < intNumberOfDevices; i++) {
   int id = tdGetDeviceId( index );
   char *name = tdGetName( id );
   printf("%d\t%s\n", id, name);
   tdReleaseString(name);
 }

Vill bara kunna länka detta, har inget skäl att bygga för några egna varianter på lågnivåfunktioner eller så.

Jag hittade troligen bygg-guiden med search på nåt nyckelord i forumet.
micke.prag
Site Admin
Posts: 2243
Joined: Fri Mar 17, 2023 9:45 am
Location: Lund
Contact:

Post by micke.prag »

Eftersom du kör Ubuntu så räcker det att installera libtelldus-core-dev så har du vad du behöver.
Micke Prag
Software
Telldus Technologies
Hjtrakfö
Posts: 27
Joined: Fri Mar 17, 2023 9:45 am

Post by Hjtrakfö »

Ah, var det så det hette! har provat förut med att hitta nåra varianter på telldus-core men prickade inte rätt.

#include heter alltså </usr/include/telldus-core.h>, vad heter lib?

(Tänkte använda C under gcc)
micke.prag
Site Admin
Posts: 2243
Joined: Fri Mar 17, 2023 9:45 am
Location: Lund
Contact:

Post by micke.prag »

Include ska bara vara:

Code: Select all

#include <telldus-core.h>
för att vara plattformsoberoende. Hittar inte kompilatorn headern så skicka istället in en path med -I

Biblioteket heter telldus-core så att kompilera ditt program skulle kunne ske såhär:

Code: Select all

gcc main.cpp -o programnamn -ltelldus-core
alternativt:

Code: Select all

gcc main.cpp -o programnamn -I/usr/include -ltelldus-core
Micke Prag
Software
Telldus Technologies
Hjtrakfö
Posts: 27
Joined: Fri Mar 17, 2023 9:45 am

Post by Hjtrakfö »

Utmärkt, tack!
Nu funkar det i gammaldags C också.

Code: Select all

#include <stdio.h>
#include <telldus-core.h>
int NumberOfDevices, i, id ;
char *name;

main()
{
NumberOfDevices = tdGetNumberOfDevices();

for (i = 0; i < NumberOfDevices; i++)
{
   id = tdGetDeviceId(i);
   name = tdGetName(id);
   printf("%d\t%s\n", id, name);
   tdReleaseString(name);
 }
}

Post Reply