Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 13/11/2007, à 08:26

Helldream

[C++]Compilation séparée et Code::Blocks

Salut,

Voila le problème. J'ai créé des classes pour des fonctions que j'utilise régulièrement. En particulier la classe Thread et la classe Socket. J'ai plusieurs projets qui utilisant ces classes (je fais un #include "Thread.h" pour chercher cette classe).

Mon soucis est que si je n'inclue pas les fichiers Thread.h et Thread.cpp dans mon projet, Code::Blocks ne veux pas compiler... Or, ça m'embête de devoir à  chaque fois ajouter tous les fichiers source de mes classes.

Est-il possible faire autrement, en modifiant entre autre les options de Code::Blocks?

Merci d'avance!

Hors ligne

#2 Le 13/11/2007, à 10:40

trucutu

Re : [C++]Compilation séparée et Code::Blocks

Tu pourrais créer des librairies dynamique de tes classes (.so) et jouer avec les options gcc -I et -L (je ne sais pas à  quoi ça correspond sous Code::Blocks...)


La chanson du dimanche - "La pêche !"
PC acheté chez Novatux : entièrement satisfait.
Faire des recherches solidaires !

Hors ligne

#3 Le 16/11/2007, à 08:59

Helldream

Re : [C++]Compilation séparée et Code::Blocks

Oui, sur l'idée c'est ce que j'aimerais faire. Le soucis, c'est que je ne sais pas comment faire (je vais chercher un peu plus dans cette direction)...

Faut-il créer un nouveau projet pour chaque librairie? Dois-je créer ces librairies sans Code::Blocks, et seulement après les intégrer dans mes projets? Bref, c'est flou pour moi tongue

Hors ligne

#4 Le 16/11/2007, à 09:12

pipomolo

Re : [C++]Compilation séparée et Code::Blocks

Le mieux est effectivement d'avoir un projet par librairie...je pense que Code::Blocks doit te proposer de créer une librairie, lorsque tu crées un nouveau projet...

Ensuite, dans un projet ou tu souhaites utiliser une de ces librairies, il te suffit d'indiquer à  Code::Blocks ou chercher ces librairies, ainsi que leur nom.

Je ne connais pas bien Code::Blocks, mais j'imagine qu'il doit y avoir ce genre de chose...sinon, tout cela peut être fait indépendamment de Code::Blocks, à  l'aide  de Makefile ....

Hors ligne

#5 Le 21/11/2007, à 10:31

Helldream

Re : [C++]Compilation séparée et Code::Blocks

Je viens de trouver un tuto qui a l'air complet à  propos des bibliothèques dynamiques sous Linux : http://hiko-seijuro.developpez.com/arti … dynamique/.
Cependant, ça me semble assez compliqué... Doit-on forcément utiliser dlopen, dlsym à  chaque fonction utilisée et dlclose? Ca me semble un peu complexe, juste pour ne pas avoir à  insérer les deux fichiers de ma classe dans chaque projet :S

N'existe-t'il  pas de moyen pour faire un simple include "maclasse.h" ou <maclasse>? Un peu comme <iostream>, en fait...

PS : Sous Code::Blocks, je n'ai trouvé que l'option "Static Library". Rien pour les bibliothèques dynamiques.

Hors ligne

#6 Le 21/11/2007, à 10:39

trucutu

Re : [C++]Compilation séparée et Code::Blocks

Tu n'a pas besoin d'utiliser ces fonctions si tu relies ta librairie libtoto.so avec ton programme au moment de l'édition des lien

g++ -L/path/libtoto.so -ltoto ...

La chanson du dimanche - "La pêche !"
PC acheté chez Novatux : entièrement satisfait.
Faire des recherches solidaires !

Hors ligne