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

Apple Discussion :

Link Framework SFML avec CMake


Sujet :

Apple

  1. #1
    Nouveau membre du Club
    Inscrit en
    Mars 2007
    Messages
    34
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 34
    Points : 35
    Points
    35
    Par défaut Link Framework SFML avec CMake
    Bonjour,

    j'ai un souci de Link...

    En effet pour un projet multiplateforme (Linux, Mac) en C++ il a été intéressant (cf changement de plateforme, IDE etc) d'utiliser CMake.
    Comme la librarie choisit est la SFML et qu nous n'avions pas de souci pour lancer des projets sur les différentes plateformes séparément on aurait pu croire que passer a CMake serait facile, mais..

    Si lier une lib sur linux est d'une limpidité sans pareil pour moi (-I /usr/include/SFML... et dossier de lib /usr/lib/) j'ai été impressioné par mon incapacité à le faire sur Mac.

    Sous mac, on peut apparemment mettre les lib proprement en partagé entre les user de la même facon que sur une plateforme UNIX, mais on peut aussi utiliser des FrameWorks.

    C'est super a priori les Framework, mais je suis incapable de lier la dite lib (j'ai essayé /Librairy/Frameworks/ comme dossier, mais ca ne suffit pas)

    Comment fait-on SVP ??

    merci d'avance

  2. #2
    Expert confirmé
    Homme Profil pro
    Inscrit en
    Septembre 2006
    Messages
    2 957
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2006
    Messages : 2 957
    Points : 4 386
    Points
    4 386
    Par défaut
    Citation Envoyé par dzada Voir le message
    Bonjour,

    j'ai un souci de Link...

    En effet pour un projet multiplateforme (Linux, Mac) en C++ il a été intéressant (cf changement de plateforme, IDE etc) d'utiliser CMake.
    Comme la librarie choisit est la SFML et qu nous n'avions pas de souci pour lancer des projets sur les différentes plateformes séparément on aurait pu croire que passer a CMake serait facile, mais..

    Si lier une lib sur linux est d'une limpidité sans pareil pour moi (-I /usr/include/SFML... et dossier de lib /usr/lib/) j'ai été impressioné par mon incapacité à le faire sur Mac.

    Sous mac, on peut apparemment mettre les lib proprement en partagé entre les user de la même facon que sur une plateforme UNIX, mais on peut aussi utiliser des FrameWorks.

    C'est super a priori les Framework, mais je suis incapable de lier la dite lib (j'ai essayé /Librairy/Frameworks/ comme dossier, mais ca ne suffit pas)

    Comment fait-on SVP ??

    merci d'avance
    les librairies dynamiques "pure Unix" ne doivent pas être converties en Framework…
    vous pouvez vous amuser à le faire mais ce n'est pas nécessaire… et pour faire un Framework correctement, vous avez tout intérêt à utiliser XCode… un Framework est un bundle qui doit respecter une structure bien précise de dossiers et sous-dossiers…

    vous devez par contre réfléchir à la problématique d'installation sur la machine du client :
    soit vous fournissez un installateur qui copiera la librairie là où votre programme s'attend à la trouver (/usr/lib/… (… mauvaise idée en passant…) ou /usr/local/lib par exemple…)
    soit si votre application est elle-même packagée comme un bundle .app vous décidez d'inclure la librairie dans le bundle de l'application (myapplication.app/Resource/lib par exemple…),
    vous devez alors ajouter dans votre Makefile une étape de copie de la librairie à cet endroit…

  3. #3
    Nouveau membre du Club
    Inscrit en
    Mars 2007
    Messages
    34
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 34
    Points : 35
    Points
    35
    Par défaut
    Bonjour,

    Merci pour la réponse déja, mais j'ai du mal la poser..

    Je ne cherche pas à installer cette librarie elle est déjà correctement installé, elle est externe, enfin pas de problème de ce coté.

    Mon problème c'est de la linker lors de la compilation de mon projet qui utilise cette librairy.

    Le problème est donc de réussir à linker sur Unix les fichier venant de /usr/inlude et /usr/lib et d'un autre coté sur mac la meme librairie mais qui est installée sous forme de framework cette fois.

    Le tout dans un fichier CMakeList

    Merci d'avance

  4. #4
    Expert confirmé
    Homme Profil pro
    Inscrit en
    Septembre 2006
    Messages
    2 957
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2006
    Messages : 2 957
    Points : 4 386
    Points
    4 386
    Par défaut
    Citation Envoyé par dzada Voir le message
    Bonjour,

    Merci pour la réponse déja, mais j'ai du mal la poser..

    Je ne cherche pas à installer cette librarie elle est déjà correctement installé, elle est externe, enfin pas de problème de ce coté.

    Mon problème c'est de la linker lors de la compilation de mon projet qui utilise cette librairy.

    Le problème est donc de réussir à linker sur Unix les fichier venant de /usr/inlude et /usr/lib et d'un autre coté sur mac la meme librairie mais qui est installée sous forme de framework cette fois.

    Le tout dans un fichier CMakeList

    Merci d'avance
    lire la doc de gcc…
    pour les frameworks :
    -framework
    -F
    et pour l'OS/hardware cible
    -arch
    -isysroot
    -mmacosx-version-min

    sont des flags spécifiques à l'environnement Mac…

  5. #5
    Nouveau membre du Club
    Inscrit en
    Mars 2007
    Messages
    34
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 34
    Points : 35
    Points
    35
    Par défaut
    Re-bonjour

    merci beaucoup.

    Par contre, utiliser le framework avec gcc, meme si ca m'intéresse, ne me dit pas comment l'intégrer à CMakeList.

    Mon problème est que je sais compiler indépendamment sur les deux plateforme, mais je veux configurer tout ca pour que le CMakeList puisse gérer cette liaison de lib tout seul et qu'il génère les makefile en fonction.

    Merci encore

  6. #6
    Nouveau membre du Club
    Inscrit en
    Mars 2007
    Messages
    34
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 34
    Points : 35
    Points
    35
    Par défaut Up
    Bon, juste au cas où,

    je n'ai toujours pas trouvé comment lier le framework sfml avec le cmakelist.txt

    merci d'avance

Discussions similaires

  1. souci d'installation SFML-2.1 avec CMAKE
    Par Invité dans le forum Bibliothèques
    Réponses: 4
    Dernier message: 09/12/2013, 14h39
  2. [STRUTS][AJAX]Quel framework AJAX avec Struts
    Par woodwai dans le forum Struts 1
    Réponses: 24
    Dernier message: 12/03/2009, 16h19
  3. Link de GLUT avec DEV-C++
    Par PONSOLLE dans le forum Dev-C++
    Réponses: 2
    Dernier message: 03/11/2006, 17h27
  4. [debutant] Ajax frameworks compatibles avec struts
    Par saif_21 dans le forum Struts 1
    Réponses: 10
    Dernier message: 21/08/2006, 09h58
  5. erreur de link sous wxWidgets avec Mingw
    Par pyoda dans le forum wxWidgets
    Réponses: 4
    Dernier message: 28/04/2006, 19h03

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