Welcome, Guest. Please Login or Register
FUG-FR logo
 
  HomeHelpSearchLoginRegister  
 
Version d'Apache est de ses dépendances (Read 5352 times)
Papilippe
Ex Member


Version d'Apache est de ses dépendances
31. Jan 2008 at 15:36
 
Bonjours, je viens vous, pour avoir une petite idée du comment faire ?

Comment connaître les versions des logiciels liés à Apache.
Exemple : J'ai installé la dernière version d'OpenLDAP, puis je veux installé apache avec le module OpenLDAP. Patatra, le module installé est trop moderne, donc je me fais jeter par le système.

Alors si je fais un make search, j'ai les dépendances, mais pas les versions des logiciels liés.

A votre bon coeur Wink
Back to top
 
 
IP Logged
 
fgudin
Global Moderator
*****
Offline


PouetPouetBSD roul3z

Posts: 1552
Thonon (74)
Gender: male
Re: Version d'Apache et de ses dépendances
Reply #1 - 31. Jan 2008 at 15:49
 
J'ai pas tout compris à ta situation, mais est-ce que pkg_info(1) ne te donne pas les infos nécessaires (notamment avec les flags -r ou -R) ?

Il faudrait commencer par préciser: OpenLDAP: installé par les ports ? même question pour le module LDAP Apache.
Tu es à jour: arbo ports actuelle; packages installés en phase avec lui ?
Ca me parait quand même étrange qu'une incompatibilité entre le module Apache et OpenLDAP se soit glissé dans les ports sans que personne le remarque...
Back to top
 
 
IP Logged
 
Papilippe
Ex Member


Re: Version d'Apache est de ses dépendances
Reply #2 - 31. Jan 2008 at 17:07
 
Merci de ta réponse, je vais essayé de mieux m'expliquer.

Je souhaite utiliser les "ports" et compiler mes packages avec FreeBSD 6.2.
Afin de comprendre comment les dépendances fonctionnent, je compile les dépendances d'abord en m'aidant des informations B et R-depts.
En ce qui concerne mon petit souci, j'ai d'abord compilé open-ldap-server-2.4.7 (il existe aussi openldap-server-2.3.40) pour mes tests.
Puis j'ai lancer la compilation d'apache avec mod-ldap, et là il m'a demandé openldap-server-2.3.40.

Mon idée est de connaître les versions de logiciels tiers qui seront demandés afin de compiler les "bonnes" versions. Moi à priori, je ne sais pas faire la différence entre 2.4.7 et 2.3.40.
Back to top
 
 
IP Logged
 
fgudin
Global Moderator
*****
Offline


PouetPouetBSD roul3z

Posts: 1552
Thonon (74)
Gender: male
Re: Version d'Apache est de ses dépendances
Reply #3 - 31. Jan 2008 at 17:31
 
Tu n'as pas besoin de faire le travail de gestion des dépendances; les ports le font pour toi Smiley
Installe simplement avec make install dans ton/tes port(s) de plus haut niveau, et hop ! magie: les ports interprêtent les dépendances et font le nécessaire d'après ce que tu as, les options choisies, etc.

Dans ta situation actuelle, désinstalle d'abord ton OpenLDAP 2.4.7 puis repart de l'installation du module Apache.
Back to top
 
 
IP Logged
 
Papilippe
Ex Member


Re: Version d'Apache est de ses dépendances
Reply #4 - 31. Jan 2008 at 17:37
 
fgudin wrote on 31. Jan 2008 at 17:31:
Tu n'as pas besoin de faire le travail de gestion des dépendances; les ports le font pour toi Smiley


Je suis d'accord, (c'est ce que j'ai fais), mais cette solution ne me permet pas de comprendre ce qu'il se passe.
De même, certaine option de compilation sont choisies au petit bonheur la chance, je ne connais pas tout Wink

Les option de compilations sont-elles documentés quelque part ?
Back to top
 
 
IP Logged
 
fgudin
Global Moderator
*****
Offline


PouetPouetBSD roul3z

