recherche dans les librairies en C [Réglé]
comment trouver ce qu'on cherche ?
Logiciels / Autres logiciels

marc-andré Membre non connecté
-
- Voir le profil du membre marc-andré
- Inscrit le : 29/09/2015
- Groupes :
Je poste ce message ici espérant que c'est le bon endroit.
Je précise qu'il ne s'agit pas d'un problème, et que ce n'est pas urgent.
contexte:
Me voilà lancé dans l'apprentissage du C; je n'avais pratiqué jusqu'à présent que le Pascal, c'est un changement radical de "culture".
J'ai ramé pendant un bon mois mais grâce a des séries de vidéo sur Youtube, je commence à m'amuser un peu!
M'intéressant aux arbres binaires, j'ai écrit le mien qui marche bien (je savais le faire en pascal); mais, je découvre grâce à wikipédia l'existence de toute une série de variantes passionnantes; puis je tombe sur une librairie "libubiqx" qui contient de bons exemples à méditer.
Il y a même un "makefile" pour faire toute l'installation.
Donc me voilà sur le point d'installer ce truc là; toutefois je m'interroge sur l'opportunité de cette manip, pour plusieurs raisons :
- d'abord cette librairie n'est pas très récente, elle est peut-être obsolète ?
-ensuite, je n'ai jamais fait cela encore : récupérer des sources et les compiler pour les installer;
Je me suis dis que le mieux serait d'aller voir dans le CCM si je ne trouve pas la solution.
Comme je n'ai pas trouvé la librairie en question, je pose la question avant de faire n'importe quoi:
1 y a t-il une librairie en C dans le CCM qui implémente les arbres binaires, AVL, SplayTree, ect ?
2 la lib_ubi_qx est elle encore d'actualité et puis je lancer le make avec le makefile fourni sans problème ?
PS : j'ai essayer de suivre en parallèle une formation en C++ ; mais c'est suffisamment différent du C pour que ça m'embrouille plus qu'autre chose; donc, j'ai décidé de faire que du C pendant un certain temps; puis je passerai au C++, ensuite; donc, il y a peut être des solutions en C++ mais je n'ai même pas cherché; ça ne correspond pas à mon planning de formation actuel.
Merci d'avance
HP ProDesk ;
Mageia8 Gnome
Liberté et sécurité sont les arguments classiques pour LINUX. En prime il y a aussi la dignité et la confiance ressentie depuis que je suis sous Mageia
Mageia8 Gnome
Liberté et sécurité sont les arguments classiques pour LINUX. En prime il y a aussi la dignité et la confiance ressentie depuis que je suis sous Mageia

Papoteur Membre non connecté
-
- Voir le profil du membre Papoteur
- Inscrit le : 03/10/2011
- Groupes :
-
Modérateur
-
Équipe Mageia
-
Administrateur
-
Forgeron
Avec une recherche sur avl avec le CCM, parmi les descriptions des paquetages, je trouve :
lib64cprops15 - C Prototyping Tools
Attention : C'est un paquetage officiel qui est supporté par Mageia
The C Prototyping Tools library provides thread-safe linked list, priority queue, hash table, hash list, AVL tree and trie implementations, as well as a thread pool and a thread management framework, a TCP and an HTTP socket API, and a DBMS abstraction layer.
Attention : C'est un paquetage officiel qui est supporté par Mageia
The C Prototyping Tools library provides thread-safe linked list, priority queue, hash table, hash list, AVL tree and trie implementations, as well as a thread pool and a thread management framework, a TCP and an HTTP socket API, and a DBMS abstraction layer.
Cà semble correspondre à ton cahier des charges.

Yves

marc-andré Membre non connecté
-
- Voir le profil du membre marc-andré
- Inscrit le : 29/09/2015
- Groupes :
Mais comment fait-on ?
Moi je viens d'essayer : je tape AVL ou avl ou avl tree etc dans la recherche, et je n'obtiens jamais rien.
Il y a quelque chose qui m'échappe dans cette recherche des paquetages dans le ccm.
Bon connaissant le nom du paquet tout va bien.
Donc j'ai bien téléchargé cette librairie, je vais essayer maintenant d'apprendre à m'en servir.
A bientôt
HP ProDesk ;
Mageia8 Gnome
Liberté et sécurité sont les arguments classiques pour LINUX. En prime il y a aussi la dignité et la confiance ressentie depuis que je suis sous Mageia
Mageia8 Gnome
Liberté et sécurité sont les arguments classiques pour LINUX. En prime il y a aussi la dignité et la confiance ressentie depuis que je suis sous Mageia

