Das Elektor-Forum schließt seine Pforten (siehe auch http://www.elektormagazine.de/forum). Ab Freitag, den 01. März, ist es nicht mehr möglich, sich im Forum einzuloggen. Alle Inhalte des Forums bleiben jedoch bis Ende März noch sichtbar. Am 01. April wird das Forum schließlich komplett geschlossen.

elektor 09-2012 Embedded Linux Teil 3

Postby joef » Mon Oct 01, 2012 12:00 am

Hallo,
unter http://sigusch.com/t59-p193s430-s193s430.php bzw http://sigusch.com/t59-p193s431-s193s431.php habe ich mal als Beispiel Schritt für Schritt aufgeschrieben, wie ich den bootloader und den Kernel kompiliert und auf die SD KArte gebracht habe..

Gruß
Jörg
joef
 
Posts: 26
Joined: Fri Jan 03, 2014 1:56 pm

Postby pingus » Mon Oct 01, 2012 12:00 am

Vielen Dank für die Hilfe - die Doku ist echt klasse!
An den Rechten kann es nicht liegen - ich habe noch mal alles nach Deiner Anleitung wiederholt (als Otto-Normaluser).
Schon beim make clean gibt es Probleme:
tux@tuxmeister:/home/linux/Elektor_Linux_Board/ElektorLinuxBoardDownload_20120509/bootloader/work_1.6.8$ make clean
HOSTCC scripts/basic/fixdep
scripts/basic/fixdep.c: In Funktion »traps«:
scripts/basic/fixdep.c:377:2: Warnung: Dereferenzierung eines Type-Pun-Zeigers verletzt strict-aliasing-Regeln [-Wstrict-aliasing]
scripts/basic/fixdep.c:379:4: Warnung: Dereferenzierung eines Type-Pun-Zeigers verletzt strict-aliasing-Regeln [-Wstrict-aliasing]
/bin/sh: 1: scripts/basic/fixdep: Permission denied
make[3]: *** [scripts/basic/fixdep] Fehler 126
pingus
 
Posts: 20
Joined: Fri Jan 03, 2014 1:56 pm

Postby joef » Tue Oct 02, 2012 12:00 am

Hi pingus,
es liegt schon an den Rechten. Leider ist die user ID in der tar Datei gespeichert. Bei mir war die ID zufällig die selbe wie die meines users joerg. Dein tux user hat scheinbar eine andere ID. Mit dem Kommando id kann man die ID sehen.

Du hast mehrere Möglichkeiten das Problem zu lösen:

-- Lass tar die ID beim auspacken an deinen user anpassen:
tar --owner tux -xzf bootloader.tar.gz

-- Arbeite als root, root darf ja immer zugreifen
sudo su
macht dich zu root.

-- Ändere nachträglich den owner der Dateien
chown -R tux bootloader

Je nach Variante deiner Linux Distribution kann die Syntax abweichen. Mit dem man Kommando bekommst für alle Kommandos eine Erklärung. Zum Beispiel
man tar

Viel Erfolg
Jörg
joef
 
Posts: 26
Joined: Fri Jan 03, 2014 1:56 pm

Postby pingus » Tue Oct 02, 2012 12:00 am

Hallo joef,
vielen Dank für die vielen Tips aber es klappt nicht - selbst als r00th bekomme ich ein
/bin/sh: 1: scripts/basic/fixdep: Permission denied
make[3]: *** [scripts/basic/fixdep] Fehler 126

Übrigens hatte auch mein tux-User die ID 1000 ...
Ich werde jetzt mal noch 'ne Runde googeln und dann doch mit VirtualBox arbeiten (wie im Artikel empfohlen) - da klappt das Kompilieren (mittlerweile).
pingus
 
Posts: 20
Joined: Fri Jan 03, 2014 1:56 pm

Postby pingus » Wed Oct 03, 2012 12:00 am

Bei mir klappt anscheinend das Kopieren des Bootloaders auf die SD-Karte nicht . Kann ich statt "dd" auch einen simplen Kopierbefehl verwenden? In welchem Verzeichnis muss der Bootloader dann sein? Weiteres Problem: Die Partition /dev/sdX2, wo der Booloader hin soll, laesst sich bei mir nicht mounten ... weiss jemand Rat?!
pingus
 
Posts: 20
Joined: Fri Jan 03, 2014 1:56 pm

Postby joef » Wed Oct 03, 2012 12:00 am

Hi pingus,
nein, ein normaler Kopierbefehl geht nicht, weil es auf dieser Partition kein Dateisystem gibt. Weil es kein Dateisystem gibt, läßt sich die Partition auch nicht mounten. dd soll direkt auf die Partition schreiben, ohne Dateisystem und ohne mounten. Bei dir lautet der Befehl (als root)
dd if=src/arch-arm/rom/apex.bin  bs=512 of=/dev/sdX2

Gruß
Jörg
joef
 
Posts: 26
Joined: Fri Jan 03, 2014 1:56 pm

Postby pingus » Thu Oct 04, 2012 12:00 am

Hallo Jörg,
ich habe den Fehler endlich gefunden:
Bei mir war die /home Partition mit der Option "noexec" gemountet (daher hat es auch nur in der virtuellen Maschine funktioniert!) Nach entspr. Editieren von /etc/fstab klappt's jetzt.
Vielen Dank nochmal für die Hilfe!
pingus
 
Posts: 20
Joined: Fri Jan 03, 2014 1:56 pm

Postby pingus » Thu Oct 04, 2012 12:00 am

Hallo Jörg,
in Deiner Doku hast Du die Übertragung mit
picocom --send-cmd "sz -vv" --receive-cmd "rz -vv"  -b 115200 /dev/ttyUSB0
beschrieben - bei mir erscheinen beim Aufruf von
rz
irgendwelche Binärzeichen und ich habe keine Chance das zu übertragende File anzugeben
Liegt das an den Terminal Settings? Interpretation von Escape Sequenzen etc? Welches Terminalprogramm nimmst Du? Wie gibt man eigentlich die Controlsequenz ein?
Gruss
Wolfgang
pingus
 
Posts: 20
Joined: Fri Jan 03, 2014 1:56 pm

Postby joef » Fri Oct 05, 2012 12:00 am

Hi pingus,
auf die mount Option zu kommen ist echt schwer. Gratuliere.
Zum Datei senden: Nachdem rz eingegeben wurde, versucht rz rauszubekommen, welches Protokoll verwendet werden soll. XYZ Modem beherscht es. Dazu werden ein paar Daten an den Sender der Datei geschickt. Das sind die Binärzeichen die du siehst, Bei mir z.B. B0100000023be50

Den Dateinamen kann man erst eingeben, nachdem Strg-A Strg-S gedrückt wurde.

Gruß Jörg
joef
 
Posts: 26
Joined: Fri Jan 03, 2014 1:56 pm

Postby pingus » Fri Oct 05, 2012 12:00 am

Hallo Jörg,

das war wieder eine 100-Punkte Antwort! Vielen Dank.
Die Übertragung mit picocom klappt jetzt prima.
Hinweis:
sudo  apt-get install lrzsz

fehlte (bei mir jedenfalls) noch.
pingus
 
Posts: 20
Joined: Fri Jan 03, 2014 1:56 pm

PreviousNext

Return to Elektor-Mikrocontroller-Forum

Who is online

Users browsing this forum: No registered users and 1 guest