Utiliser la librairie X11 dans un projet C

Philippe49Philippe49 Membre
mai 2008 modifié dans Xcode et Developer Tools #1
Pour compiler un projet C + X11, j'utilise sur le terminal la commande
   gcc -I/usr/X11R6/include -L/usr/X11R6/lib -lX11

Si maintenant je fais un projet C dans XCode, comment faire pour utiliser cette bibliothèque?
Dans le panel Info, je règle
Header Search Path à  /usr/X11R6/include 
Library Search Paths à  /usr/X11R6/lib

J'ai mis -lX11 dans Other C Floags mais après essai , le linker se plaint de ne pas trouver les fonctions X11 : pourquoi le -lX11 n'est-il pas suffisant , où faut-il le mettre ?

Réponses

  • Philippe49Philippe49 Membre
    juin 2008 modifié #2
    Bon il ne se plaint plus en copiant les exécutables , mais peut-on on peut se contenter d'une référence à  cette librairie plutôt que de la copier en dur dans le projet ?
  • Philippe49Philippe49 Membre
    mai 2008 modifié #3
    dans 1212039398:

    mais peut-on se contenter d'une référence à  cette librairie plutôt que de la copier en dur dans le projet ?

    Yes : <3 <br />-lX11 dans Other Linker Flags
    XCodumentation
    Maintenant on peut faire sans l'inclusion de la bibliothèque dans Link Binary ... et en supprimant Other C Flags

    Comment lancer l'exécutable sous l'environnement X11 directement à  partir de XCode ?
  • Philippe49Philippe49 Membre
    20:54 modifié #4
    dans 1212042427:

    Comment lancer l'exécutable sous l'environnement X11 directement à  partir de XCode ?


    Une solution pas brillante :
    • Lancer X11 (dossier /Applications/Utilities/X11.app) 
    • Double-Clic sur l'exécutable dans le répertoire Products
     

    Il doit y avoir mieux ... mais pour l'instant les boutons et raccourcis claviers sont inopérants.
  • Philippe49Philippe49 Membre
    mai 2008 modifié #5
    X11CallCarbonAndCocoa fournit un exemple qui ne met aucune des options signalées dans ce post (??)
    Les bibliothèques utilisées Xt, Xaw, ... sont au-dessus du système XWindow
Connectez-vous ou Inscrivez-vous pour répondre.