Salut a tous,
Je voudrais compiler sous linux, un executable .exe, utilisant mysql, gd library, et gtk.
Je suis en train d'essayer avec code block et mingw32, mais sans succes...
Merci d'avance
Salut a tous,
Je voudrais compiler sous linux, un executable .exe, utilisant mysql, gd library, et gtk.
Je suis en train d'essayer avec code block et mingw32, mais sans succes...
Merci d'avance
=> Les binaires Linux ne sont pas forcément des .exe, mingw32 = minimal GNU for Windows 32 bits, donc pas à utiliser sous Linux mais sous Windows. Donc question, compile-tu sous Windows ou sous Linux ?Je voudrais compiler sous linux, un executable .exe, utilisant mysql, gd library, et gtk.
Je suis en train d'essayer avec code block et mingw32, mais sans succes...
Merci d'avance
Quel est ton makefile pour générer ce binaire ?
Quelle est la version des bibliothèques gtk, mysql que tu utilises ?
Quelle sont les erreurs notifiées ?
Sans ces éléments nous aurons du mal à t'aider
Selso.
Ingénieur/CdP développement systèmes embarqués &
Le titre parle bien de cross-compiling, donc Pitou5464 cherche à compiler pour Windows, mais sous Linux.
Si c'est faisable avec MinGW pour des programmes simples, je pense que le problème est au niveau des bibliothèques dont il faut une version compatible MinGW.
SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.
"Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
Apparently everyone. -- Raymond Chen.
Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.
Oups désolé !
Je croyais que MingW n'était pas dispo sous Linux (je croyais que ce nom était réservé à la version windows).
Mais cela ne change rien, il faut nous décrire les erreurs que tu rencontres ?
As-tu vérifié que toutes tes dépendances étaient compilées pour windows par exemple ?
Vérifie aussi ton makefile, si tu as des lignes du genre
Alors il y a de grande chance pour que tu essaie de linker avec la version Linux des lib !
Code : Sélectionner tout - Visualiser dans une fenêtre à part `pkg-config --cflags --libs gtk+-2.0`
Selso.
Ingénieur/CdP développement systèmes embarqués &
Oui, compiler un simple programme C, pas de problemes. Mais c'est l'utilisation de gtk+ et de mysql 5, qui sont assez dure a compiler.je pense que le problème est au niveau des bibliothèques dont il faut une version compatible MinGW.
J'ai pensé au cross-compiling car, je developpe sous linux, et pas sous-windows. Mais j'ai l'impression que pour une application qui utilise des librairies, ca m'a tout l'air d'un parcours du combattant.
J'ai vu qu'avec code::blocks, je devrais pouvoir y arriver.
Pour l'instant je compile qu'avec une ligne, car je n'ai pas encore fait l'interface, mon prog utilise juste mysql, et gd library.
gcc -g -Wall -lmysqlclient -lgd -o blah blah.c
La compilation croisée exige une certaine rigueur, il faut s'assurer de faire les bons appels des lorsque ta compilation utilise les autotools, et compiler et installer les dépendances dans des répertoires temporaires de ton hôte (pour ne pas écraser les versions existantes déjà installés pour ta machine)
Assure-toi que la version windows de ces lib est disponible et est utilisé par ton compilo.
Code : Sélectionner tout - Visualiser dans une fenêtre à part -lmysqlclient -lgd
Il faudrait peut-être aussi connaître les chemin de recherche de librairies de ton compilateur, et le cas échéant les spécifier lors de ta compilation.
Bonne chance.
Selso.
Ingénieur/CdP développement systèmes embarqués &
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager