IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C++ Discussion :

Problème compilation C++ opengl/SDL Ubuntu


Sujet :

C++

  1. #1
    Membre à l'essai

    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2015
    Messages
    29
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2015
    Messages : 29
    Points : 19
    Points
    19
    Billets dans le blog
    1
    Par défaut Problème compilation C++ opengl/SDL Ubuntu
    Bonjour, je code en c++ depuis peu de temps et ayant appris seul, je n'ai que tres peu de théorie sur la compilation ! Je suis sous Ubuntu 14.04.

    J'ai créé un jeu utilisant openGl et SDL, et la compilation avec g++ fonctionne et le jeu fonctionne également. ( la commande étant : g++ -W -o exec main.cpp -lSDL -lGL -lGLU -lSDL_image -lSDL_ttf ).

    Apres des recherches sur les forums et des essais non concluants, j'ai décidé de créer ce topic.

    Mon problème est : Je veux créer un executable windows (avec i586-mingw32msvc-g++ -W -o exec.exe main.cpp -lSDL -lGL -lGLU -lSDL_image -lSDL_ttf ) cependant lors de la compilation il me sort plusieurs erreurs !

    Nom : Capture du 2016-05-31 22:54:47.png
Affichages : 220
Taille : 156,2 Ko


    A quoi sont-elles dues et comment finalement compiler ?

    Merci d'avance pour votre aide !

    ps: avez vous besoin de certaines informations complémentaires ,je peux fournir des captures d'écran au besoin.

  2. #2
    Membre à l'essai

    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2015
    Messages
    29
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2015
    Messages : 29
    Points : 19
    Points
    19
    Billets dans le blog
    1
    Par défaut legere avancee
    hey, J'ai avancé un peu, j'ai collé tous les fichiers include de la SDL de windows dans le repertoire /usr/i586-mingw32msvc/include/SDL et l'erreur a changé en "undefined reference to" en masse, si quelqu'un avait une solution ce serait sympa !
    Nom : 2.png
Affichages : 220
Taille : 261,8 Ko
    Nom : 3.png
