Forum: Mikrocontroller und Digitale Elektronik Treiber installieren unter embedded linux board


von otto W. (auto)


Lesenswert?

Hallo,

ich habe einen Atmel Board mit einem LAN und 2x USB Anschluss. Ich 
möchte gerne einen Gerät der über USB angeschlossenen ist den Treiber 
dazu installieren und später es steuern. Wie kann ich das machen ? Ich 
habe leider keine Ahnung wie ich das hinbiegen soll.
Ich kann mich über Telnet/SHH mich auf dem Embedded Linux Sstem 
anmelden. Desweiteren habe ich einen Virtuell Maschine installiert und 
darauf das Ubunutu Linux. Nun weiß ich nicht mehr weiter könnte mir 
jemand da weiterhelfen ???

Danke im Voraus.

von Mick M. (highlow)


Lesenswert?

Wie wäre es wenn du noch ein paar Informationen/Details liefern würdest.

von otto W. (auto)


Lesenswert?

Wovon...
Es geht um einen Atmel at91rm9200 serie worauf das emblinux Kernel 
2.6.16  läuft und mich über das Netzwerk per PuTTy an das System 
anmelden kann. Nun will ich den Treiber für das über USB angeschlossene 
Gerät (Tellstick -- http://www.telldus.se/) installieren und später 
steuern. Aber direkt auf dem EmbLinux System geht es nicht da einige 
Tools Compiler nicht vorhanden sind bzw. keine Entwicklungsumgebung 
herrscht. Deshalb habe ich auf meinem Windows Rechner einen Virtual 
Mashine installiert darauf dann den Ubuntu Linux. Nun weiß ich nicht 
mehr weiter...

von g457 (Gast)


Lesenswert?

..im Wesentlichen:
- Doku [0] lesen
- Quellen ziehen
- cross compilieren
- Ergebnis rüberschieben auf das Embedded Brett
- zum Laufen kriegen

Ein paar unwesentliche(tm) Details(tm) könnten noch fehlen.

HTH und HF

[0] http://developer.telldus.com/wiki/TellStickInstallationSource

von otto W. (auto)


Lesenswert?

g457 schrieb:
> ..im Wesentlichen:
> - Doku [0] lesen
> - Quellen ziehen
> - cross compilieren
> - Ergebnis rüberschieben auf das Embedded Brett
> - zum Laufen kriegen
>
> Ein paar unwesentliche(tm) Details(tm) könnten noch fehlen.
>
> HTH und HF
>
> [0] http://developer.telldus.com/wiki/TellStickInstallationSource


Die Quellen kann ich ziehen aber danach das cross compilieren kann ich 
irgendwie nicht installieren ??? wie kann ich das ausführen...

von Klaus W. (mfgkw)


Lesenswert?

Du brauchst eine Entwicklungsumgebung für dein Embedded System.
Das wird vermutlich als Crosscompiler auf dem PC laufen (ggf. in deiner 
VM). Hast du sowas?

von otto W. (auto)


Lesenswert?

Klaus Wachtler schrieb:
> Du brauchst eine Entwicklungsumgebung für dein Embedded System.
> Das wird vermutlich als Crosscompiler auf dem PC laufen (ggf. in deiner
> VM). Hast du sowas?

Nein, wie richte ich sowas ein ?

von Mick M. (highlow)


Lesenswert?

Schau dir mal folgendes an -> http://kegel.com/crosstool/

von g457 (Gast)


Lesenswert?

Ad Toolchain: Wenn Du Dir das Leben leicht(er) machen willst (und sonst 
nichts am Hut hast mit Crosscompilieren), dann besorg Dir die Toolchain 
vom Hersteller des Boards (in ∗genau∗ der Version die zu dem Board 
gehört).

von otto W. (auto)


Lesenswert?

g457 schrieb:
> Ad Toolchain: Wenn Du Dir das Leben leicht(er) machen willst (und sonst
> nichts am Hut hast mit Crosscompilieren), dann besorg Dir die Toolchain
> vom Hersteller des Boards (in ∗genau∗ der Version die zu dem Board
> gehört).

Ich habe die toolchain für meinen board gefunden und downgeloadet. Nun 
habe ich es auch entpackt und weiß nicht wie ich es testen kann oder zum 
laufen kriegen kann.
Weiss jemand die nachfolgende schritte wie man vorgehen soll...

von otto W. (auto)


Lesenswert?

Ich habe die nötige toolchain soweit installiert und funktioniert auch. 
Wie kann ich das auf dem Embedded system Board rüber schieben somit man 
es auch funktioniert. Weis jemnad wie ich es machen kann oder dafür tun 
muss... ?

von g457 (Gast)


Lesenswert?

> Weis jemnad wie ich es machen kann

Doku [1] von oben nochmals lesen, adäquat konfigurieren (Kernel, 
Software) und crosscompilieren (Kernel und -module sofern nötig, 
Software). Wenn das erledigt ist, dann kannst Du die Änderungen (Kernel 
und -module sofern nötig, Software - deren Installationsziel hast Du 
beim konfigurieren festgelegt) rüberschieben. Falls Du den Kernel 
geändert hast musst Du den ggf. noch zum booten bringen. Sonst 
einfach(tm) bei der Konfiguration weitermachen. Ggf. Module laden nicht 
vergessen.

[1] http://developer.telldus.com/wiki/TellStickInstallationSource

von otto W. (auto)


Lesenswert?

g457 schrieb:
>> Weis jemnad wie ich es machen kann
>
> Doku [1] von oben nochmals lesen, adäquat konfigurieren (Kernel,
> Software) und crosscompilieren (Kernel und -module sofern nötig,
> Software). Wenn das erledigt ist, dann kannst Du die Änderungen (Kernel
> und -module sofern nötig, Software - deren Installationsziel hast Du
> beim konfigurieren festgelegt) rüberschieben. Falls Du den Kernel
> geändert hast musst Du den ggf. noch zum booten bringen. Sonst
> einfach(tm) bei der Konfiguration weitermachen. Ggf. Module laden nicht
> vergessen.
>
> [1] http://developer.telldus.com/wiki/TellStickInstallationSource

ich habe das Programm (Software) compiliert nun hat er mir etwas 
erstellt aber ich weiss nicht genau was erstellt wurde. Welche Dateien 
erstellt er mir denn nach dem compilieren und welche soll ich 
rüberschieben ?

von g457 (Gast)


Lesenswert?

> Welche Dateien erstellt er mir denn nach dem compilieren und welche soll
> ich rüberschieben ?

Alles was nötig ist :-) Hast Du den Kernel geändert? Falls ja dann 
ebendiesen (Anleitungen dazu gibts beim Boardhersteller). Hast Du 
Kernelmodule geändert? Falls ja dann ebenjene. Für die Software als 
solches: Schau Dir mal das Makefile an, da gibts vermutlich ein Ziel 
'install' o.ä., das kopiert normalerweise(tm) das nötige Zeugs an die 
richtige(tm) Stelle. Also entweder reverse engineeren oder gleich ein 
passendes Verzeichnis wählen (z.B. '/opt/telldus-2.1.1'), lokal 
installieren und dann ebenjenes Verzeichnis rüberschieben. Mglw. 
brauchts noch ein Paar Dateien aus /etc, das sieht man üblicherweise(tm) 
an der Ausgabe von make.