marc-andré Membre non connecté
-
- Voir le profil du membre marc-andré
- Inscrit le : 29/09/2015
- Groupes :
bon je recommence donc
J'ai bien installé la lib en question et après ?
J'aurai du signaler mon ignorance à ce niveau.
La semaine dernière, lors de ma première recherche, je me suis repassé les 1335 paquets un à un; sur le lots, d'après la très sommaire description j'en avais installé 3 qui me semblaient peut être utile du genre :
-task-c-devel-2011
-lib64collection4
-lib64basicobjects
une semaine après, j'en sais toujours rien, car je ne les ai pas trouvé pardi
et c'est pareil ce soir avec lib64cprops15; l'installation a semblé se dérouler normalement ....
avec locate, en root et depuis la racine / il me trouve 2 malheureux fichiers :
README sans intérêt et un ChangeLog anecdotique
mais où se trouve les fichiers .h avec la description des structures de données et des prototypes ?
c'est encore une énigme
dans le README, il y a référence à "man3 directory" ?? pas trouvée
ou il suggère aussi la commande man -M .cprops ; qui ne donne rien.
De toute façon c'est un problème récurrent sur ce système, on ne trouve jamais rien de ce que l'on cherche;
Par exemple, quand j'ai voulu écrire mon premier programme en C j'ai cherché la description officielle des types (puisque sur les bouquins, c'est tout ce qu'il y a de plus flou, pour un pascalien !); bon je n'ai jamais réussi; et finalement, le premier programme ce fut celui a qui j'ai demandé d'afficher le sizeof de tous les types, y compris ceux que j'avais crée; ce fut le seul moyen que j'ai trouvé; vraiment désolant!
Il y a un culture du mystère, du secret à laquelle je n'arrive pas à m'habituer.
HP ProDesk ;
Mageia8 Gnome
Liberté et sécurité sont les arguments classiques pour LINUX. En prime il y a aussi la dignité et la confiance ressentie depuis que je suis sous Mageia
Mageia8 Gnome
Liberté et sécurité sont les arguments classiques pour LINUX. En prime il y a aussi la dignité et la confiance ressentie depuis que je suis sous Mageia

Papoteur Membre non connecté
-
- Voir le profil du membre Papoteur
- Inscrit le : 03/10/2011
- Groupes :
-
Modérateur
-
Équipe Mageia
-
Administrateur
-
Forgeron
Oui merci.
Mais comment fait-on ?
Moi je viens d'essayer : je tape AVL ou avl ou avl tree etc dans la recherche, et je n'obtiens jamais rien.
Il y a quelque chose qui m'échappe dans cette recherche des paquetages dans le ccm.
Mais comment fait-on ?
Moi je viens d'essayer : je tape AVL ou avl ou avl tree etc dans la recherche, et je n'obtiens jamais rien.
Il y a quelque chose qui m'échappe dans cette recherche des paquetages dans le ccm.
Bonjour Marc-André,
Dans le CCM/rpmdrake, tu cliques sur la paire de jumelles, et tu a le choix de chercher parmi les noms, la description, le résumé et le nom des fichiers. C'est la zone 3 de l'écran documenté ici
Les fichiers .h se trouvent dans un autre paquetage, lib64cprops-devel - Development files for libcprops.
En général, la librairie compilée est fournie d'un côté pour le fonctionnement des logiciels déjà compilés, et la partie nécessaire à la compilation est fournie séparément, dans les paquetages d'extension -devel.
Dans le rpmdrake, tu peux connaître les fichiers fournis et leur emplacement dans la zone 7 de l'écran cité précédemment.
Citation:
dans le README, il y a référence à "man3 directory" ?? pas trouvée
ou il suggère aussi la commande man -M .cprops ; qui ne donne rien.
ou il suggère aussi la commande man -M .cprops ; qui ne donne rien.
Il s'agit des pages de manuel, catégorie 3, accessibles par la commande "man", par exemple "man cp_avltree " ou simplement "man cprops"
Elles sont également accessibles par l'application khelp (aide de KDE), Contenu "Pages de manuel d'UNIX", partie "(3) Sous-programmes".
J'espère que tu trouveras là les points d'entrée qui te manquent.
Yves

marc-andré Membre non connecté
-
- Voir le profil du membre marc-andré
- Inscrit le : 29/09/2015
- Groupes :
J'ai tout trouvé et j'ai commencé à m'y plonger
a tel point que je n'ai pas vu l'heure! faut que j'aille dormir
merci pour ton aide précieuse et je marque résolu
HP ProDesk ;
Mageia8 Gnome
Liberté et sécurité sont les arguments classiques pour LINUX. En prime il y a aussi la dignité et la confiance ressentie depuis que je suis sous Mageia
Mageia8 Gnome
Liberté et sécurité sont les arguments classiques pour LINUX. En prime il y a aussi la dignité et la confiance ressentie depuis que je suis sous Mageia

