J'ai enfin réussi à compiler avec LIBCmini sous Gcc.
Grâce à la vidéo de Vincent Rivière:
https://www.youtube.com/watch?v=YX2oi90_V_c
qui fait suite à celle de Jean Monos
https://www.youtube.com/watch?v=eZxH5sdbiD4
Où j'ai appris comment utiliser des "variable" sous bash ( %variable% ) à 11:20
J'ai adapté l'exemple donner sur LIBCmini Github
m68k-atari-mint-gcc -nostdlib $LIBCMINI/crt0.o hello.c -o hello.tos -s -L$LIBCMINI -lcmini -lgcc
en remplaçant $LIBCMINI par son équivalent bash et ça compile:
Toutes mes commandes sont dans un fichier HELLO.BAT que j’exécute en tapant dans la console bash/cygwin ./hello.bat.
Le source hello.c est dans un dossier Hello
. .. Hello.bat Hello | +-------> hello.c
Le dossier LIBCmini est copié au même niveau que la LIB de base mais vous pouvez le placer où vous voulez.
cygwin/opt/cross-mint/m68k-atari-mint/
[hello.bat] cd Hello set LIBCMINI=/cygdrive/h/cygwin/opt/cross-mint/m68k-atari-mint/libcmini/lib set INCLUDE=/cygdrive/h/cygwin/opt/cross-mint/m68k-atari-mint/libcmini/include REM Compilation avec MintLIB m68k-atari-mint-gcc hello.c -o hello68k.tos -m68000 -s -lgem m68k-atari-mint-gcc hello.c -o hello2060.tos -m68020-60 -s -lgem m68k-atari-mint-gcc hello.c -o hellocfv4e.tos -mcfv4e -s -lgem REM Compilation avec LIBCmini m68k-atari-mint-gcc -nostdlib -I%INCLUDE% %LIBCMINI%/crt0.o hello.c -o hellomini68k.tos -m68000 -s -L%LIBCMINI% -lcmini -lgcc m68k-atari-mint-gcc -nostdlib -I%INCLUDE% %LIBCMINI%/crt0.o hello.c -o hellomini2060.tos -m68020-60 -s -L%LIBCMINI%/m68020-60 -lcmini -lgcc m68k-atari-mint-gcc -nostdlib -I%INCLUDE% %LIBCMINI%/crt0.o hello.c -o hellominicfv4e.tos -mcfv4e -s -L%LIBCMINI%/m5475 -lcmini -lgcc
h est le lecteur où se trouve cygwin (H:/cygwin/...) à modifier pour que ça corespond avec votre configuration.
Si vous compilez pour un autre CPU cible, il faut pas oublier de faire pointer la LIB sur le dossier LIB du bon CPU, gcc ne peut pas
le faire automatiquement contrairement avec la LIB par défaut.
#include <stdio.h> int main( int argc, char* argv[]) { printf("Hello LIBCmini\r\n"); return 0; }
hello68k.tos 118.022 octets
hellomini68k.tos 2.726 octets