Affichages : 221
Taille : 266,7 Ko

  3. #3
    Membre éclairé
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2010
    Messages
    517
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Santé

    Informations forums :
    Inscription : Avril 2010
    Messages : 517
    Points : 718
    Points
    718
    Par défaut
    Salut,
    C'est un problème de cross-compilation. (Si tu débutes en programmation ce n'est peut-être pas trop conseillé pour commencer: le plus simple serait de compiler directement sous Windows).
    Sinon pour résoudre ton problème, il faut avoir les bibliothèques compilées pour Windows installer sur ton PC et renseigner le chemin de ces bibliothèques lors de ta compilation (avec l'option -L<chemin_vers_tes_bibliothèques>).

  4. #4
    Membre à l'essai

    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2015
    Messages
    29
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2015
    Messages : 29
    Points : 19
    Points
    19
    Billets dans le blog
    1
    Par défaut
    Merci,mais pour biblioteque compilée, tu parles des lib.a ? car j'ai tapé cette commande :
    (i586-mingw32msvc-g++ -W -o hey.exe main.cpp -lSDL -lGL -lGLU -lSDL_image -lSDL_ttf -L/usr/i586-mingw32msvc/lib/libSDL.a -L/usr/i586-mingw32msvc/lib/libGL.a -L/usr/i586-mingw32msvc/lib/libGLU.a -L/usr/i586-mingw32msvc/lib/libSDL_image.a -L/usr/i586-mingw32msvc/lib/libSDL_ttf.a)

    (un peu barbare), mais les erreurs restent les mêmes..

  5. #5
    Membre éclairé
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2010
    Messages
    517
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Santé

    Informations forums :
    Inscription : Avril 2010
    Messages : 517
    Points : 718
    Points
    718
    Par défaut
    Je ne me rappelle plus exactement de l'ordre des paramètres mais je pense qu'il faut placer la commande -L avant les -l: en gros tu dis où trouver les bibliothèques avant de les placer:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    i586-mingw32msvc-g++ -W -o hey.exe main.cpp -L/usr/i586-mingw32msvc/lib -lSDL -lGL -lGLU -lSDL_image -lSDL_ttf
    Je me suis mal exprimé dans mon message précédent. Je voulais dire -L<chemin_vers_le_dossier_des_bibliothèques

  6. #6
    Membre à l'essai

    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2015
    Messages
    29
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2015
    Messages : 29
    Points : 19
    Points
    19
    Billets dans le blog
    1
    Par défaut
    Deja merci de m'aider !
    ça parait plus logique déja, mais même avec cette commande les erreurs restent les mêmes... pourtant j'ai bien ces libs dans le dossier : Nom : d.png
Affichages : 208
Taille : 141,6 Ko
    ce ne sont peut etre pas les bonnes versions des libs ?

  7. #7
    Membre éclairé
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2010
    Messages
    517
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Santé

    Informations forums :
    Inscription : Avril 2010
    Messages : 517
    Points : 718
    Points
    718
    Par défaut
    Oui c'est fort possible que ce ne soit pas les bonnes versions des bibliothèques.
    Les as-tu installé avec apt-get ou autre installeur automatique?

    Sinon peux-tu simplement faire un copier le texte de ton erreur de compilation et le coller au sein d'une balise CODE (le #)? (C'est beaucoup plus simple)

  8. #8
    Membre à l'essai

    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2015
    Messages
    29
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2015
    Messages : 29
    Points : 19
    Points
    19
    Billets dans le blog
    1
    Par défaut
    je ne me rapelle plus du comment je les ai installées, mais je peux remplacer les biblioteques, quelles versions faut-il ?
    Désolé mais je n'ai aucune idée de comment fonctionne cette balise..

  9. #9
    Membre éclairé
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2010
    Messages
    517
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Santé

    Informations forums :
    Inscription : Avril 2010
    Messages : 517
    Points : 718
    Points
    718
    Par défaut
    Le plus simple serait d'installer une VM Windows avec l'installation d'une chaîne de compilation avec l'ensemble des bibliothèque que tu juges nécessaire.
    Si tu veux vraiment faire de la cross-compilation, je pense qu'il faut que tu recompiles l'ensemble des bibliothèques (au moins SDL, je ne sais pas comment c'est possible pour OpenGL) en utilisant i586-mingw32msvc-g++.
    Cherche sur internet, tu trouveras plein d'exemples.

  10. #10
    Membre à l'essai

    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2015
    Messages
    29
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2015
    Messages : 29
    Points : 19
    Points
    19
    Billets dans le blog
    1
    Par défaut
    J'ai eu des problèmes sous windows aussi, c'est vraiment galère de compiler sous windows car je n'ai pas de .h et autres galères liées a Windows..
    Ok je vais me renseigner sur comment recompiler une biblioteque, j'essaie tout ça ce soir et je redis si ça a fonctionné ou, le plus probable, quelles nouvelles erreurs seront apparues !

  11. #11
    Rédacteur/Modérateur


    Homme Profil pro
    Network game programmer
    Inscrit en
    Juin 2010
    Messages
    7 115
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : Canada

    Informations professionnelles :
    Activité : Network game programmer

    Informations forums :
    Inscription : Juin 2010
    Messages : 7 115
    Points : 32 965
    Points
    32 965
    Billets dans le blog
    4
    Par défaut
    Si déjà compiler sous Windows ta parait compliqué, alors faire de la cross-compilation...
    Quels galères peux-tu rencontrer ? Les .h c'est plateforme agnostique. Les .lib pour VS, les .a pour gcc, c'est spécifique au compilo, et tu as la même chose pour Unix - le code qu'ils contiennent ne se retrouve pas par magie lors d'une compilation Unix.
    Pensez à consulter la FAQ ou les cours et tutoriels de la section C++.
    Un peu de programmation réseau ?
    Aucune aide via MP ne sera dispensée. Merci d'utiliser les forums prévus à cet effet.

  12. #12
    Membre à l'essai

    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2015
    Messages
    29
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2015
    Messages : 29
    Points : 19
    Points
    19
    Billets dans le blog
    1
    Par défaut abandon
    Désolé pour la réponse tardive, j'ai eu quelques problèmes : Vous avez surement raison, c'est galère la cross-compilation, je vais seulement compiler sous windows et creer un nouveau forum pour mes nouveaux rpoblèmes, merci de votre aide !

Discussions similaires

  1. [Delphi : OpenGL / SDL] Problème de textures
    Par Carrick dans le forum Langage
    Réponses: 4
    Dernier message: 26/02/2009, 13h44
  2. Problème compilation CB/SDL
    Par dr_nietzsche dans le forum Code::Blocks
    Réponses: 2
    Dernier message: 14/09/2008, 16h13
  3. Problème compilation Glut/Opengl
    Par MathieuSkelling dans le forum C
    Réponses: 1
    Dernier message: 11/06/2008, 22h33
  4. Problème de compilation Qt + OpenGL
    Par Revanb dans le forum Autres éditeurs
    Réponses: 8
    Dernier message: 27/01/2008, 19h16
  5. problème compilation projet eclipse C++ opengl
    Par youp_db dans le forum Eclipse Java
    Réponses: 1
    Dernier message: 23/04/2007, 10h34

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo