Wie kompiliere ich ein Paket für die CCU?

Homematic-, TCL- und Shell-Script, Toolchain, C, etc.

Moderator: Co-Administratoren

Antworten
ostpol
Beiträge: 16
Registriert: 15.02.2011, 19:28
Wohnort: Chemnitz

Wie kompiliere ich ein Paket für die CCU?

Beitrag von ostpol » 08.07.2011, 07:54

Guten Morgen,

da mein letzter Beitrag bisher wenig Resonanz finden konnte, starte ich einen neuen Thread, der mir hoffentlich den gewünschten Erfolg bringt. Da auf eQ3 in Sachen Dokumentation und Information kein Verlass ist, stehe ich mit der Toolchain und wenig erfahrung ziemlich allein da.

Ich habe irgendein Paket. Nennen wir es net-snmp-5.6.1.1. Dieses Paket soll auf einer Debian-Maschine, auf der ich die Toolchain bereits installierte, für die CCU kompiliert werden. Natürlich funktioniert das mit einem einfach make nicht. Im Mikrocontroller.net-Forum bekam ich diesen Hinweis:
Zum Vorgehen:

net-snmpd-Quelltext entpacken, configure mit richtigem --host und
buildroot (=Toolkit) Compiler, make.
Tjoar. Wie lautet der richtige --host? Wie sage ich beim make, dass die Toolchain genutzt werden soll? Fragen, die mir eQ3 so nicht beantworten kann. Ich hoffe ihr könnt das.


Danke und ein schönes Wochenende,
Tony

dirch
Beiträge: 579
Registriert: 24.10.2008, 03:26
Hat sich bedankt: 1 Mal
Danksagung erhalten: 2 Mal

Re: Wie kompiliere ich ein Paket für die CCU?

Beitrag von dirch » 08.07.2011, 14:16

ostpol hat geschrieben: Tjoar. Wie lautet der richtige --host? Wie sage ich beim make, dass die Toolchain genutzt werden soll? Fragen, die mir eQ3 so nicht beantworten kann. Ich hoffe ihr könnt das.
--host=arm-linux

Wichtig ist dass die binaries zum cross compilen im Pfad liegen, bei mir hat die toolchain die nach /usr/local/arm-linux/bin/ kopiert.

Wenn Du arm-linux-gcc aufrufst sollte das etwas so aussehen:

Code: Alles auswählen

dirch@compiler:~$ arm-linux-gcc
arm-linux-gcc: no input files
Gruss,
Dirch
Neun von zehn Stimmen in meinen Kopf sagen ich bin nicht verrückt. Die andere summt die Melodie von Tetris . ...

ostpol
Beiträge: 16
Registriert: 15.02.2011, 19:28
Wohnort: Chemnitz

Re: Wie kompiliere ich ein Paket für die CCU?

Beitrag von ostpol » 08.07.2011, 14:22

Grandios!

Brauche ich außer --host noch mehr oder kann ich so zumindest erstmal die configure-Geschichte abhaken?

Edit:

Wenn ich versuche arm-linux-gcc auszuführen, wird das Kommando nicht gefunden.

Hier die Ausgabe:

Code: Alles auswählen

arm-linux-addr2line  [b]arm-linux-gcc[/b]        arm-linux-objdump           arm-linux-uclibc-ar       arm-linux-uclibc-gcc-3.3.6  arm-linux-uclibc-ranlib
arm-linux-ar         arm-linux-gcc-3.3.6  arm-linux-ranlib            arm-linux-uclibc-as       arm-linux-uclibc-gccbug     arm-linux-uclibc-readelf
arm-linux-as         arm-linux-gccbug     arm-linux-readelf           arm-linux-uclibc-c++      arm-linux-uclibc-gcov       arm-linux-uclibc-size
arm-linux-c++        arm-linux-gcov       arm-linux-size              arm-linux-uclibc-cc       arm-linux-uclibc-gdb        arm-linux-uclibc-sstrip
arm-linux-cc         arm-linux-gdb        arm-linux-sstrip            arm-linux-uclibc-c++filt  arm-linux-uclibc-ld         arm-linux-uclibc-strings
arm-linux-c++filt    arm-linux-ld         arm-linux-strings           arm-linux-uclibc-cpp      arm-linux-uclibc-nm         arm-linux-uclibc-strip
arm-linux-cpp        arm-linux-nm         arm-linux-strip             arm-linux-uclibc-g++      arm-linux-uclibc-objcopy    c_rehash
arm-linux-g++        arm-linux-objcopy    arm-linux-uclibc-addr2line  arm-linux-uclibc-gcc      arm-linux-uclibc-objdump    openssl
ctlehner@csi-cl51:/usr/local/arm-linux/bin$ arm-linux-gcc
-bash: arm-linux-gcc: command not found
ctlehner@csi-cl51:/usr/local/arm-linux/bin$
arm-linux-gcc ist aber da. :?

dirch
Beiträge: 579
Registriert: 24.10.2008, 03:26
Hat sich bedankt: 1 Mal
Danksagung erhalten: 2 Mal

