Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2150 connectés 

 


Dernière réponse
Sujet : Comment compiler un programme avec une librairie dynamique ?
PinG au risque de jouer mes chieurs, ton makefile, il lui manque des trucs :
 
CC = gcc
DEBUG = -g
statexemple : statexemple.o  
$(CC) -o statexemple statexemple.o -L./ -llibstatistiq.so.1
 
statexemple.o : statexemple.c statistiq.h
$(CC) $(DEBUG) -c -o statexemple.o statexemple.c
 
libstatistiq.so.1 : moyenne.o ecarttype.o
$(CC) $(DEBUG) -shared -Wl,-soname,libstatistiq.so.1 -o libstatistiq.so.1 moyenne.o ecarttype.o
 
moyenne.o : moyenne.c statistiq.h
$(CC) $(DEBUG) --fPIC -c -o moyenne.o moyenne.c
 
ecarttype.0 : ecarttype.c statistiq.h
$(CC) $(DEBUG) -fPIC -c -o ecarttype.o ecarttype.c
 
clean:
        rm -f *.o core *.so* *.bak *~
 
... plus les section install, uninstall et consors...

Votre réponse
Nom d'utilisateur    Pour poster, vous devez être inscrit sur ce forum .... si ce n'est pas le cas, cliquez ici !
Le ton de votre message                        
                       
Votre réponse


[b][i][u][strike][spoiler][fixed][cpp][url][email][img][*]   
 
   [quote]
 

Options

 
Vous avez perdu votre mot de passe ?


Vue Rapide de la discussion
PinG au risque de jouer mes chieurs, ton makefile, il lui manque des trucs :
 
CC = gcc
DEBUG = -g
statexemple : statexemple.o  
$(CC) -o statexemple statexemple.o -L./ -llibstatistiq.so.1
 
statexemple.o : statexemple.c statistiq.h
$(CC) $(DEBUG) -c -o statexemple.o statexemple.c
 
libstatistiq.so.1 : moyenne.o ecarttype.o
$(CC) $(DEBUG) -shared -Wl,-soname,libstatistiq.so.1 -o libstatistiq.so.1 moyenne.o ecarttype.o
 
moyenne.o : moyenne.c statistiq.h
$(CC) $(DEBUG) --fPIC -c -o moyenne.o moyenne.c
 
ecarttype.0 : ecarttype.c statistiq.h
$(CC) $(DEBUG) -fPIC -c -o ecarttype.o ecarttype.c
 
clean:
        rm -f *.o core *.so* *.bak *~
 
... plus les section install, uninstall et consors...
Matheo Voilà mon énoncé au complet, ce sera plus clair comme ça.

Citation :

Les fichiers moyenne.c et ecarttype.c (qui utilisent le fichier statistiq.h) constituent les deux premiers modules d'une librairie dynamiquelibstatique.so.1 (qui dans sa première version sera libstatistiq.so.1.0). Le fichier statexemple.c permet de tester les fonctionnalités de la librairie.
- Écrire le makefile qui permet de créer l'exécutable statexemple et la librairie dynamique libstatistiq.so.1. Ces deux composantes doivent contenir les information de débogage.


 
Sur ce, le fichier makefile que j'ai créé ressemble à ça :
 
statexemple : statexemple.o  
 gcc -o statexemple statexemple.o -L./ -llibstatistiq.so.1
 
statexemple.o : statexemple.c statistiq.h
 gcc -g -c -o statexemple.o statexemple.c
 
libstatistiq.so.1 : moyenne.o ecarttype.o
 gcc -g -shared -Wl,-soname,libstatistiq.so.1 -o libstatistiq.so.1 moyenne.o ecarttype.o
 
moyenne.o : moyenne.c statistiq.h
 gcc -g -fPIC -c -o moyenne.o moyenne.c
 
ecarttype.0 : ecarttype.c statistiq.h
 gcc -g -fPIC -c -o ecarttype.o ecarttype.c

 
Vous pouvez m'aider ?

mean gcc -lstatistiq prog.c -o prog
 
Manquerait un lien que ca m'etonnerait pas...
vers .so.1.O <- .so
Matheo Bon voilà, pour un de mes lab à l'école je dois faire un makefile. J'ai dans le même répertoire une librairie dynamique (libstatistiq.so.1.0) et le fichier prog.c
Je dois créer le programme prog à partir de prog.c et libstatistiq.so.1.0.
 
C'est quoi la ligne de commande à passer à gcc pour que ça compile.  
Merci !

Copyright © 1997-2025 Groupe LDLC (Signaler un contenu illicite / Données personnelles)