[Question] Librairies et compilation
-
- Hankyu
- Messages : 26
- Inscription : jeu. 02 avr. 2009, 10:53
[Question] Librairies et compilation
Salutations,
Je profite des vacances pour essayer de packager un logiciel non présent sur les dépôts et pourtant peut être très utile.
Après avoir réussi tant bien que mal à chopper ses sources, j'ai lancé sa compilation :
./Configure.sh # Si si... pour ce soft c'est bien un Configure.sh
make
mais au niveau du make j'ai des erreurs du fait qu'il ne trouve pas libxml2. Après vérification il s'avère que j'ai bien libxml2 d'installé à l'emplacement : /usr/include/libxml2/libxml
En examinant la source, j'ai remarqué que les includes se font de cette façon :
#include <libxml/unTruc.h>
J'en ai conclu que le soft cherche les headers dans /usr/include/libxml/ ce qui fait qu'il ne les trouve pas. Une solution simple et rapide que j'ai trouvé est d'ajouter un lien symbolique /usr/include/libxml/ pointant vers /usr/include/libxml2/libxml.
J'en viens à ma question : Est ce une bonne solution ? Si créé un PKGBUILD pour ajouter le logiciel à AUR, puis-je créer ce lien symbolique à l'aide d'un fichier post_install ? Ca ne va pas contre l'éthique du packageur Archlinuxien ?
Sinon, prière de m'indiquer la méthode à suivre pour respecter les standards établis dans le fabuleux monde GNU/Linuxien ^^
Merci !
Je profite des vacances pour essayer de packager un logiciel non présent sur les dépôts et pourtant peut être très utile.
Après avoir réussi tant bien que mal à chopper ses sources, j'ai lancé sa compilation :
./Configure.sh # Si si... pour ce soft c'est bien un Configure.sh
make
mais au niveau du make j'ai des erreurs du fait qu'il ne trouve pas libxml2. Après vérification il s'avère que j'ai bien libxml2 d'installé à l'emplacement : /usr/include/libxml2/libxml
En examinant la source, j'ai remarqué que les includes se font de cette façon :
#include <libxml/unTruc.h>
J'en ai conclu que le soft cherche les headers dans /usr/include/libxml/ ce qui fait qu'il ne les trouve pas. Une solution simple et rapide que j'ai trouvé est d'ajouter un lien symbolique /usr/include/libxml/ pointant vers /usr/include/libxml2/libxml.
J'en viens à ma question : Est ce une bonne solution ? Si créé un PKGBUILD pour ajouter le logiciel à AUR, puis-je créer ce lien symbolique à l'aide d'un fichier post_install ? Ca ne va pas contre l'éthique du packageur Archlinuxien ?
Sinon, prière de m'indiquer la méthode à suivre pour respecter les standards établis dans le fabuleux monde GNU/Linuxien ^^
Merci !
- benjarobin
- Maître du Kyudo
- Messages : 17288
- Inscription : sam. 30 mai 2009, 15:48
- Localisation : Lyon
Re: [Question] Librairies et compilation
Non tu ne devrai pas mettre de lien symbolique. Tu as le choix entre un petit sed sur tout les fichiers ou Modifier le makefile pour qu'il incluse le dossier libxml2 (ce que je ferrai c'est plus propre)
Sinon poste ici ton PKGBUILD je suis sur que l'on trouvera une solution![Very Happy :D](./images/smilies/icon_e_biggrin.gif)
Sinon poste ici ton PKGBUILD je suis sur que l'on trouvera une solution
![Very Happy :D](./images/smilies/icon_e_biggrin.gif)
Zsh | KDE | PC fixe : core i7, carte nvidia
Titre d'un sujet : [Thème] Sujet (état) / Règles du forum
Titre d'un sujet : [Thème] Sujet (état) / Règles du forum
Re: [Question] Librairies et compilation
La fonction (y a pas de fichier de ce nom sous archProofOfConcept a écrit :puis-je créer ce lien symbolique à l'aide d'un fichier post_install ? Ca ne va pas contre l'éthique du packageur Archlinuxien ?
![Smile :)](./images/smilies/icon_e_smile.gif)
Mais comme le dit benjarobin, le pkgbuild ou au moins le nom du soft, ça pourrait aider.
Sinon en règle général, il faut s'en remettre au librairies elles même pour avoir les bons emplacements:
Code : Tout sélectionner
$ pkg-config --cflags --libs libxml-2.0
-I/usr/include/libxml2 -lxml2
-
- Hankyu
- Messages : 26
- Inscription : jeu. 02 avr. 2009, 10:53
Re: [Question] Librairies et compilation
Bonsoir,
Donc voilà voilà... le nom du soft en question est Likewise-open, il sert à l'intégration d'un Linux au sein d'une architecture Active Directory.
La société éditrice de ce logiciel le propose en installation automatique pour les distributions : Fedora, RedHat, Centos, SuSe, Debian et Ubuntu (en gros .deb et .rpm) mais rien de disponible pour notre petite archlinux adorée.
En "espionnant" du coté de chez Ubuntu, je suis tombé sur cette archive likewise-open_4.1.2982.orig.tar.gz qui semble contenir les sources tant convoitées de Likewise-open.
Comme je me suis mis depuis peu à contribuer à AUR pour faire joli sur mon CV d'administrateur système & réseau et surtout que j'adore me prendre la tête... j'ai voulu packager (enfin... plutôt dire, concevoir le PKGBUILD) de Likewise-open en exploitant l'archive que j'ai trouvé plus haut.
Actuellement, j'ai réglé vite fait (mais visiblement mal fait) le problème de la librairie libxml2 à l'aide d'un lien symbolique, mais plus loin dans la compilation je rencontrais un autre souci... j'me suis cassé la tête pendant quelques minutes avant de me rendre compte que le souci réside au niveau de la compilation des sources de samba (car elles semblent avoir été incluses à l'archive)... j'ai donc décidé de ne pas me casser la tête à compiler une partie déjà disponible sur les dépôts.
Bref... a priori ça compile... reste à tester, le hic c'est que mon pc fixe est HS donc j'bosse sur mon laptop ce qui m'empêche de pouvoir faire des tests grandeur nature avec un Windows 2008 Serveur et Active Directory.
Note : Non non
, je ne suis pas un hors la loi qui a téléchargé illégalement un produit Microsoft, il s'agit d'une licence étudiante légale (étant étudiant en administration des systèmes & réseaux... à base de logiciels libres je le rappelle
).
Note aux admins : Désolé, je sais que mon orthographe peut ressembler quelques fois à du code source de chez Microsoft, je m'en excuse, j'essaie de faire des efforts.
Donc voilà voilà... le nom du soft en question est Likewise-open, il sert à l'intégration d'un Linux au sein d'une architecture Active Directory.
La société éditrice de ce logiciel le propose en installation automatique pour les distributions : Fedora, RedHat, Centos, SuSe, Debian et Ubuntu (en gros .deb et .rpm) mais rien de disponible pour notre petite archlinux adorée.
En "espionnant" du coté de chez Ubuntu, je suis tombé sur cette archive likewise-open_4.1.2982.orig.tar.gz qui semble contenir les sources tant convoitées de Likewise-open.
Comme je me suis mis depuis peu à contribuer à AUR pour faire joli sur mon CV d'administrateur système & réseau et surtout que j'adore me prendre la tête... j'ai voulu packager (enfin... plutôt dire, concevoir le PKGBUILD) de Likewise-open en exploitant l'archive que j'ai trouvé plus haut.
Actuellement, j'ai réglé vite fait (mais visiblement mal fait) le problème de la librairie libxml2 à l'aide d'un lien symbolique, mais plus loin dans la compilation je rencontrais un autre souci... j'me suis cassé la tête pendant quelques minutes avant de me rendre compte que le souci réside au niveau de la compilation des sources de samba (car elles semblent avoir été incluses à l'archive)... j'ai donc décidé de ne pas me casser la tête à compiler une partie déjà disponible sur les dépôts.
Bref... a priori ça compile... reste à tester, le hic c'est que mon pc fixe est HS donc j'bosse sur mon laptop ce qui m'empêche de pouvoir faire des tests grandeur nature avec un Windows 2008 Serveur et Active Directory.
Note : Non non
![Non :non:](./images/smilies/ripeer.gif)
![Mr. Green :mrgreen:](./images/smilies/icon_mrgreen.gif)
Note aux admins : Désolé, je sais que mon orthographe peut ressembler quelques fois à du code source de chez Microsoft, je m'en excuse, j'essaie de faire des efforts.
-
- Hankyu
- Messages : 26
- Inscription : jeu. 02 avr. 2009, 10:53
Re: [Question] Librairies et compilation
J'viens de remarquer que j'exploitais la version 4 au lieu de la dernière version 5 dispo ici :
http://archive.ubuntu.com/ubuntu/pool/u ... rig.tar.gz
Cette archive contient beaucoup plus de trucs... ouahhh encore plus de boulot... cool
![Bravo :bravo:](./images/smilies/applaudit_gif.gif)
http://archive.ubuntu.com/ubuntu/pool/u ... rig.tar.gz
Cette archive contient beaucoup plus de trucs... ouahhh encore plus de boulot... cool
![Mr. Green :mrgreen:](./images/smilies/icon_mrgreen.gif)
![Mr. Green :mrgreen:](./images/smilies/icon_mrgreen.gif)
![Mr. Green :mrgreen:](./images/smilies/icon_mrgreen.gif)
![Bravo :bravo:](./images/smilies/applaudit_gif.gif)
Re: [Question] Librairies et compilation
pour l'archive que tu as donné, il suffit de lancer:
Code : Tout sélectionner
CFLAGS=$(pkg-config --cflags libxml-2.0) ./Configure.sh