Re: Wie kompiliere ich ein Paket für die CCU?

Beitrag von dirch » 08.07.2011, 16:00

ostpol hat geschrieben: Brauche ich außer --host noch mehr oder kann ich so zumindest erstmal die configure-Geschichte abhaken?
Das haengt ganz vom configure script ab, daher laesst sich die Frage nicht beantworten ohne es sich anzuschauen.
ostpol hat geschrieben: Wenn ich versuche arm-linux-gcc auszuführen, wird das Kommando nicht gefunden.
Wie ich schon schrieb:
dirch hat geschrieben: Wichtig ist dass die binaries zum cross compilen im Pfad liegen
Neun von zehn Stimmen in meinen Kopf sagen ich bin nicht verrückt. Die andere summt die Melodie von Tetris . ...

ostpol
Beiträge: 16
Registriert: 15.02.2011, 19:28
Wohnort: Chemnitz

Re: Wie kompiliere ich ein Paket für die CCU?

Beitrag von ostpol » 11.07.2011, 12:12

Wichtig ist dass die binaries zum cross compilen im Pfad liegen
Vermutlich bin ich einfach im komplett falschen Pfad. In Pfad wovon müssen die Binaries liegen?

dirch
Beiträge: 579
Registriert: 24.10.2008, 03:26
Hat sich bedankt: 1 Mal
Danksagung erhalten: 2 Mal

Re: Wie kompiliere ich ein Paket für die CCU?

Beitrag von dirch » 11.07.2011, 12:47

Mit im Pfad liegen meinte ich die Umgebungsvariable PATH, siehe z.B. hier: http://www.oreilly.de/german/freebooks/ ... p0310.html oder http://linuxwiki.de/PATH
Neun von zehn Stimmen in meinen Kopf sagen ich bin nicht verrückt. Die andere summt die Melodie von Tetris . ...

ostpol
Beiträge: 16
Registriert: 15.02.2011, 19:28
Wohnort: Chemnitz

Re: Wie kompiliere ich ein Paket für die CCU?

Beitrag von ostpol » 12.07.2011, 08:05

Guten Morgen dirch,

das hat mir schon ein wenig weiter geholfen. Tippe ich nun arm-linux-gcc, bekomme ich das "gewollte" no input files.

Nun habe ich mein net-snmp-Paket mit ./configure --host=arm-linux und make verwurstet. Wie geht's weiter? Ich war der Meinung, dass die beiden Schritte input files für arm-linux-gcc generieren. Tun sie aber offensichtlich nicht. :?

-------------------------------------------------------------------------------------------------------------------------------------------
Edit: Okay, make kompiliert schon, welche Rolle spielt dann arm-linux-gcc?

Edit 2: Ist make CROSS=arm-linux-gcc ein Anhaltspunkt?

Edit 3: Gerade fand ich diese Seite, auf der beschrieben wird, wie man net-snmp generell für embedded Systeme kompiliert. Hier bin ich auf --with-cc gestoßen. Gebe ich beim ./configure --with-cc=arm-linux-gcc an, endet das arg schnell:

Code: Alles auswählen

configure: error: in `/home/c/tmp/net-snmp-5.6.1.1':
configure: error: C compiler cannot create executables
Okay, das lag am PATH.
-------------------------------------------------------------------------------------------------------------------------------------------

Irgendwie sieht das alles nach Fortschritt aus. Das motiviert. Danke dirch. :)

ostpol
Beiträge: 16
Registriert: 15.02.2011, 19:28
Wohnort: Chemnitz

Re: Wie kompiliere ich ein Paket für die CCU?

Beitrag von ostpol » 15.07.2011, 07:38

Leider muss ich jetzt zum Doppelpost greifen. :?

Hat sonst noch jemand eine Idee bzw. kann mir jemand sagen, wie es weiter geht?



Danke,
Tony

ostpol
Beiträge: 16
Registriert: 15.02.2011, 19:28
Wohnort: Chemnitz

Re: Wie kompiliere ich ein Paket für die CCU?

Beitrag von ostpol » 27.07.2011, 14:32

Sollte ich kenen SNMP Daemon als Quelle finden, die ich mir umkompilieren kann, hat sich das hier vermutlich eh erledigt.

Ein Versuch war es wert.


Danke.

ostpol
Beiträge: 16
Registriert: 15.02.2011, 19:28
Wohnort: Chemnitz

Re: Wie kompiliere ich ein Paket für die CCU?

Beitrag von ostpol » 04.08.2011, 19:49

Guten Abend,

der Thread kann geschlossen werden. Ich bin kurz davor den mini_snmpd Daemon von Robert Ernst auf der CCU zum Laufen zu bekommen. Vermutlich werde ich eine Anleitung schreiben, die das Vorgehen beschreibt.


Vielen Dank an dirch für die Hilfe.


Bis bald,
Tony

Antworten

Zurück zu „Softwareentwicklung für die HomeMatic CCU“