#1 Le 21/01/2008, à 02:20
- mathben
[résolu]compiler une source (c dans mon cas) pour un autre os?!?
Bonjour, je voudrais savoir si c'est possible de compiler une source pour un autre os?
En réalité, je voudrais aussi compiler pour un utilisateur de microsoft windows sans aller dessus et le recompiler (car je le compile sur ubuntu)
Avez-vous des solutions? J'utilise, pour compiler mes application, gcc!
merci!
Dernière modification par mathben (Le 21/01/2008, à 04:44)
Ubuntu 9.10 Karmic Koala AMD64 ][ Portable Acer Aspire 9300
Hors ligne
#2 Le 21/01/2008, à 02:38
- 1Eric
Re : [résolu]compiler une source (c dans mon cas) pour un autre os?!?
Le programme que tu recherche est mingw32, disponible dans les dépots
Hors ligne
#3 Le 21/01/2008, à 02:58
- mathben
Re : [résolu]compiler une source (c dans mon cas) pour un autre os?!?
merci, mais il a autre chose, mon application utilise la librairie SDL, je dois lui dire lors de la compilation qu'il doit compiler avec la librairie.
Voici comment je fais avec gcc
gcc `sdl-config --cflags --libs` -o executable main.c
Voici ce que le tutorial suivant me dit de faire.
i586-mingw32msvc-gcc -o executable.exe main.c
Bien sur, il a des erreurs de compilation, je dois lui dire que j'utilise la librairie, je fais donc ceci
i586-mingw32msvc-gcc `sdl-config --cflags --libs` -o executable.exe main.c
Il un erreur, je vous la montre :
In file included from /usr/include/SDL/SDL_main.h:26,
from /usr/include/SDL/SDL.h:28,
from main.c:3:
/usr/include/SDL/SDL_stdinc.h:72:20: iconv.h: Aucun fichier ou répertoire de ce type
/usr/include/SDL/SDL_stdinc.h:165:22: alloca.h: Aucun fichier ou répertoire de ce type
In file included from /usr/include/SDL/SDL_main.h:26,
from /usr/include/SDL/SDL.h:28,
from main.c:3:
/usr/include/SDL/SDL_stdinc.h:564: error: syntax error before "cd"
C'est dommage , avez-vous une explication?
Ubuntu 9.10 Karmic Koala AMD64 ][ Portable Acer Aspire 9300
Hors ligne
#4 Le 21/01/2008, à 03:27
- 1Eric
Re : [résolu]compiler une source (c dans mon cas) pour un autre os?!?
Je crois avoir trouvé (sur le forum anglais). Il faut télécharger SDL-devel-VERSION-mingw32.tar.gz, l'extraire et copier les libs et les .h dans /usr/i586-mingw32msvc/ (il doit y avoir un autre dossier/sous-dossier, c'est à vérifier...). Sur l'autre forum, il a été dit que la commande suivante fonctionne : i586-mingw32msvc-g++ block.cpp -o block.exe -lmingw32 -lSDLmain -lSDL -I/usr/i586-mingw32msvc/include/SDL il faut l'adapter (changer le g++ pour un c et les noms de fichiers).
Hors ligne
#5 Le 21/01/2008, à 04:43
- mathben
Re : [résolu]compiler une source (c dans mon cas) pour un autre os?!?
Ha, je crois comprendre, il fallait mettre les librairies pour ce compilateur qui n'est pas situé à un endroit bien connue! (pas habituel disons...)
merci, il suffit simplement de décompresser le fichier qu'il fallait télécharger sur le lien que tu as donné.
merci, je ne serai plus obligé d'émuler windows pour le compiler
Ubuntu 9.10 Karmic Koala AMD64 ][ Portable Acer Aspire 9300
Hors ligne
#6 Le 21/01/2008, à 08:25
- human enemy
Re : [résolu]compiler une source (c dans mon cas) pour un autre os?!?
il y a un tuto très bien fait sur le site du zéro (siteduzero.com sur le langage C.
Est dans ce tuto il y a des exemples d'utilisation de la SDL et de comment faire pour l'installer.
<linux user>463160</linux user>
str = g_strdup_printf ("ubuntu user : %d",20328);
Hors ligne
#7 Le 22/01/2008, à 14:24
- Aurel34
Re : [résolu]compiler une source (c dans mon cas) pour un autre os?!?
je pense que les autotools te simplifieraient la vie...