Forum: Compiler & IDEs Linux, ARM, Cross-Compile, Programm läuft nicht


von Thomas B. (thomasb)


Lesenswert?

Hallo !

Ich habe ein kleines Problem beim Compilieren eines simplen 
Testprogrammes auf meinem Linux Board.
(Handelt sich um ein Taskit.de Modul mit einem AT91SAM9261 + eigenem 
"Basisboard")

Das Erstellen des Kernels und meiner eigenen Treiber und Module für die 
ganze Peripherie funktioniert inzwischen einwandfrei.
Jetzt wollte ich mal ein kleines Testprogramm schreiben und auf dem 
Board laufen lassen.
Das Compilieren an sich macht keine Probleme (hab inzwischen mein 
Testprogramm auf das absolute Minimum abgespeckt, int main(void) { 
return 0; })
Starte ich das Programm dann aber am Linux-Board, erhalte ich bei diesem 
Programm die Fehlermeldung:
./AppTest: ./AppTest: 1: Syntax error: word unexpected (expecting ")")

Beim anfänglich vorgesehen Testprogramm (wo ich so Dinge wie den 
Framebuffer, I2C Bausteine usw. auf User-Ebene testen wollte) erhielt 
ich sogar einen "Segmentation fault"

Hab jetzt schon einige Zeit im Internet nach einer Lösung gesucht aber 
bisher noch nichts konkretes gefunden. Ich vermute aber, dass es 
vielleicht irgendwas mit den vom Compiler eingebundenen Libraries zu tun 
hat. Dagegen spricht allerdings, dass ich inzwischen auch schon direkt 
das makefile vom Kernel zur Erstellung der Applikation benutzt habe. Es 
wird auch brav ein File ausgespuckt aber mit dem selben Verhalten wie 
zuvor beschrieben.

Da mir inzwischen nicht mehr viel einfällt wo ich noch schauen oder was 
ich probieren könnte, frag ich mal hier nach.
Sollten noch zusätzlich Informationen benötigt werden (Ausgaben des 
Compilers usw.) bitte einfach schreibn.

Schöne Grüße,
Thomas B.

von Thomas B. (thomasb)


Lesenswert?

Hallo nochmal.

Hab die Lösung gefunden. Sie lag ganz wo anders als vermutet.

Mein rootfs liegt auf einer SD-Karte (ro gemountet) und die Programme 
kopiere ich per ftp aufs System. Habe nun das Programm schon vorher 
"extern" auf die SD gelegt und siehe da es läuft.
Der Fehler war nun der, dass mein FTP-Programm (FileZilla) als 
Transfertyp auf automatisch gestellt war und hier scheinbar die Files 
als Text übertragen hat. Somit ist dann auch klar wie diese 
Fehlermeldung entsteht. Nachdem ich fix auf binär umgestellt habe 
funktioniert es endlich.

Schöne Grüße,
Thomas B.

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.