Bienvenue invité ( Connexion | Inscription )
Il est interdit de poster directement à la racine de ce forum.
Veuillez créer votre topic dans le sous-forum approprié.
18 Nov 2002, 16:36
Message
#1
|
|
![]() Macbidouilleur de vermeil ! ![]() ![]() ![]() ![]() Groupe : Membres Messages : 1 075 Inscrit : 21 Feb 2002 Lieu : Drôme (26) Membre no 2 097 |
Voila, je suis étudiant en école d'ingénieur et j'ai un projet en langage C à réaliser. Ce projet contiendra une interface graphique utilisant la librairie X11 (propres au systemes Unix)
Ma question est de savoir si une telle lmibrairie est imp)lementée à OS X ou , dans le cas contraire, si il était possible de l'installer ... Merci |
|
|
|
![]() |
1 Sep 2003, 23:16
Message
#2
|
|
|
Macbidouilleur de vermeil ! ![]() ![]() ![]() ![]() Groupe : Membres Messages : 1 293 Inscrit : 25 Apr 2003 Membre no 7 294 |
Attention, confusion entre librairies et headers !
Il ne faut surtout pas mettre "LIBS = -L/usr/X11R6/include/ -lX11 -lm" ! Bon une petite explication sur les options du compilo concernant les libs et les headers : un header, c'est un fichier donnant la "signature" des fonctions d'un code. Il se présente sous la forme d'un fichier .h. Une librairie, c'est ce qui contient le vrai code respectant lesdites signatures. Par exemple pour compiler une appli qui utilise X11, il faut les headers X11 pour que le compilo il vérifie les fonctions X11 que tu appelles. Ensuite, quand tout le code est compilé, il faut créer l'exécutable (ou la librairie si on fait une lib) en "linkant" avec les librairies X11. Alors l'option -I c'est pour indiquer au compilo dans quels répertoires aller chercher les headers. Par défaut il va dans des endroits comme /usr/include, /usr/local/include, etc. Pour X11, il faut ajouter le chemin /usr/X11R6/include qui contient tous les headers de X11. On peut ajouter plusieurs chemins avec plusieurs -I. Ainsi, quand le compilo voit dans le code un "#include <toto.h>" il va chercher un fichier nommé toto.h dans tous les répertoires par défaut et indiqués par les -I. Et pour "#include <truc/tutu.h>" il va chercher les répertoires nommés truc qui possèdent un fichier tutu.h. De même, l'option -L c'est pour les libs : on indique les chemins des répertoires contenant les libs. Pour X11, elles sont dans /usr/X11/lib, et pas du tout dans /usr/X11R6/include, d'où ton erreur (le makefile est bon de ce point de vue). Et l'option -l c'est pour indiquer quelles librairies on utilise (link), et le compilo va les chercher... dans les chemins indiqués par les -L, la boucle est bouclée Bon maintenant ton makefile, oui, il est moisi LIBS est bon, il indique bien le chemin où aller chercher la lib X11 (et dit aussi de linker avec une lib de math trouvable dans le chemin par défaut). Mais il manque les headers ... Une solution, ajouter avant CFLAGS : X11HEADERS = -I/usr/X11R6/include Puis modifier CFLAGS : CFLAGS= -Wall -g $(X11HEADERS) |
|
|
|
Kenny librairies X11 pour OSX ... 18 Nov 2002, 16:36
samsam Bonjour,
Va faire un tour du côté de :
fink.so... 18 Nov 2002, 16:52
Kenny ... 18 Nov 2002, 19:18
ReunionBoy Si tu es sous Jaguar il n'existe pas encore de ver... 18 Nov 2002, 21:09
Kenny ... 18 Nov 2002, 21:36
samsam Bonjour,
Fink est TOTALEMENT compatible avec Jagu... 19 Nov 2002, 09:14
atarxerxes Tu peux également trouver un pas à pas en franç... 19 Nov 2002, 09:54
Kenny ... 19 Nov 2002, 19:22
sky.x J'en profite pour redemander c'est quoi la ligne d... 19 Nov 2002, 22:40
ReunionBoy QUOTE Bonjour,
Fink est TOTALEMENT compatible ave... 19 Nov 2002, 22:56
sky.x Pas compatible Jaguar ? J'ai eu a l'apple expo un ... 19 Nov 2002, 23:07
ReunionBoy QUOTE Pas compatible Jaguar ? J'ai eu a l'apple ex... 19 Nov 2002, 23:28
sky.x Oups, j'ai repondu a cote..
Je vais me couche il e... 19 Nov 2002, 23:34
samsam QUOTE J'en profite pour redemander c'est quoi la l... 20 Nov 2002, 09:09
sky.x Merci samsam, en fait mes souvenir etaient faux, i... 20 Nov 2002, 11:03
Kenny petit pb de compilation. 20 Nov 2002, 20:30
sky.x C'est en fait ma question de tout a l'heure (au de... 20 Nov 2002, 21:54
sky.x ARGH ! Ca ne fonctionne pas non plus :
J'ai un me... 21 Nov 2002, 12:44
samsam QUOTE J'ai un message "ld: Undefined symbols:"
E... 21 Nov 2002, 14:08
robux4 Peut-être que XClearWindow est pas implémenté d... 21 Nov 2002, 14:16
robux4 J'ai peut-être dit une connerie (et je vais peut-... 21 Nov 2002, 14:21
robux4 Pour info, t'auras quasiment la même ligne de com... 21 Nov 2002, 14:22
sky.x Je viens d'assayer tout ca (ajouter -IX11, et -L/s... 21 Nov 2002, 15:36
samsam QUOTE Je viens d'assayer tout ca (ajouter -IX11, e... 22 Nov 2002, 15:35
MacJL Salut...
Je déterre un peu le sujet, mais j'ai u... 22 Jun 2003, 22:40
ReunionBoy manque des trucs là 22 Jun 2003, 23:41
Driden Tout ce que je peux te dire, et à mon avis c'est ... 22 Jun 2003, 23:42
MacJL Les 3 liibrairies qu'il me manquent sont aussi dan... 23 Jun 2003, 08:52
Driden Comme tu peux le voir le répertoire de l'alias LI... 23 Jun 2003, 11:45
MacJL il faut que je remplace:
LIBS = -L/usr/X11R6/l... 23 Jun 2003, 11:49
Driden Commences par remplacer par le bon répertoire et ... 23 Jun 2003, 11:50
sky.x Exact. De plus pas besoin de fink pour en arriver ... 23 Jun 2003, 12:46
MacJL C'est bien le X11 d'Apple que j'ai utilisé. 14 Jul 2003, 19:10
MacJL Je relance le sujet, car je ne m'en sort pas. Je v... 30 Aug 2003, 21:04
MacJL Merci beaucoup pour tes explications! J'ai fait ce... 2 Sep 2003, 16:37
ploute Hum, j'ai une bonne et une mauvaise nouvelle. Mais... 2 Sep 2003, 18:50
ploute Enfin évidemment tu as le second choix de modifie... 2 Sep 2003, 19:03
MacJL En fait, il y a deux versions du programme. Une op... 2 Sep 2003, 22:36
MacJL Arghh!! En fait, la fonction ftime() n'est pas uti... 2 Sep 2003, 22:45
MacJL Et comment ça s'installe ce truc au fait???? :-? ... 2 Sep 2003, 23:00
ploute Tu télécharges et tu lis les instructions.... je... 3 Sep 2003, 20:12
MacJL QUOTE Tu télécharges et tu lis les instructions.... 3 Sep 2003, 20:23
ploute Okay si y'a pas de readme, alors c'est qu'il y a j... 4 Sep 2003, 08:04
MacJL Pour voir ce qu'il y a dans l'archive:
http://hom... 4 Sep 2003, 17:10
ploute Okay, en fait tu as tout ce qu'il faut pour le com... 5 Sep 2003, 18:08
MacJL CODECC =gcc
X11HEADERS = -I/usr/X11R6/include
CF... 5 Sep 2003, 18:22
ploute Bon là ça devient du bricolage pour essayer de c... 6 Sep 2003, 12:31
MacJL Les sources sont ici:
http://homepage.mac.com/mac... 6 Sep 2003, 17:40
ploute Bon encore une fois g une bonne et une mauvaise no... 6 Sep 2003, 22:29
MacJL Ok... Je viens de changer BiblioX11.c . Ca complil... 9 Sep 2003, 16:10
MacJL Je ressort le post à la surface:
J'ai été ... 18 Jan 2004, 20:41
dulrich t'arrives à faire un résumé de ce que tu as... 18 Jan 2004, 21:12
Ptinutz Je profites de ce post sur les librairies pour pos... 23 Dec 2004, 14:45![]() ![]() |
| Nous sommes le : 3rd November 2025 - 09:46 |