j'aimerais savoir comment créer une librairie (libtest.a) en c++ l'utiliser en c++ et en c sous linux
 comment créer une librairie c++ et l'utiliser en c/c++
 comment créer une librairie c++ et l'utiliser en c/c++
				
				
						
						
				j'aimerais savoir comment créer une librairie (libtest.a) en c++ l'utiliser en c++ et en c sous linux
 
 
				
				
						
						
				Quel est le problème ? Produire le .a ? Ou bien linker du code C avec une biblio C++ ?
(Seul bémol des libs C++, le compilo qui compile/linke le programme final doit être le même que celui qui a produit la lib. C'est particulièrement vrai sous Windows (où il y a beaucoup de compilos différents), mais aussi parfois d'une version d'un compilo à la suivante.)
Blog|FAQ C++|FAQ fclc++|FAQ Comeau|FAQ C++lite|FAQ BS|Bons livres sur le C++
Les MP ne sont pas une hotline. Je ne réponds à aucune question technique par le biais de ce média. Et de toutes façons, ma BAL sur dvpz est pleine...
 mon problème est l'utilisation de la lib
 mon problème est l'utilisation de la lib
				
				
						
						
				En fait mon pb c'est effectivement que je n'arrive pas à lier le (libtest.a) à l'ade de ranlib; lorsque je tape "ranlib libtest.a" linux ne produit pas d'erreur mais lorsque je veut utiliser la librairie, linux me signale que la librairie "test" n'a pas d'index et qe je dois utiliser ranlib pour le créer: je tourne en rond
 
 
				
				
						
						
				C'est quoi ta ligne de commande pour l'édition des liens ?
 je compile comme ceci et ca ne marche pas
 je compile comme ceci et ca ne marche pas
				
				
						
						
				En fait voici toute ma démarche:
je suis dans le répertoire /home/
je crée le rep mylib et je me positionne dedans: cd mylib
je créé mylibtest.h suivant
je crée mylibtest.cpp suivant
Code : Sélectionner tout - Visualiser dans une fenêtre à part 
2
3
4
je le compile avec
Code : Sélectionner tout - Visualiser dans une fenêtre à part 
2
3
4
5
g++ -c mylibtest.cpp
je crée le fichier librairie avec
ar cr libtest.a mylibtest.o
je lie les objets à l'intérieur avec
ranlib libtest.a
puis je crée le fichier exec.cpp qui utilisera cette lib
lorsque je le compile avec
Code : Sélectionner tout - Visualiser dans une fenêtre à part 
2
3
4
5
g++ exec.cpp -L. -ltest exec_cpp
j'obtient le message selon lequel la librairie test n'a pas d'index et que je dois utiliser la commande ranlib pour en créer 1.
je le fais et j'ai toujours le même message
je tourne en rond
Partager