HTH

von otto W. (auto)


Lesenswert?

Hallo,

beim Crosscompilieren make && make install wird mein Cross Kompiler 
nicht benutzt somit kann ich auch die objekte für mein Board erstellen.
Wie kann ich es bei dieser Quelle (Software)
http://download.telldus.se/TellStick/Software/telldus-core/

einstellen das mein cross compiler benutzt wird.

Hat es villeicht mit der Makefile etwas zutun ?
Kann mir jemand weiter helfen ?

Danke!

von Klaus W. (mfgkw)


Lesenswert?

Du wirst vielleicht ein paar Pfade etc. in deiner Shell setzen müssen.

Schon mal nach Doku zu deinem System gesucht?

von otto W. (auto)


Lesenswert?

Klaus Wachtler schrieb:
> Du wirst vielleicht ein paar Pfade etc. in deiner Shell setzen müssen.
>
> Schon mal nach Doku zu deinem System gesucht?

ich habe den Pfad für den cross compiler toolchain schon mittels PATH 
eingestellt. Nur wenn ich den make befehl aufrufe benutzt er nicht 
diese.

von Klaus W. (mfgkw)


Lesenswert?

otto W. schrieb:
> ich habe den Pfad für den cross compiler toolchain schon mittels PATH
> eingestellt.

