CodeBlocks 32Bit kompilieren



  • Hallo Leute,

    und zwar ist meine Frage eigentlich recht simpel. Ich habe bis jetzt meine Projekte in 64Bit kompiliert und muss allerdings nun für ein anderes Projekt in 32Bit kompilieren. Sobald ich jedoch in den Compiler-Einstellungen Target x86 (32bit) [-m32] anwähle, meckert er mich an mit folgender Meldung:

    c:\program files (x86)\codeblocks\mingw64\include\c++\7.2.0\cstdlib|41|fatal error: bits/c++config.h: No such file or directory|

    Dabei öffnet er mir auch die cstdlib und zeigt mir auch den Fehler beim include an (#include <bits/c++config.h>). Als C++ Compiler habe ich den folgenden angegeben: x86_64-w64-mingw32-g++.exe

    Könnt ihr mir vielleicht helfen? 😕 🙂



  • Ich muss mal noch einiges hier ergänzen... Kompilieren möchte ich eine dll. Bei einer exe funktioniert es ohne Probleme. Und mir ist noch etwas aufgefallen:

    Ich öffne mein Projekt. Sobald ich etwas bearbeite (sei es auch nur eine leerzeile einfügen) und ich kompiliere (32Bit), kommt der Fehler aus meinem ersten Beitrag. Kompiliere ich dann, auf 64Bit, funktioniert es. Kompiliere ich dann wieder auf 32Bit kommt ein anderer Fehler:

    ||=== Build: Debug in MoeneyLog (compiler: GNU GCC Compiler) ===|
    ld.exe||cannot find -luser32|
    ld.exe||cannot find -lstdc++|
    ld.exe||cannot find -lmingw32|
    ld.exe||cannot find -lgcc|
    ld.exe||cannot find -lgcc_eh|
    ld.exe||cannot find -lmoldname|
    ld.exe||cannot find -lmingwex|
    ld.exe||cannot find -lmsvcrt|
    ld.exe||cannot find -ladvapi32|
    ld.exe||cannot find -lshell32|
    ld.exe||cannot find -luser32|
    ld.exe||cannot find -lkernel32|
    ld.exe||cannot find -lmingw32|
    ld.exe||cannot find -lgcc|
    ld.exe||cannot find -lgcc_eh|
    ld.exe||cannot find -lmoldname|
    ld.exe||cannot find -lmingwex|
    ld.exe||cannot find -lmsvcrt|
    ||error: ld returned 1 exit status|
    ||=== Build failed: 19 error(s), 0 warning(s) (0 minute(s), 0 second(s)) ===|



  • Mögl.weise hilft es, nach Änderungen (z.B. von Einstellungen in der IDE) zum erneuten Compilieren im Menu nicht "Build", sondern "Rebuild" zu wählen, damit die Änderungen im Projekt übernommen werden. Außerdem: vor dem Compilieren die alten Obj-Dateien (im Obj-Ordner) löschen, um auch deren erneute Compilierung zu erzwingen (kann sonst sein, daß die alten Dateien weiterverwendet werden).