kalagani Membre non connecté
-
- Voir le profil du membre kalagani
- Inscrit le : 10/03/2012
- Groupes :
une recherche en ligne de commande pour trouver dans quel paquet se trouve un fichier, par ex stdio.h
Code BASH :
urpmf stdio.h |grep -E /stdio.h$
Paquet en début de ligne grâce à urpmf + fichier stdio.h encadré uniquement en fin de ligne grâce au grep -E /...$
Cela donne sur Mageia5 avec les médias courants (
Caché :
Code BASH :
sdcc:/usr/share/sdcc/include/pic16/stdio.h sdcc:/usr/share/sdcc/include/stdio.h dev86-devel:/usr/lib64/bcc/include/stdio.h mingw64-gcc:/usr/lib64/gcc/x86_64-w64-mingw32/4.8.1/include/ssp/stdio.h mingw32-gcc-c++:/usr/i686-w64-mingw32/sys-root/mingw/include/c++/tr1/stdio.h mingw32-gcc:/usr/lib64/gcc/i686-w64-mingw32/4.8.1/include/ssp/stdio.h mingw64-gcc-c++:/usr/x86_64-w64-mingw32/sys-root/mingw/include/c++/tr1/stdio.h mingw64-headers:/usr/x86_64-w64-mingw32/sys-root/mingw/include/stdio.h mingw32-headers:/usr/i686-w64-mingw32/sys-root/mingw/include/stdio.h iraf:/usr/lib64/iraf/unix/hlib/libc/iraf/stdio.h frama-c:/usr/share/frama-c/libc/stdio.h dietlibc-devel:/usr/lib/dietlibc/include/stdio.h star-devel:/usr/include/schily/stdio.h avr-libc:/usr/avr/include/stdio.h lib64bsd-devel:/usr/include/bsd/stdio.h libstdc++-devel:/usr/include/c++/4.9.2/tr1/stdio.h wine64-devel:/usr/include/wine/msvcrt/stdio.h bind-devel:/usr/include/isc/stdio.h syslinux-devel:/usr/lib/syslinux/com32/include/stdio.h glibc-devel:/usr/include/bits/stdio.h glibc-devel:/usr/include/stdio.h bind-devel:/usr/include/isc/stdio.h bind-devel:/usr/include/isc/stdio.h sdcc:/usr/share/sdcc/include/pic16/stdio.h sdcc:/usr/share/sdcc/include/stdio.h bind-devel:/usr/include/isc/stdio.h avr-libc:/usr/avr/include/stdio.h libstdc++-devel:/usr/include/c++/4.9.2/tr1/stdio.h bind-devel:/usr/include/isc/stdio.h bind-devel:/usr/include/isc/stdio.h glibc-devel:/usr/include/bits/stdio.h glibc-devel:/usr/include/stdio.h bind-devel:/usr/include/isc/stdio.h glibc-devel:/usr/include/bits/stdio.h glibc-devel:/usr/include/stdio.h glibc-devel:/usr/include/bits/stdio.h glibc-devel:/usr/include/stdio.h bind-devel:/usr/include/isc/stdio.h bind-devel:/usr/include/isc/stdio.h sdcc:/usr/share/sdcc/include/pic16/stdio.h sdcc:/usr/share/sdcc/include/stdio.h sdcc:/usr/share/sdcc/include/pic16/stdio.h sdcc:/usr/share/sdcc/include/stdio.h sdcc:/usr/share/sdcc/include/pic16/stdio.h sdcc:/usr/share/sdcc/include/stdio.h dev86-devel:/usr/lib/bcc/include/stdio.h mingw32-gcc:/usr/lib/gcc/i686-w64-mingw32/4.8.1/include/ssp/stdio.h mingw32-gcc-c++:/usr/i686-w64-mingw32/sys-root/mingw/include/c++/tr1/stdio.h mingw64-gcc-c++:/usr/x86_64-w64-mingw32/sys-root/mingw/include/c++/tr1/stdio.h mingw64-gcc:/usr/lib/gcc/x86_64-w64-mingw32/4.8.1/include/ssp/stdio.h mingw64-headers:/usr/x86_64-w64-mingw32/sys-root/mingw/include/stdio.h mingw32-headers:/usr/i686-w64-mingw32/sys-root/mingw/include/stdio.h iraf:/usr/lib/iraf/unix/hlib/libc/iraf/stdio.h frama-c:/usr/share/frama-c/libc/stdio.h dietlibc-devel:/usr/lib/dietlibc/include/stdio.h star-devel:/usr/include/schily/stdio.h avr-libc:/usr/avr/include/stdio.h libbsd-devel:/usr/include/bsd/stdio.h libstdc++-devel:/usr/include/c++/4.9.2/tr1/stdio.h wine-devel:/usr/include/wine/msvcrt/stdio.h bind-devel:/usr/include/isc/stdio.h syslinux-devel:/usr/lib/syslinux/com32/include/stdio.h glibc-devel:/usr/include/bits/stdio.h glibc-devel:/usr/include/stdio.h bind-devel:/usr/include/isc/stdio.h bind-devel:/usr/include/isc/stdio.h sdcc:/usr/share/sdcc/include/pic16/stdio.h sdcc:/usr/share/sdcc/include/stdio.h bind-devel:/usr/include/isc/stdio.h avr-libc:/usr/avr/include/stdio.h libstdc++-devel:/usr/include/c++/4.9.2/tr1/stdio.h bind-devel:/usr/include/isc/stdio.h bind-devel:/usr/include/isc/stdio.h glibc-devel:/usr/include/bits/stdio.h glibc-devel:/usr/include/stdio.h bind-devel:/usr/include/isc/stdio.h glibc-devel:/usr/include/bits/stdio.h glibc-devel:/usr/include/stdio.h glibc-devel:/usr/include/bits/stdio.h glibc-devel:/usr/include/stdio.h bind-devel:/usr/include/isc/stdio.h bind-devel:/usr/include/isc/stdio.h sdcc:/usr/share/sdcc/include/pic16/stdio.h sdcc:/usr/share/sdcc/include/stdio.h sdcc:/usr/share/sdcc/include/pic16/stdio.h sdcc:/usr/share/sdcc/include/stdio.h
Édité par kalagani Le 20/12/2016 à 19h56
PC1: HPxw9400 Mageia8 Xfce/Cinnamon (ex Plasma car "Freeze")
PC2: Dell Studio 540 Core2 Quad Q8300 en double boot: XPsp3/Mageia8 64bits Plasma
PC2: Dell Studio 540 Core2 Quad Q8300 en double boot: XPsp3/Mageia8 64bits Plasma

marc-andré Membre non connecté
-
- Voir le profil du membre marc-andré
- Inscrit le : 29/09/2015
- Groupes :
déterrage de post et retour sur cette librairie.
pour :
j'ai pu bricoler en C, car sans cette librairie, le C c'est un peu tristounet; et je n'ai pas la capacité d'implémenter moi-même les "objets" de cette lib, par contre, c'est pratique de les utiliser;
contre :
ça m'a dissuader de faire du C++ et de regarder la STL
au final je ne le regrette pas!
le C++ demande de s'encombrer l'esprit de choses pas forcément nécessaires!
merci à mageia d'avoir cette lib disponible dans le ccm; sur les autres distros que j'ai essayé, elle n'y est pas;
il faut donc aller la chercher sur "sourceforge" où elle est téléchargeable;
c'est ce que j'ai fait, histoire d'avoir les sources, qui sont au final, la meilleure documentation;
seulement voilà, sur les forums de discussions, il apparaît souvent que ce dépôt ai mauvaise réputation?
certain parle de mauvaise implémentation ?
mon niveau ne me permet pas d'en juger, même à la lecture des sources;
ce que je peux dire, c'est que ça "fait ce que ça dit, et dit ce que ça fait", bref tous les "objets" essayés fonctionnent bien;
(dans un contexte de thread unique).
je pense que si elle est disponible dans mageia, c'est qu'elle est fiable!
la seule question qui pourrait se poser, c'est l'opportunité de l'avoir en "shared object", soit .so (linké dynamiquement au lancement) ou en statique, vu que je ne pense pas que d'autre application ne l'utilisent comme dépendances?
mais c'est pas urgent.
HP ProDesk ;
Mageia8 Gnome
Liberté et sécurité sont les arguments classiques pour LINUX. En prime il y a aussi la dignité et la confiance ressentie depuis que je suis sous Mageia
Mageia8 Gnome
Liberté et sécurité sont les arguments classiques pour LINUX. En prime il y a aussi la dignité et la confiance ressentie depuis que je suis sous Mageia
Répondre
Vous n'êtes pas autorisé à écrire dans cette catégorie