Hello World läuft nicht

OP #1796542
Lesenswert?

Ich versuche ein sehr simples Hello World auf meinem Grasshopper zum 
laufen zu bringen.
1
#include <stdlib.h>
2
#include <stdio.h>
3

4
int main() {
5
   printf("Hello World");
6
   return 0;
7
}

Ich hab die toolchain unter debian installiert, mit AVR32 Studio das 
Programm kompiliert und ins /tmp verschoben (HelloWorld.elf)
Wenn ich das Programm über telnet starte  hätte ich mir auf der Konsole 
ein Hello World erwartet. Leider krieg ich nur ein "killed".
Was mach ich falsch?
Gast #1797747
Lesenswert?

Mark .. schrieb:
> Das Programm sieht korrekt aus und die Endung elf ist auch richtig. Fast
> alle Linux-Programme liegen im elf-Format vor.

Allerdings wird das Format nicht nur für fertig gelinkte Programme 
verwendet, aber bei diesen ist es eher unüblich, die Namen auf .elf 
enden zu lassen.
#1799806
Lesenswert?

Rolf Magnus schrieb:
> Allerdings wird das Format nicht nur für fertig gelinkte Programme
> verwendet, aber bei diesen ist es eher unüblich, die Namen auf .elf
> enden zu lassen.

Ja klar, normal haben die Programme gar keine Endung, nur gibt es einige 
IDEs wie z.B. Code::Blocks, bei denen .elf standardmäßig auch an das 
fertig gelinkte Binary drangehägt wird und manuell entfernt werden muss.

MfG Mark
OP #1800727
Lesenswert?

Ich verwende Linux am Grasshopper und habe die Toolchain mit apt-get von 
hier installiert.
http://www.atmel.no/avr32/ubuntu/jaunty binary/

Das Programm hab ich mit AVR32 Studio 2.5 geschrieben und ein C++ Linux 
Executable ausgewählt und kompiliert.

Ich bin gerade dabei mir eine Buildroot zu kompilieren. Hab ich einfach 
die falsche Toolchain erwischt? Weil im AVR Studio war überall als 
Compiler AVR32-linux-gcc... eingetragen und ich hab das auf avr-gcc 
ausgebessert, da ich diesen nicht auf dem Rechner gefunden habe.

Wenn ich das Programm jetzt mit der richtigen Toolchain kompiliert habe 
und das Hello World über die telnet-Console starte krieg ich dann eine 
Ausgabe auf der Console?
Gast #1801308
Lesenswert?

Gottfried Hauer schrieb:
> Ich bin gerade dabei mir eine Buildroot zu kompilieren. Hab ich einfach
> die falsche Toolchain erwischt? Weil im AVR Studio war überall als
> Compiler AVR32-linux-gcc... eingetragen und ich hab das auf avr-gcc
> ausgebessert, da ich diesen nicht auf dem Rechner gefunden habe.

Das war dann wohl der falsche Kompiler. Das stand nicht umsonst 
'AVR32-linux-gcc'!
'avr-gcc' ist der für die 8bit AVRs, das erklärt auch die Endung '.elf'.
Dein AVR32 kann damit mit Sicherheit nichts anfangen, es sei denn, Du 
hast einen passenden Emulator auf Deinem Grasshopper.
Du brauchst definitiv 'AVR32-linux-gcc'

Gottfried Hauer schrieb:
> Wenn ich das Programm jetzt mit der richtigen Toolchain kompiliert habe
> und das Hello World über die telnet-Console starte krieg ich dann eine
> Ausgabe auf der Console?

So sollte es dann sein.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren