Créer une bibliotheque en c++

Bonjour, j'ai créé un ensemble des fonction generant des lois aleatoires usuelles et je voudrais en faire une bibliotheque pour pouvoir appeler ces fonctions depuis n'importe qu'elle code c++.

Mais le probleme c'est que je n'ai "aucune" notion sur comment faire cela.
Je sais que je dois faire un *.h, puis generer une bibliotheque statique .a .

Mais comment proceder?

J'utilise devc++, mais si vous savez comment m'expliquer pour créer ca sans l'aide de dev c++(en compilant un a un ce qu'il faut sans utiliser un projet) je suis preneur aussi.

Merci de votre aide...
Configuration: Windows XP
Firefox 2.0.0.8

6 réponses

  1. Contributeur
    Salut BQss
    Ton message date un peu, je ne l'ai pas vu plus tôt. Bref...
    Pour générer une bibliothèque, il faut bien séparer l'implementation des fonctions et variable à mettre dans les .cpp de leurs déclaration à mettre dans les .h.
    Une fois que cela est fait, tu compile le tout de façon à transformer tes .cpp en .o
    Là, le plus gros du boulot est fait. Il suffit ensuite d'archiver tout les .o dans un .a, grace à la commande ar :
    ar -r libTOTO.a *.o
    puis il faut faire l'index :
    ranlib libTOTO.a
    quelques rappel sur les déclaration :
    double a;
    est une déclaration ET une implémentation, dans un .h il faut mettre extern double a;
    les class est struct doivent être mise. Il existe deux type de déclaration :
    class a; qui défini juste la class a afin de pouvoir utiliser a comme type
    class a{...}; contenant l'ensemble des membres de la class. Les fonctions, constructeurs et méthodes de la classe sont aussi à implémenter dans un .cpp.
    En revanche, les template et fonction inline sont à conserver dans le .h.

    Une fois ton .a créé, il faut inclure les .h dans ton fichier source où tu veux utilisé ta bibliothèque, et lier la bibliothèque avec -lTOTO sous gcc.
    19
    1. plz je peut demander d'envoyer un langage c de bibliotheque parce que j'ai un mini projet pour le faire et j'ai besoin de vous
      1
      1. Salut , j ai besoin la liste des matèrieaux pour monter une bibliothèque virtuelles
        merci bye @+ portez vous bien
        0
        1. moi je veut creer une bibliothèque virtuel "médiathèque" pour ranger met 500 et peut etre plus dvd comment faire
          0
          1. -.-'
            0
          2. -_- -_- -_- -_- -_- -_-
            0
        2. Salut !!
          Après avoir créé libTOTO.a, comment faire ensuite. Je m'explique, ma librairie contient un fichier op_base.h et le op_base.cpp associé.
          Dans mon source principal, j'inclus comme ça:
          #include <op_base.h>
          ...
          et je compile comme ça:
          g++ -l chemin/libTOTO.a -c code.cpp
          Mais il me dit que op_base.h n'existe pas.
          J'ai essayé d'enlever le .a, d'enlever le préfixe lib,... mais rien n'y fait

          Que faut-il faire ?
          0
          1. Contributeur
            il faut lui donner le .h:
            g++ -lTOTO -Ichlin_to_op_base.h code.cpp

            Le .h ne sert à rien dans le .a, il doit être à part.
            0
        3. quesqu'il faut faire pour crée un bibliothéque en C++
          -1
          1. Contributeur
            Heu.... 8-(
            Tu sais lire ? C'est ce que j'explique le message d'avant.
            0