Comment installer une librarie sous DevC++

Résolu
islem1982 Messages postés 22 Date d'inscription samedi 10 janvier 2004 Statut Membre Dernière intervention 4 octobre 2007 - 28 juil. 2007 à 13:56
islem1982 Messages postés 22 Date d'inscription samedi 10 janvier 2004 Statut Membre Dernière intervention 4 octobre 2007 - 4 oct. 2007 à 00:07
Salut tout le monde,

L'internet regorge de libraries qui nous permettent de nous faciliter le développement. Pour cela, je mesuis penché à l'utilisation de quelques unes afin d'accélérer le développement. J'utilise DevC++ vu que :
1- c'est gratuit.
2- il génère des codes performants (temps d'exécution+espace mémoire).
Le problème est que je ne connaisqu'un moyen pour installer une librarie sous DevC++. C'est avoir son devpak. Mais je ne connais pas comment développer un devpak (d'autant plus que les libraries que je manipule ne sont pas développées par moi).

Quelqu'un peut-t-il m'aider en m'indiquant comment installer une librarie directement sous DevC++ ou comment développer un devpak d'une librarie dont je ne connais absoluement rien du code.

Merci d'avance.
SIGMA

9 réponses

vincelefou Messages postés 16 Date d'inscription vendredi 24 décembre 2004 Statut Membre Dernière intervention 28 juillet 2007
28 juil. 2007 à 16:24
Bonjour,



<?xml:namespace prefix o ns "urn:schemas-microsoft-com:office:office" /??>
 




Pour installer une librairie avec Dev C++, il y a deux possibilités, l’une, automatique est sous forme de « package  Dev C++ », l’autre, manuelle consiste uniquement à recopier des fichiers des dossiers include et lib du répertoire de la librairie vers les dossiers include et lib du répertoire de Dev C++.



 




1/ Installer une librairie à partir d’un package Dev C++



 




Dans Dev C++ dans le menu Outils, aller à  Outils/Nouvelles versions-packages. Une nouvelle fenêtre apparaît.


En haut à droite le petit triangle noir pointe en bas indique une liste de site où trouver des packages pour Dev C++.Lorsqu’un Devpack server est sélectionné toute la liste des packages disponibles s’affiche l’espace nommé « Available update list ». Il suffit alors de sélectionner les packages souhaités puis de cliquer en bas à gauche sur  « Download selected ». Les fichiers sont téléchargés et recopiés dans le dossier « package » qui est dans le répertoire de Dev C++. Lorsque le téléchargement est terminé, aller dans le menu Outils à OUtils/PackageManager.


Dans le menu Package de cette fenêtre « pakage manager » sélectionner « Install Package ». Une troisième fenêtre s’ouvre où apparaît le contenu du dossier package de Dev C++.


Il n’y a plus qu’à sélectionner le package voulu et de cliquer sur ouvrir. Ensuite se laisser conduire par l’installation qui se fait automatiquement.



 




PS : Personnellement, je vais sur le site http://devpaks.org/. Là, je télécharge la libraire qui m’intéresse. Une fois téléchargée, je double-clique sur le fichier .DevPak qui est automatiquement reconnu par DevCpp…


 





2/ Installer une librairie à « la main »



 




Aller sur le site où se trouve la librairie et télécharger la.


PS :  les fichiers « bin » prévu pour DevC++,ils comprennent (au minimum) : include, lib et dll



 




Ensuite il suffit :


2.a) De copier le contenu du dossier ‘include’ de la librairie dans le dossier ‘include’ de Dev C++


2.b) Dans le dossier /lib/mingw32/  ou /lib/ de la librairie prendre tous les fichiers ayant comme extension « .a » et de les copier dans le dossier lib de Dev C++.


2.c) Copier la ou les DLLs dans le dossier WINDOWS/system  ou WINDOWS/system32 (pour XP).



 


 




Et voilà, avec cela, tu pourras utiliser ta librairie.






Vince Le Fou !
3
dletozeun Messages postés 546 Date d'inscription vendredi 13 février 2004 Statut Membre Dernière intervention 9 janvier 2008 1
28 juil. 2007 à 16:25
Salut,

Petite precision, ce n'est pas devcpp qui compile tes programmes, c'est gcc ou g++ (pour le c++). Tu peux utiliser ces compilateurs sans devcpp...
Sinon j'ai du mal a suivre ton probleme...
Si tu veux installé une librairie sans devpak tu peux mettre les lib dans le dossier lib du repertoire de devcpp et les header files dans le dossier include de devcpp. C'est pas plus compliqué que ca, a part si tu est sous windows tu dois aussi recuperer les dll corespondantes et les mettre dans le repertoire du systeme ( ca c'est si tu compile tes programmes en dynamique) .