und zwar wie?

Mach doch mal vor dem make eine set und schau dir die Ausgabe an.

von otto W. (auto)


Lesenswert?

Klaus Wachtler schrieb:
> otto W. schrieb:
>> ich habe den Pfad für den cross compiler toolchain schon mittels PATH
>> eingestellt.
>
> und zwar wie?
>
> Mach doch mal vor dem make eine set und schau dir die Ausgabe an.

export PATH=/home/.../bin:$PATH

meinen Sie set make oder ???

von g457 (Gast)


Lesenswert?

> Wie kann ich es bei dieser Quelle (Software) [..] einstellen das mein
> cross compiler benutzt wird.

Wie üblich(tm) beim Konfigurieren, hier also vmtl. bei cmake [0].

HF

[0] http://www.vtk.org/Wiki/CMake_Cross_Compiling

von otto W. (auto)


Lesenswert?

ich habe jetzt das Problem beim LINKING shared Library telldus-core.so
.../bin../ lib..
.../bin/ld : cannot find -lconfuse
collect2...
make[2] Error1

wie kann ich ihm das beibringen oder was soll ich wo hin kopieren ???
Kann mir jemand weiter helfen?

von g457 (Gast)


Lesenswert?

> .../bin/ld : cannot find -lconfuse

..klingt nach [0]. Schau mal ob die schon mitgeliefert wird mit deiner 
Toolchain. Wenn nicht dann runterladen und passend cross compilieren. 
Falls doch dann die Pfade richtig(tm) setzen.

HTH

[0] http://www.nongnu.org/confuse/

von otto W. (auto)


Lesenswert?

g457 schrieb:
>> .../bin/ld : cannot find -lconfuse
>
> ..klingt nach [0]. Schau mal ob die schon mitgeliefert wird mit deiner
> Toolchain. Wenn nicht dann runterladen und passend cross compilieren.
> Falls doch dann die Pfade richtig(tm) setzen.
>
> HTH
>
> [0] http://www.nongnu.org/confuse/

es wurde nicht mitgeliefert. Ich habe es runtergeladen und in dem 
toolchain Ordner entpackt. Wie kann ich die Pfade setzten ? Oder wohin 
genau muss ich die Ordner anlegen ?

von g457 (Gast)


Lesenswert?

> [..] runtergeladen und in dem toolchain Ordner entpackt.

(Nur) Entpackt? Kommt das schon für genau Dein Target richtig(tm) 
compiliert? Falls nicht dann..

g457 schrub:
> [..] runterladen und passend cross compilieren.
                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

Wenn Du die Bibliothek fertig hast, dann die Pfade richtig(tm) setzen - 
oder adäquat direkt in deine Toolchain integrieren.

von otto W. (auto)


Lesenswert?

Danke g457!

ich habe die compilierte tool versucht auszuführen nun bekomme ich den 
fehler BUS ERROR. Ich muss wahrscheinlich den ftdi_sio modul laden.

Wie kann ich den ftdi_sio moduk kernel kompilieren --> ftdi_sio.ko für 
mein target und was muss ich noch tun um es funtionsfähig zu machen ?

Danke im voraus!

von Oliver J. (skriptkiddy)


Lesenswert?

otto W. schrieb:
> Wie kann ich den ftdi_sio moduk kernel kompilieren --> ftdi_sio.ko für
> mein target und was muss ich noch tun um es funtionsfähig zu machen ?
Ich schätze mal im menuconfig beim Kernelbauen oder separat compilieren 
gegen die Kernelheader.

Gruß Oliver

von otto W. (auto)


Lesenswert?

Oliver J. schrieb:
> otto W. schrieb:
>> Wie kann ich den ftdi_sio moduk kernel kompilieren --> ftdi_sio.ko für
>> mein target und was muss ich noch tun um es funtionsfähig zu machen ?
> Ich schätze mal im menuconfig beim Kernelbauen oder separat compilieren
> gegen die Kernelheader.
>
> Gruß Oliver

ich habe den kernel runtergeladen und versucht es zu kompilieren beim 
eintippen von make menuconfig bekomme ich diese Fehlermeldung.

HOSTCC
scripts/fixdep :1 : syntax error word unexcepted (excepted ")")
make[]

kann mir jemand weiterhelfen?

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.