Cioscos
14-02-2018, 10:54
Salve! Ho creato un programma in console usando C come linguaggio di programmazione.
Ora.. ho usato delle librerie esterne, più nello specifico le SDL2 e SDL_mixer.
Il programma è stato creato correttamente ma, volendolo distrubuire, voglio creare la versione a 64 e la versione a 32bit. Ora siccome non sono abbastanza preparato per creare programmi che funzionano sia a 64 che a 32 bit, oltre al fatto che non saprei come fare con le DLL ad esempio, voglio creare diciamo 2 distribuzioni diverse.
Per compilare l'eseguibile a 32 bit ho pensato di agire nel seguente modo (Uso code::blocks come IDE):
Settings>Compiler> e sotto la categoria General ho messo la spunta a Target x86 [-m32]
Inoltre ho scaricato le librerie dev sia di sdl2 che di SDL_mixer a 32 bit e ho inserito i file nella cartella del compilatore (minGW) ovvero C:\minGW\x86_64-w64-mingw32\lib32 dove dentro lib32 o messo i file a 32bit delle librerie SDL2 e sdl_mixer, nella cartella include non ci dovrebbero essere differenze mentre il contenuto della cartella bin (le dll) le ho messe nella cartella del main.c .
Ora però, sempre se quello che ho fatto è giusto, quando compilo ho un errore:
||=== Build: Debug in DepGen_x86 (compiler: GNU GCC Compiler) ===|
||error: ld returned 1 exit status|
||=== Build failed: 1 error(s), 0 warning(s) (0 minute(s), 0 second(s)) ===|
Come mai?
Segnalo in oltre che nelle impostazioni del linker ho scritto:
-lmingw32 -lSDL2main -lSDL2 -lSDL2_mixer
Grazie in anticipo per eventuali risposte.
Ora.. ho usato delle librerie esterne, più nello specifico le SDL2 e SDL_mixer.
Il programma è stato creato correttamente ma, volendolo distrubuire, voglio creare la versione a 64 e la versione a 32bit. Ora siccome non sono abbastanza preparato per creare programmi che funzionano sia a 64 che a 32 bit, oltre al fatto che non saprei come fare con le DLL ad esempio, voglio creare diciamo 2 distribuzioni diverse.
Per compilare l'eseguibile a 32 bit ho pensato di agire nel seguente modo (Uso code::blocks come IDE):
Settings>Compiler> e sotto la categoria General ho messo la spunta a Target x86 [-m32]
Inoltre ho scaricato le librerie dev sia di sdl2 che di SDL_mixer a 32 bit e ho inserito i file nella cartella del compilatore (minGW) ovvero C:\minGW\x86_64-w64-mingw32\lib32 dove dentro lib32 o messo i file a 32bit delle librerie SDL2 e sdl_mixer, nella cartella include non ci dovrebbero essere differenze mentre il contenuto della cartella bin (le dll) le ho messe nella cartella del main.c .
Ora però, sempre se quello che ho fatto è giusto, quando compilo ho un errore:
||=== Build: Debug in DepGen_x86 (compiler: GNU GCC Compiler) ===|
||error: ld returned 1 exit status|
||=== Build failed: 1 error(s), 0 warning(s) (0 minute(s), 0 second(s)) ===|
Come mai?
Segnalo in oltre che nelle impostazioni del linker ho scritto:
-lmingw32 -lSDL2main -lSDL2 -lSDL2_mixer
Grazie in anticipo per eventuali risposte.