Ausführbare C-Datei von Mac OS auf Embedded Linux ausführen

Hier mal die Liste der bei MacPorts zur Verfügung stehenden Cross-Compiler:

Code:
bitmuncher@mbp2:~> port list |grep gcc|grep cross
arm-aout-gcc                   @3.3.6          cross/arm-aout-gcc
arm-elf-gcc                    @4.6.1          cross/arm-elf-gcc
arm-elf-gcc3                   @3.4.6          cross/arm-elf-gcc3
arm-none-eabi-gcc              @4.7.3          cross/arm-none-eabi-gcc
arm-none-linux-gnueabi-gcc     @2005q3-2       cross/arm-none-linux-gnueabi-gcc
arm-rtems-gcc                  @4.2.3          cross/arm-rtems-gcc
avr-gcc                        @4.8.2          cross/avr-gcc
i386-elf-gcc                   @4.7.2          cross/i386-elf-gcc
i386-mingw32-gcc               @3.4.5-20060117-2 cross/i386-mingw32-gcc
i386-rtems-gcc                 @4.2.3          cross/i386-rtems-gcc
i960-rtems-gcc                 @3.2.3          cross/i960-rtems-gcc
m68k-elf-gcc                   @3.4.6          cross/m68k-elf-gcc
m68k-rtems-gcc                 @4.2.3          cross/m68k-rtems-gcc
mips-elf-gcc                   @3.4.6          cross/mips-elf-gcc
mips-rtems-gcc                 @4.2.3          cross/mips-rtems-gcc
mipsel-linux-gcc34             @3.4.6          cross/mipsel-linux-gcc34
msp430-gcc                     @4.6.3-20120406 cross/msp430-gcc
msp430-gcc-devel               @4.7.0-20120911 cross/msp430-gcc-devel
powerpc-rtems-gcc              @4.2.3          cross/powerpc-rtems-gcc
sh-rtems-gcc                   @4.2.3          cross/sh-rtems-gcc
sparc-rtems-gcc                @4.2.3          cross/sparc-rtems-gcc
x86_64-elf-gcc                 @4.7.2          cross/x86_64-elf-gcc
 
Damit dürfte in diesem Fall wohl i386-elf-gcc der richtige Compiler sein...
 
So, ich habe mir Macports besorgt und den i386-elf-gcc Compiler integriert was sowet auch alles bisher beachtlich schlüssig erschien. Die Frage die sich mir nun stellt ist wie wende ich genau diesen Treiber an? Über Port installed erhalte ich die Meldung das dieser unter dem Namen i386-elf-gcc implementiert ist, weitere Anweisungen erhalte ich hier nicht. Im Guide von Macport sehe ich heirzu auch nichts oder ich bin einfach zu Unwissend oder zu Blind es zu finden :think: http://guide.macports.org/
 
Wenn du das Paket installiert hast kannst Du deinen Quellcode nun am Mac übersetzen:
Code:
i386-elf-gcc -g -Wall -o helloworld main.c

Herauskommt ein Binary namens "helloworld" welches Du nun problemlos über den FTP-Server übertragen und unter Linux ausführen kannst (theoretisch jedenfalls:think:)
 
So, Therorie und Praxis vertragen sich wohl nicht all zu gut :D Ich bin über den Terminal ins Verzeichnis von meine main.c datei liegt und wollte diese dann kompilieren... Heraus kam folgende Fehlermeldung
xxxxx-MacBook-Pro:Hallo_Welt f0xy$ i386-elf-gcc -g -Wall -o test main.c
/opt/local/lib/gcc/i386-elf/4.7.2/../../../../i386-elf/bin/ld: cannot find crt0.
o: No such file or directory
collect2: Fehler: ld gab 1 als Ende-Status zurück ?(
 
So, ich habe meine Zeit damit verbracht das Problem mal anzugehen und nach einer gescheiten Lösung zu suchen, was mehr oder minder zu keinem wirklichen Erfolg führte... Wenn ich das ganze nun richtig verstehe bedeutet die Fehlermeldung das der linker (ld) die C Runtime library nicht findet?! Es ist wohl möglich entweder dem Linker ein neues Verzeichnis für die crt0.o Dati zuzuweisen, oder aber auch diesen Schritt einfach zu umgehen? Dabei bin ich des öfteren auf den Befehl -nostartfiles gestoßen... Hättet ihr noch einen Tipp zur Lösung des Ganzen? Hier einmal zwei Quellen die den befehl zur Lösung des Problems angeben

https://groups.google.com/forum/#!topic/gnu.gcc.help/mUop5ubdMLY

https://my.st.com/public/STe2ecommu...4902C3CDE46A77F0FFD06506F5B&currentviews=3629

Das Problem scheint wohl bekannt zu sein, jedoch für mich nicht erkenntlich wie es nun eindeutig zu lösen ist, ohne in die Konfiguration einzugreifen wovon ich leider nicht die Ahnung habe.
 

Ähnliche Themen

Zugriff Ubuntu 16.04. auf Freigabe 18.04. LTS nicht möglich

Freigabe nur über IP zu erreichen.

Samba 4 Gast Zugang unter Ubuntu funktioniert nicht

dovecot und postfix Konfiguration Problem

Windows clients können nicht mehr auf lange laufendes System zugreifen

Zurück
Oben