Posts: 1552
Thonon (74)
Gender: male
Re: Version d'Apache est de ses dépendances
Reply #5 - 31. Jan 2008 at 17:50
 
De quelles options parles-tu ? Les flags passés à GCC, ou les options propres aux Ports ?
Dans le premier cas, c'est dérivé du /etc/make.conf bien que possiblement ignoré par les logiciels portés eux-mêmes; dans le second, tu peux utiliser make {show,rm,}config pour les ports utilisant le "framework" OPTIONS, ou (je sais plus quoi...) pour ceux à l'ancienne mode (s'il en reste ?).
Back to top
 
 
IP Logged
 
Papilippe
Ex Member


Re: Version d'Apache est de ses dépendances
Reply #6 - 31. Jan 2008 at 18:45
 
fgudin wrote on 31. Jan 2008 at 17:50:
De quelles options parles-tu ? Les flags passés à GCC, ou les options propres aux Ports ?


Alors je ne sais pas vraiment. En effet je te donne un exemple :
Je viens de compiler php5-5.2.5_1 et une fenêtre bleu aparait avec les options en bleu suivantes :
Code:
┌────────────────────────────────────────────────────────────────────┐
│                     Options for php5 5.2.5_1                       │
│ ┌────────────────────────────────────────────────────────────────┐ │
│ │[X] CLI        Build CLI version                                │ │
│ │[ ] CGI        Build CGI version                                │ │
│ │[X] APACHE     Build Apache module                              │ │
│ │[ ] DEBUG      Enable debug                                     │ │
│ │[X] SUHOSIN    Enable Suhosin protection system (not for jails) │ │
│ │[ ] MULTIBYTE  Enable zend multibyte support                    │ │
│ │[X] IPV6       Enable ipv6 support                              │ │
│ │[X] MAILHEAD   Enable mail header patch                         │ │
│ │[ ] REDIRECT   Enable force-cgi-redirect support (CGI only)     │ │
│ │[ ] DISCARD    Enable discard-path support (CGI only)           │ │
│ │[ ] FASTCGI    Enable fastcgi support (CGI only)                │ │
│ │[ ] PATHINFO   Enable path-info-check support (CGI only)        │ │
│ │                                                                │ │
│ │                                                                │ │
│ │                                                                │ │
├─└────────────────────────────────────────────────────────────────┘─┤
│                       [  OK  ]       Cancel                        │
└────────────────────────────────────────────────────────────────────┘
 


Alors voilà, comment trouver de la doc pour savoir quoi activer, par exemple pour ce programme faut-il mieux PHP5 en module ou en CGI ?
Back to top
 
 
IP Logged
 
ros
Global Moderator
*****
Offline



Posts: 868
Paris
Gender: male
Re: Version d'Apache est de ses dépendances
Reply #7 - 31. Jan 2008 at 20:44
 
Les options ne sont pas choisies au petit bonheur, c'est le porteur qui les à choisies et elles correspondent à des options "classiques"
Si tu veux savoir à quoi elle correspondent, il faudra te référer à la documentation du logiciel en question.
Back to top
 

" Il vaut mieux mobiliser son intelligence sur des conneries que mobiliser sa connerie sur des choses intelligentes "
WWW WWW elfato_99  
IP Logged
 
patrick
Senior Member
****
Offline


Les pixels au peuple

Posts: 398
Re: Version d'Apache est de ses dépendances
Reply #8 - 31. Jan 2008 at 21:08
 
Quote:
fgudin wrote on 31. Jan 2008 at 17:50:
De quelles options parles-tu ? Les flags passés à GCC, ou les options propres aux Ports ?


Alors je ne sais pas vraiment. En effet je te donne un exemple :
Je viens de compiler php5-5.2.5_1 et une fenêtre bleu aparait avec les options en bleu suivantes :
Code:
 


Alors voilà, comment trouver de la doc pour savoir quoi activer, par exemple pour ce programme faut-il mieux PHP5 en module ou en CGI ?


Si tu ne sais pas il vaut mieux utiliser les options par défauts. Ici le module est le mod_php pour Apache, le CGI c'est php avec le support des CGI. Perso j'utilise php avec fast-cgi et cgi (donc) pour nginx.

C'est vrai que ce n'est pas forcément documenté... La lecture du makefile apporte des infos et il faut consulter la doc du logiciel.

En passant, il y a une option qui me résiste c'est le WITH_MOZILLA d'Open office, pas vu de différence avec ou sans ?
Back to top
 
 
IP Logged
 
Marck
God Member
*****
Offline


I Love New YaBB

Posts: 1113
Re: Version d'Apache est de ses dépendances
Reply #9 - 01. Feb 2008 at 07:50
 
Salut Papilippe

Je comprends bien tes questions (enfin j'espère) car je me suis souvent posées les mêmes. Comment construire de mes mains une maison brique à brique, sans appeler de maçon, sans commencer par le premier étage en me disant qu'importe le rez-de-chaussée se construira de lui-même, etc, mais en partant tout de même du principe que j'achète les briques et non que je dois les fabriquer.

Je reviens donc ici à la première question, celle des dépendances. Comment les connaître à l'avance pour procéder à la main, paquet par paquet (proche de l'esprit LFS GNU/Linux). Voici donc quelques pistes de bricolage.

A mon avis une bonne partie des réponses se trouve dans le fichier /usr/ports/INDEX-6
Si tu as toujours procédé manuellement, tu ne possèdes pas ce fichier mais peux le construire (c'est longuet):
Code:
# cd /usr/ports
# make index 



Apparemment les entrées de ce fichier sont constituées de 12 champs séparés par des |. Si tu t'intéresses par exemple à apache-2.2.8 tu peux alors entrer:
Code:
% cut -d"|" -f 1-12 INDEX-6 | grep ^apache-2.2.8 | tr -s "|" "\n"
apache-2.2.8
/usr/ports/www/apache22
/usr/local
Version 2.2 of Apache web server with prefork MPM.
/usr/ports/www/apache22/pkg-descr
clement@FreeBSD.org
www ipv6
autoconf-2.61_2 autoconf-wrapper-20071109 expat-2.0.0_1 libiconv-1.11_1 libtool-1.5.24 m4-1.4.9,1 perl-5.8.8_1
expat-2.0.0_1 libiconv-1.11_1 perl-5.8.8_1
http://httpd.apache.org/
perl-5.8.8_1
perl-5.8.8_1 



Tu remarques que la réponse est ainsi proche d'un "make search name=apache-2.2.8" et que les B-deps et R-deps apparaissent dans les champs 8 et 9. Donc pour les isoler:

Code:
% cut -d"|" -f 1,8,9 INDEX-6 | grep ^apache-2.2.8 | tr -s "|" "\n"
apache-2.2.8
autoconf-2.61_2 autoconf-wrapper-20071109 expat-2.0.0_1 libiconv-1.11_1 libtool-1.5.24 m4-1.4.9,1 perl-5.8.8_1
expat-2.0.0_1 libiconv-1.11_1 perl-5.8.8_1 



D'autre part si tu veux voir tous les paquets où apache-2.2.8 apparaît en dépendance cela donne (je ne mets pas la sortie un peu longue):

Code:
% cut -d"|" -f 1,8,9 INDEX-6 | grep apache-2.2.8 | tr -s "|" "\n" 



Reste donc maintenant à tenter de satisfaire les dépendances. Ici par exemple (enfin si je ne me suis pas trompé car je n'ai pas testé bien sûr) on pourrait essayer de commencer par libtool-1.5.24 qui est requis par libiconv-1.11_1 qui sont requis par gettext-0.16.1_3 requis lui-même par gmake-3.81_2 requis tous deux (entre autres) par autoconf-2.61_2.

On comprend que cela devient vite un travail de titan sans compter que l'on peut faire des erreurs... et même que l'on en fait toujours. Voilà, ceci dit, c'est toujours instructif et amusant d'essayer de faire les choses ainsi au moins en partie (d'autres diront que c'est idiot de ne pas utiliser les outils existant !). j'espère en tout cas que ce long baratin t'aidera un peu dans tes essais.
Back to top
 
WWW WWW  
IP Logged
 
fgudin
Global Moderator
*****
Offline


PouetPouetBSD roul3z

Posts: 1552
Thonon (74)
Gender: male
Re: Version d'Apache est de ses dépendances
Reply #10 - 01. Feb 2008 at 09:42
 
Je voudrais corriger une chose: il me semble qu'INDEX donne les dépendances correspondant aux options par défaut des ports (à moins que make index ne tienne compte de /var/db/ports/(...)/options ?); à vérifier.

Sinon, en jetant un oeil à ports/Mk/bsd.port.mk, j'ai découvert la cible config-recursive: "Configure options for this port for this port and all dependencies."
Back to top
 
 
IP Logged
 
Papilippe
Ex Member


Re: Version d'Apache est de ses dépendances
Reply #11 - 01. Feb 2008 at 15:29
 
Marck wrote on 01. Feb 2008 at 07:50:
Je comprends bien tes questions (enfin j'espère) car je me suis souvent posées les mêmes. Comment construire de mes mains une maison brique à brique, sans appeler de maçon, sans commencer par le premier étage en me disant qu'importe le rez-de-chaussée se construira de lui-même, etc, mais en partant tout de même du principe que j'achète les briques et non que je dois les fabriquer.

On comprend que cela devient vite un travail de titan sans compter que l'on peut faire des erreurs... et même que l'on en fait toujours. Voilà, ceci dit, c'est toujours instructif et amusant d'essayer de faire les choses ainsi au moins en partie (d'autres diront que c'est idiot de ne pas utiliser les outils existant !). j'espère en tout cas que ce long baratin t'aidera un peu dans tes essais.


Merci mille fois Marck,

En effet je cherche à compiler morceau par morceaux pour comprendre comment cela fonctionne et pour obtenir les bonnes versions des logiciels que je veux.

Un dernier  exemple : en compilant PHP5 en module avant apache, il m'a téléchargé Apache 1.X alors que je veux Apache 2 Sad

PS : comment refaire venir la fenêtre des options, je souhaite enlever module des options de compilation de PHP, je compile avec make package pour mutualiser la fabrication des packages sur mon réseau de machine FreeBSD (c'est qu'il commence a y en avoir Wink)
Back to top
 
 
IP Logged
 
Marck
God Member
*****
Offline


I Love New YaBB

Posts: 1113
Re: Version d'Apache est de ses dépendances
Reply #12 - 01. Feb 2008 at 16:39
 
Re

Pour la fenêtre des options, je pense que tu veux parler de "make config"...(à entrer dans le répertoire du port concerné).
Back to top
 
WWW WWW  
IP Logged
 
dexinou
Full Member
***
Offline


BSD forever

Posts: 139
/home/web
Gender: male
Re: Version d'Apache est de ses dépendances
Reply #13 - 02. Feb 2008 at 14:32
 
Quote:
en compilant PHP5 en module avant apache, il m'a téléchargé Apache 1.X alors que je veux Apache 2

installe en premier apache2 ensuite php
Back to top
 

FreeBSD
6.2-RELEASE /
Apache
1.3.41 (Unix) /
PHP
5.2.6 /
MySQL
5.0.51a
&&We'll can do great things...
WWW WWW dexinou  
IP Logged
 
Papilippe
Ex Member


Re: Version d'Apache est de ses dépendances
Reply #14 - 03. Feb 2008 at 00:29
 
dexinou wrote on 02. Feb 2008 at 14:32:
Installe en premier apache2 ensuite php

Perdu, j'ai compilé d'abord PHP sans CGI et sans module et donc maintenant c'est Apache qui pleure misère Sad

Je vais retourner vers la doc pour savoir comment faire pour me sauver de cette situation Smiley
Back to top
 
 
IP Logged