MinGW64 unter Windows mit Code::Blocks

Zuerst müssen Sie sich die benötigten Paket herunterladen, die unter dieser URL zu finden sind:

http://sourceforge.net/projects/mingw-w64/files/

Aber aufpassen das Sie die Packete im Unterordner „Toolchains targetting Win64“ laden. Unterhalb von Release werden Sie nichts finden, sie müssen zu den „Automated Builds“ gehen und dort einfach das aktuellste Packet nehmen das vom Namen her so aufgebaut sein muss:

mingw-w64-bin_i686-mingw_<Datum>.zip

Dieses Packet einfach an den von Ihnen gewünschten Ort entpacken, zB „C:\Programme\MinGW64\“. Ich habe mir aber noch zusätzlich diese Packet kopiert:

libiconv-1.13.1-win64-20100604.zip
make-3.81-20100428.zip
pthreads-20100604.zip
i686-w64-mingw32-gdb-7.1.50-20100528.zip (Zum Debuggen)

Dies müssen dann entsprechend noch mit in den Ordner kopiert werden. Aber Vorsicht bei manchen nicht einfach die Root entpacken sonder in die entsprechenden Unterordner gehen bis der Aufbau dem vom mingw selbst entspricht. Also ein bin-, include- und weitere Ordner müssen vorhanden sein. (Bei pthreads müssen Sie erst in den mingw64-Ordner)

Sollte nun alles entpackt sein starten sie Code::Blocks und aktivieren Sie das Compiler-Fenster unter „Settings->Compiler und debugger…“. Kopieren Sie den Eintrag „GNU GCC Compiler“ und geben Sie Ihr einen neuen Namen zB „GNU GCC 64 Compiler“. In der „Tablasche Toolchain executables“ geben Sie den Pfad zu ihrem MinGW64 an (In unserem Beispiel oben wäre es der Pfad „C:\Programme\MinGW64\“).

Bei „Program Files“ müssen Sie bei den  Programmen die Namen noch anpassen, folgende müssen angepasst werden:

C compiler: x86_64-w64-mingw32-gcc.exe
C++ compiler: x86_64-w64-mingw32-g++.exe
Linker for dynamic libs: x86_64-w64-mingw32-g++.exe
Linker for static libs: x86_64-w64-mingw32-ar.exe
Debugger: gdb.exe (bleibt gleich)
Ressource compiler: x86_64-w64-mingw32-windres.exe
Make program: mingw32-make.exe

Bei „Additional Paths“ geben Sie noch folgenden Ordner an:

<PfadMinGW64>\libexec\gcc\x86_64-w64-mingw32\<VERSION>\

Bei  „Search directories“ müssen Sie auch noch die Pfade eingetragen werden. Beim Compiler diese:

<PfadMinGW64>\include
<PfadMinGW64>\x86_64-w64-mingw32\include
<PfadMinGW64>\x86_64-w64-mingw32\include\c++\<VERSION>
<PfadMinGW64>\x86_64-w64-mingw32\include\c++\<VERSION>\backward
<PfadMinGW64>\x86_64-w64-mingw32\include\c++\<VERSION>\x86_64-w64-mingw32
<PfadMinGW64>\lib\gcc\x86_64-w64-mingw32\<VERSION>\include

Und bei Linker noch folgende:

<PfadMinGW64>\lib
<PfadMinGW64>\x86_64-w64-mingw32\lib

Und nun bei Ihrem Projekt den neuen Compiler angeben, durch ein Rechtsklick aufs Projekt dann „Build Options…“ auswählen. Nun bei „Selected compiler“ den neuen Compiler auswählen, aber Vorsicht er wird für das „Build target“ definiert welches im linken Baum ausgewählt ist. Um es noch im 64Bit Modus zu kompilieren müssen Sie unter „Compiler settings“->“Other options“ noch ein „-m64“ angeben. Alles mit OK bestätigen und über „Build“->“Rebuild“ (Ctrl + F11) alles neu erstellen lassen, im Dialog noch mit ja bestätigen.

Hier noch einen Link bei dem man auch den Compiler und weitere Biliotheken laden kann: http://www.dragon.org/mingw/

Dieser Beitrag wurde unter CPP, Programmieren, Windows veröffentlicht. Setze ein Lesezeichen auf den Permalink.

9 Responses to MinGW64 unter Windows mit Code::Blocks

  1. Pingback: Boost mit MinGW64

  2. Ingo sagt:

    Wow DANKE!!! Nach so einem Tutorial hab ich schon ewig gesucht.

    Hat alles soweit auch geklappt aber ich hab da ein keines Problem:
    Wenn ich eine so Kompilierte Datei starten will kommt der Fehler das er die „libstdc++-6.dll“ nicht finden konnte 🙁

    Gibt es dafür ne lösung?

  3. Ingo sagt:

    Muss nochmal stören 🙂

    Es ist nicht nur diese dll die ihm immer fehlt sondern mehrere. In einem anderen fall ist es die „w64gcc_s_sjlj-1.dll“

  4. admin sagt:

    Kein problem. dies ist normal. es sind normalerweise so 2 – 3 Dll die du mitliefern musst. Die findest du alle in den bin_Verzeichnissen des MinGW. Dies muesstest du beim Visual C++ von Microsoft auch, nur das die bei jedem Winodws schon dabei sind.

    Mfg marc-o

  5. Ingo sagt:

    Danke für die schnelle Antwort 🙂

    Finde ich aber seltsam. Ich nutze ja Windows7 x64.
    Das ich da den Programmen die ganzen dlls beilegen soll sagt mir ja jetzt nicht so zu xD

    Vielleicht finde ich ja noch einen weg die irgendwie mit in die exe zu bekommen (falls das überhaupt möglich ist)

  6. admin sagt:

    Kein Problem 🙂 Deswegen gibts den blog ja um anderen meine gelösten Probleme mitzuteilen 🙂

    Ja versteh dich schon aber ich muss sagen damit hab ich kein Problem, wenn du zB andere Dll’s benutzt musst du die ja auch mitliefern. Vorteil beim Visual Studio ist halt das alles schon bei jedem Windows dabei ist oder du es über die dotNet-Installer mitbekommst.

    Siehe dir CodeBlocks an, da liegt die MinGW-Dll sowie die wxWidget-Dll bei. Bei wxWidget bin ich mir sogar sehr sicher das man die mit reinkompilieren kann, dann muss dies aber jedes Programm machen wodurch es größer wird. Wenn du jetzt mehrere Programme hast die die Dll nutzen, brauchst du diese nur einmal ins System32-Verzeichnis zu kopieren.

    Müsste man mal schauen ob man bei MinGW auch mit reinkompilieren kann. Ich bin auch mal am schauen und wenn ich es finde dann sag ich bescheid 🙂

    Mfg marc-o

  7. admin sagt:

    Hey Ingo

    ich hätte da nen neuen Artikel für dir: http://blog.marc-o.org/?p=166 . Einfach mal reinschauen 🙂

    Mfg marc-o

  8. Ingo sagt:

    Wohoooo, danke 🙂

  9. admin sagt:

    Bitte schön, helfe doch gern.

    Mfg marc-o

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.