Pour creer un devpak il doit bien y avoir des utilitaires pour le faire qui trainent sur le net...mais je pense pas que c'est le plus compliqué...
Le plus difficile est de créer la bibliotheque -> sous windows il faut exporter les fonctions dans des dll ( avec des marco spéciales, ya des tut la dessus sur le net). Sous linux tu as des commandes pour creer des librairies dynamiques et statiques ( la lib dynamique estr un peu la dll de windows).
Donc si tu connais pas le code de la lib que tu veux creer, sous linux c'est tres simple il faut utiliser les commandes appropriées : 'gcc' et 'ar', sous windows il faut exporter les fonctions vers une dll...
3
SAKingdom Messages postés 3212 Date d'inscription lundi 7 novembre 2005 Statut Membre Dernière intervention 16 février 2009 15
28 juil. 2007 à 16:15
Dans le répertoire de DevC++, tu devrais avoir un dossier nommé includes et lib (ou quelque chose dans le genre, fais trop longtemps que je n'utilise plus DevC++).

Suffis de placer les .h dans le rep includes et les .a dans le rep lib.

C++ (@++)<!--
0
dletozeun Messages postés 546 Date d'inscription vendredi 13 février 2004 Statut Membre Dernière intervention 9 janvier 2008 1
28 juil. 2007 à 16:26
lol , je suis vraiment trop lent moi!
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
islem1982 Messages postés 22 Date d'inscription samedi 10 janvier 2004 Statut Membre Dernière intervention 4 octobre 2007
29 juil. 2007 à 18:10
Merci à vous tout le monde (surtout à dletozeun) pour vos réponses précises et détaillées.

Le problème est que je n'arrive encore pas à résoudre le problème. En effet, la librarie que je veux implémenter, à savoir "google hash_map" disponible à http://code.google.com/p/google-sparsehash/, est destinée à l'orginine à être utilisée sous Linux. Il est vrai que cette libraire possède une variante sous Windows. Néanmoins, ils ont restreint son utilisation à l'environnement Visual C++. Il n' y a pas de fichiers .a dedans. A votre avis, est-t-il possible de l'installer sous Dev C++ ou pas.

Autre détail, pouvez-vous me préconiser un IDE, autre que le Dev C++, plus convivial, qui utilise le compilateur gcc ou g++.

SIGMA
0
dletozeun Messages postés 546 Date d'inscription vendredi 13 février 2004 Statut Membre Dernière intervention 9 janvier 2008 1
30 juil. 2007 à 18:24
"ils ont restreint son utilisation à l'environnement Visual C++."

Ca c'est le genre de truc que j'ai du mal a comprendre....
Ben normalement a partir de tout code source bien constutué on doit pouvoir reussir a créer une bibliotheque que ce soit sur windows ou linux. Tu peux donc installé cette bibliotheque en la recompilant sous windows de maniere a creer le fichier bibliotheque ( lib*.a) et la dll associée. (renseigne toit la dessus sur le net, c'est pas tres compliqué a faire.
Ca c'est la théorie.... Il est toujours plus difficile de parvenir a compiler un projet C quand ce n'est pas de son cru....et j'ai regardé rapidement le contenu des archives qu'il y a sur ton lien et ca a l'air d'etre le bordel! alors bon courage ^^
D'ailleurs elle sert a quoi cette bibliotheque?
0
islem1982 Messages postés 22 Date d'inscription samedi 10 janvier 2004 Statut Membre Dernière intervention 4 octobre 2007
2 oct. 2007 à 03:41
Désolé du retard de réponse, c'est l'enfer dans le travail. Enfin bref, cette bibliothèque implémente deux familles de conteneurs associatifs très efficaces, à savoir:

1- sparse_hash_set, sparse_hash_table et sparse hash_map: Cette famille de structures constitue une implémentation efficace en terme consommation espace mémoire. Il est connu que ces structures, présentes dans STL, consomment souvent beaucoup d'espace mémoire ce qui peut engendrer une lenteur dans les programmes. Cette famille de conteneurs pallie l'inconvénient précédemment mentionné.

2- dense_hash_set, dense_hash_table et dense_hash_map: cette famille de conteneurs sont optimisés pour les opérations usuelles courantes sur ces structures, à savoir l'insertion d'éléments, la suppression, la recherche...etc. Elles consomment bien plus d'espace mémoire que les structures de la famille susmentionnée mais elles nous font gagner beaucoup de temps d'exécution. Pour plus de détails, vous pouvez vous référer au lien que j'ai précédemment inséré dans cette discussion.

SIGMA
0
dletozeun Messages postés 546 Date d'inscription vendredi 13 février 2004 Statut Membre Dernière intervention 9 janvier 2008 1
2 oct. 2007 à 19:01
lol, joli retard en effet! ^^ Merci pour la précision en tout cas.
0
islem1982 Messages postés 22 Date d'inscription samedi 10 janvier 2004 Statut Membre Dernière intervention 4 octobre 2007
4 oct. 2007 à 00:07
De rien, c'est le moins que je puisse faire pour une personne qui a essayé de m'aider .

SIGMA
0
Rejoignez-nous