tutorials.de Buch-Aktion 05/2012
Seite 1 von 2 12 LetzteLetzte
ERLEDIGT
NEIN
ANTWORTEN
15
ZUGRIFFE
4577
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    Avatar von Aiju
    Aiju Aiju ist offline Mitglied Brokat
    Registriert seit
    Jul 2004
    Beiträge
    268
    Wie kann ich mit der GCC unter Linux Windows binaries erzeugen?
    Ich habe bei google haufenweise Erklärungen gefunden, mit denen komme ich jedoch nicht klar. Also : Welche Tarballs muss ich runterladen?
     

  2. #2
    Registriert seit
    Aug 2004
    Ort
    nähe Wü
    Beiträge
    429
    Hi,

    eine relativ gute Anleitung zum erstellen von Windowsbinarys kannst du in englisch hier finden.
     
    ---
    Der Uhu ist der Luchs unter den Adlern...
    Dieter Nuhr

  3. #3
    Avatar von Aiju
    Aiju Aiju ist offline Mitglied Brokat
    Registriert seit
    Jul 2004
    Beiträge
    268
    Ich habe doch nur den gcc für das Target x86 Linux installiert. Wie installiere ich den unter SuSE 10 den gcc für x86 Linux -> Windows?
     

  4. #4
    Registriert seit
    Oct 2003
    Beiträge
    1.706
     
    "I'm not deaf, I'm ignoring you"
    ----

  5. #5
    Registriert seit
    Aug 2004
    Ort
    nähe Wü
    Beiträge
    429
    Zitat Zitat von Aiju
    Ich habe doch nur den gcc für das Target x86 Linux installiert. Wie installiere ich den unter SuSE 10 den gcc für x86 Linux -> Windows?
    Hi,

    wie du das genau unter SuSE machst hab ich keine Ahnung schau mal nach ob du mit Yast das Paket mingw32 installieren kannst.

    Notfalls kannst du dir auch die Sourcen von der MinGW Homepage besorgen.
     
    ---
    Der Uhu ist der Luchs unter den Adlern...
    Dieter Nuhr

  6. #6
    Avatar von Aiju
    Aiju Aiju ist offline Mitglied Brokat
    Registriert seit
    Jul 2004
    Beiträge
    268
    Das Paket mingw32 gibt es nicht. Die binutils habe ich installiert, kompiliere gerade gcc-core
    EDIT: fehlgeschlagen!
    Er findet stdio.h nicht...
    Ich habs so gemacht, ich habe ein mingw Verzeichnis angelegt. Dort dann gcc-core enpackt und ein Verzeichnis build erstellt. Dann hab ich dort rein cd'et und das Skript ausgeführt:
    Code :
    1
    2
    3
    4
    5
    
    #!/bin/sh
    ../gcc-3.4.2-20040916-1/configure --with-gcc --target=mingw32  --prefix=/mingw --enable-threads --disable-nls --enable-languages=c --disable-win32-registry --disable-shared --enable-sjlj-exceptions --without-x --enable-hash-synchronization --enable-libstdcxx-debug
    make CFLAGS="-O2 -fomit-frame-pointer" CXXFLAGS="-mthreads -fno-omit-frame-pointer -O2" LDFLAGS=-s 
    cd gcc
    make CFLAGS=-O2 LDFLAGS=-s LN_S=ln gnatlib_and_tools
    Geändert von Aiju (22.01.06 um 18:08 Uhr)
     

  7. #7
    Registriert seit
    Oct 2003
    Beiträge
    1.706
    Hallo,

    zeig mal den "top most build error"...

    Gruß

    RedWing
     
    "I'm not deaf, I'm ignoring you"
    ----

  8. #8
    Avatar von Aiju
    Aiju Aiju ist offline Mitglied Brokat
    Registriert seit
    Jul 2004
    Beiträge
    268
    was ist denn der "top most build error" ?
    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    
    make[1]: Entering directory `/home/aiju/software/tmp/mingw/build/libiberty'
    make[2]: Entering directory `/home/aiju/software/tmp/mingw/build/libiberty/testsuite'
    make[2]: Für das Ziel »all« ist nichts zu tun.
    make[2]: Leaving directory `/home/aiju/software/tmp/mingw/build/libiberty/testsuite'
    make[1]: Leaving directory `/home/aiju/software/tmp/mingw/build/libiberty'
    make[1]: Entering directory `/home/aiju/software/tmp/mingw/build/intl'
    make[1]: Für das Ziel »all« ist nichts zu tun.
    make[1]: Leaving directory `/home/aiju/software/tmp/mingw/build/intl'
    make[1]: Entering directory `/home/aiju/software/tmp/mingw/build/gcc'
    /home/aiju/software/tmp/mingw/build/gcc/xgcc -B/home/aiju/software/tmp/mingw/build/gcc/ -B/mingw/mingw32/bin/ -B/mingw/mingw32/lib/ -isystem /mingw/mingw32/include -isystem /mingw/mingw32/sys-include -O2 -DIN_GCC -DCROSS_COMPILE   -W -Wall -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -Wold-style-definition  -isystem ./include  -I. -I. -I../../gcc-3.4.2-20040916-1/gcc -I../../gcc-3.4.2-20040916-1/gcc/. -I../../gcc-3.4.2-20040916-1/gcc/../include   -g0 -finhibit-size-directive -fno-inline-functions -fno-exceptions -fno-zero-initialized-in-bss -fno-unit-at-a-time -fno-omit-frame-pointer \
      -Dinhibit_libc -c ../../gcc-3.4.2-20040916-1/gcc/crtstuff.c -DCRT_BEGIN \
      -o crtbegin.o
    In file included from ./tm.h:10,
                     from ../../gcc-3.4.2-20040916-1/gcc/crtstuff.c:64:
    ../../gcc-3.4.2-20040916-1/gcc/config/i386/cygming.h:53:19: stdio.h: No such file or directory
    In file included from ./tm.h:10,
                     from ../../gcc-3.4.2-20040916-1/gcc/crtstuff.c:64:
    ../../gcc-3.4.2-20040916-1/gcc/config/i386/cygming.h:358: error: syntax error before '*' token
    ../../gcc-3.4.2-20040916-1/gcc/config/i386/cygming.h:358: warning: function declaration isn't a prototype
    make[1]: *** [crtbegin.o] Fehler 1
    make[1]: Leaving directory `/home/aiju/software/tmp/mingw/build/gcc'
    make: *** [all-gcc] Fehler 2
     

  9. #9
    Registriert seit
    Oct 2003
    Beiträge
    1.706
    Top most build error = am weitest oben stehender Fehler
    Aber glibc-dev hast du auf deinem Rechner schon installiert?
    Kann nur raten das dir die C Headers Fehlen bzw diese nicht in /usr/include liegen?

    Gruß

    RedWing
     
    "I'm not deaf, I'm ignoring you"
    ----

  10. #10
    Avatar von Aiju
    Aiju Aiju ist offline Mitglied Brokat
    Registriert seit
    Jul 2004
    Beiträge
    268
    Doch die liegen dort, ich habe ja auch schon andere Programme kompiliert. Doch der Compiler scheint sich auch selbst zu kompilieren.
     

  11. #11
    Registriert seit
    Oct 2003
    Beiträge
    1.706
    Zitat Zitat von Aiju
    Doch die liegen dort, ich habe ja auch schon andere Programme kompiliert. Doch der Compiler scheint sich auch selbst zu kompilieren.
    Mhm.

    Hast du die Variablen im Skript angepasst?

    Get this shell-Script, adjust at least BUILD_ROOT and PREFIX at the top of the script to match your setup. If you wish to build other compilers than gcc and g++ like e.g. g77 or gnat you'll search for the lang_* settings a bit further down in the script and adjust them to your needs. Now save and run the script. You now may go and get some coffee, tea or whatever you prefer because this will take some time.
    Gruß

    RedWing
     
    "I'm not deaf, I'm ignoring you"
    ----

  12. #12
    Avatar von Aiju
    Aiju Aiju ist offline Mitglied Brokat
    Registriert seit
    Jul 2004
    Beiträge
    268
    Das Skript habe ich ja nicht genommen.
    Ich habe jetzt mal ein Verzeichnis /mingw/mingw32/include erstellt und dort alle Includes reinge-symlink-t (mit cp -s)
    Jetzt kommen die Meldungen:
    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    
    /tmp/ccAb1EsN.s: Assembler messages:
    /tmp/ccAb1EsN.s:5: Error: unknown pseudo-op: `.def'
    /tmp/ccAb1EsN.s:5: Error: unknown pseudo-op: `.scl'
    /tmp/ccAb1EsN.s:5: Error: unrecognized symbol type ""
    /tmp/ccAb1EsN.s:5: Error: junk at end of line, first unrecognized character is `3'
    /tmp/ccAb1EsN.s:5: Error: unknown pseudo-op: `.endef'
    /tmp/ccAb1EsN.s:11: Error: unknown pseudo-op: `.def'
    /tmp/ccAb1EsN.s:11: Error: unknown pseudo-op: `.scl'
    /tmp/ccAb1EsN.s:11: Error: unrecognized symbol type ""
    /tmp/ccAb1EsN.s:11: Error: junk at end of line, first unrecognized character is `3'
    /tmp/ccAb1EsN.s:11: Error: unknown pseudo-op: `.endef'
     

  13. #13
    Registriert seit
    Oct 2003
    Beiträge
    1.706
    btw.
    Doch der Compiler scheint sich auch selbst zu kompilieren.
    das kann ich mir nicht vorstellen. Ansonsten hättest du dann ein Compiler der
    auf ner Windows Plattform läuft...
    Es kann aber gut sein das die eignen Header verwendet werden.

    Gruß

    RedWing
     
    "I'm not deaf, I'm ignoring you"
    ----

  14. #14
    Registriert seit
    Oct 2003
    Beiträge
    1.706
    Das Skript habe ich ja nicht genommen.
    Gibt es einen Grund dfaür?

    Ich glaube die haben das Skript nicht für umsonst geschrieben...

    Gruß

    RedWing
     
    "I'm not deaf, I'm ignoring you"
    ----

  15. #15
    Avatar von Aiju
    Aiju Aiju ist offline Mitglied Brokat
    Registriert seit
    Jul 2004
    Beiträge
    268
    Ich habe die Binutils für win schon vorher installiert.
    EDIT: Noch mal von vorn:
    build-Dir geleert. configure mit den Optionen
    --target=mingw32 --build=i586-pc-linux-gnu --host=i586-pc-linux-gnu
    gestartet. make ohne Optionen.
    Geändert von Aiju (22.01.06 um 18:54 Uhr)
     

Ähnliche Themen

  1. CMake bzw. Cross-Compiling
    Von Daniel Toplak im Forum C/C++
    Antworten: 1
    Letzter Beitrag: 15.12.09, 11:50
  2. HDR Cross
    Von Cosix im Forum 3D Studio Max
    Antworten: 2
    Letzter Beitrag: 22.10.05, 17:03
  3. Probleme mit Cross-Compiler
    Von plonk im Forum Java
    Antworten: 7
    Letzter Beitrag: 26.08.05, 20:38
  4. Cross Domain Scripting
    Von Agent_Smith im Forum Javascript & Ajax
    Antworten: 1
    Letzter Beitrag: 22.07.05, 01:19
  5. Cross-Section - hä****?
    Von m00w im Forum 3D Studio Max
    Antworten: 3
    Letzter Beitrag: 10.05.01, 18:35