# mod_php necessite xfree ???

## takezo

voila, je voudrais faire un emerge de mod_php, mais quand je fais un pretend, voila ce qu'il me sort

```

These are the packages that I would merge, in order:

Calculating dependencies    ...done!

[ebuild  N   ] dev-java/java-config-0.2.7  

[ebuild  N   ] dev-java/blackdown-jdk-1.3.1-r7  

[ebuild  N   ] media-libs/pdflib-4.0.3-r1  

[ebuild  N   ] app-crypt/mhash-0.8.16  

[ebuild  N   ] media-libs/freetype-2.1.2-r2  

[ebuild  N   ] media-libs/libpng-1.2.5-r4  

[ebuild  N   ] media-libs/jpeg-6b-r3  

[ebuild  N   ] media-libs/tiff-3.5.7-r1  

[ebuild  N   ] media-libs/lcms-1.09  

[ebuild  N   ] media-libs/libmng-1.0.4  

[ebuild  N   ] x11-misc/ttmkfdir-3.0.4  

[ebuild  N   ] app-arch/cabextract-0.6  

[ebuild  N   ] media-libs/fontconfig-2.1  

[ebuild  N   ] x11-base/opengl-update-1.5  

[ebuild  N   ] x11-base/xfree-4.2.1-r2  

[ebuild  N   ] x11-libs/xft-2.0.1  

[ebuild  N   ] x11-libs/qt-3.1.0-r3  

[ebuild  N   ] dev-libs/libmcrypt-2.5.5  

[ebuild  N   ] dev-libs/mm-1.2.1  

[ebuild  N   ] net-www/apache-1.3.27-r1  

[ebuild  N   ] media-libs/freetype-1.3.1-r3  

[ebuild  N   ] dev-libs/libxml2-2.4.24  

[ebuild  N   ] media-libs/t1lib-1.3.1  

[ebuild  N   ] net-libs/libwww-5.4.0-r1  

[ebuild  N   ] dev-php/mod_php-4.3.0-r2  
```

or, je ne vois pas trop pourquoi il veux absolument m'emerger xfree !!!

surtout que si on regarde mon make.conf

```

USE="-X -gtk -gnome -alsa"

```

et , comme ca ne marchait  pas, j'ai meme modifie mon make.defaults:

```

USE="x86 -oss 3dnow apm -arts -avi berkdb crypt cups encode -gdbm gif

-gpm -gtk imlib java jpeg -kde -gnome libg++ libwww mikmod mmx motif mpeg ncurses nls oggvorbis -opengl pam pdflib png python qt qtmt -quicktime readline sdl slang spell ssl svga tcpd truetype -X xml2 -xmms xv zlib"

```

si quelqu'un a une idee parce que la   :Shocked: 

d'ailleurs, si vous pouviez me dire ce que je peux eventuellement virer en plus (sachant que cette machine va juste me servir de serveur web/ftp/ssh et faire routeur/firewall( ca , c'est deja en place  :Smile: )

et qu'elle n'aura probablement jamais d'interface graphique !

merci  :Smile: 

----------

## DuF

j'essairai un -qt dans ton make.conf pour voir et à la limite aussi -qtmt !

----------

## TGL

mouaif... au pif, "-qt -qtmt".

Sinon, un bon moyen de trouver le paquet "coupable", c'est de faire des "emerge -p" paquet par paquet. Tu commences avec "java-config", si y'a pas de problème tu l'installes et tu passes à "blackdown-jdk", etc... Quand tu arrives sur le fautif, lis l'ebuild pour voir si y'a moyen de s'en tirer avec USE.

Un autre moyen est de masquer xfree, qt, ..., bref tous les trucs dont tu veux pas, et de voir ce que "emerge -p mod_php" te dis en échouant. Je ne me souviens plus trop, mais c'est possible qu'il te désigne le paquet qui a justement besoin de xfree ou de qt.

----------

## TGL

 *DuF wrote:*   

> j'essairai un -qt dans ton make.conf pour voir et à la limite aussi -qtmt !

 

Tiens, tu m'as grillé. Mais j'ai fait + long... nananèreuh  :Wink: 

----------

## DuF

lol  :Smile: 

n'empêche si on a commencé en même temps, sinon t'aurais vu mon post, et bien il t'a tout de même fallu 10minutes pour sortir tes 5 lignes, soit 1 ligne toutes les 2 minutes...  :Smile: 

Je t'ai connu en meilleure forme TGL  :Wink: 

----------

## tecknojunky

freetype, c'est pas une font de X ça?

----------

## TGL

 *DuF wrote:*   

> Je t'ai connu en meilleure forme TGL 

 

M'enfin... j'suis pas lent, j'suis multitâche...  :Very Happy: 

----------

## takezo

 *TGL wrote:*   

> mouaif... au pif, "-qt -qtmt".
> 
> Sinon, un bon moyen de trouver le paquet "coupable", c'est de faire des "emerge -p" paquet par paquet. Tu commences avec "java-config", si y'a pas de problème tu l'installes et tu passes à "blackdown-jdk", etc... Quand tu arrives sur le fautif, lis l'ebuild pour voir si y'a moyen de s'en tirer avec USE.
> 
> Un autre moyen est de masquer xfree, qt, ..., bref tous les trucs dont tu veux pas, et de voir ce que "emerge -p mod_php" te dis en échouant. Je ne me souviens plus trop, mais c'est possible qu'il te désigne le paquet qui a justement besoin de xfree ou de qt.

 

bien vu  :Smile: 

merci beaucoup a vous deux  :Wink: 

----------

## takezo

bon, ben ca marche pas encore trop bien  :Smile: 

quand je fais l'emerge de php (ou meme de mod_php), voila ce que j'ai :

```

>>> /etc/php4/php.ini

Traceback (most recent call last):

     File"/usr/bin/emerge", line 1595, in ?

        mydepgraph.merge(mydepgraph.altlist())

     File"/usr/bin/emerge", line 939, in merge

        retval=portage.doebuild(y,"merge",myroot,edebug)

     File"/usr/lib/python2.2/site-packages/portage.py", line 1339, in doebuild

         return merge(settings["CATEGORY"],settings["PF"], settings["D"],settings["BUILDDIR"]+"/build-info",myroot,myebuild=settings["EBUILD"]

     File "/usr/lib/python2.2/site-packages/portage.py", line 1458, in merge

          return mylink.merge(pkgloc,infloc,myroot,myebuild)

     File "/usr/lib/python2.2/site-packages/portage.py", line 3956, in merge

           return self.treewalk(mergeroot,myroot,inforoot,myebuild)

     File "/usr/lib/python2.2/site-packages/portage.py", line 3685, in treewalk

     self.mergeme(srcroot,destroot,outfile,None,secondhand,cfgfiledict, mymtime)

     File "/usr/lib/python2.2/site-packages/portage.py", line 3797, in mergeme

      mymtime=movefile(mysrc,mydest,thismtime,mystat)

     File "/usr/lib/python2.2/site-packages/portage.py", line 1444, in movefile

       os.utime(dest,(newmtime,newmtime))

OSError : [Errno 2] No such file or directory: ' /etc/php4/lib'

```

alors, que verfication faite, ce fichier existe bien !!!

----------

## arlequin

Mouarf !

j'viens d'essayer en changeant la vaiable USE comme conseillé, et ça marche très bien...

...mais pour ton problème, j'ai pas d'idée (dsl)

----------

## tecknojunky

Prend soin de vérifier que le fichier en question ne soit pas un symlink qui pointe sur un fichier bidon.

----------

## Nectroom

 *takezo wrote:*   

> bon, ben ca marche pas encore trop bien 
> 
> quand je fais l'emerge de php (ou meme de mod_php), voila ce que j'ai :
> 
> ```
> ...

 

tu as bien la dernière version de portage ?

----------

## takezo

 *tecknojunky wrote:*   

> Prend soin de vérifier que le fichier en question ne soit pas un symlink qui pointe sur un fichier bidon.

 

bon (pour repondre a nectroom) : j'ai fait un emerge clean et un emerge rsync pour etre sur

j'ai toujours la meme erreur, et il s'avere que  :

```

broots php4 # ls -l

total 40

lrwxr-xr-x    1 root     root           49 Feb  8 22:35 lib -> /usr/lib/php/extensions/no-debug-non-zts-20020429

-rw-r--r--    1 root     root        37805 Feb  8 22:35 php.ini

```

et effectivement, ce fichier n'existe pas !

```

broots php4 # ls /usr/lib/php/

.filemap    Console     Mail        PEAR        data

.lock       DB          Mail.php    PEAR.php    docs

.registry   DB.php      Net         System.php  tests

Archive     HTTP.php    OS          XML

```

qu'est-ce que je peux faire pour que ca marche ?

(ce que je ne comprends pas, c'est que je n'ai eu aucun probleme avec ca quand je l'ai fait il y a 2/3 semaines sur une autre machine  :Neutral: )

----------

## arlequin

Sans vouloir remuer le couteau dans la plaie, mon répertoire /etc/php4 se présente comme le tiens :

```

serveur32 php4 # ls -al

total 76

drwxr-xr-x    2 root     root         4096 01-14 18:42 .

drwxr-xr-x   39 root     root         4096 02-08 17:45 ..

lrwxrwxrwx    1 root     root           49 01-13 22:06 lib -> /usr/lib/php/extensions/no-debug-non-zts-20020429

-rw-r--r--    1 root     root        28371 11-30 12:51 php.ini

-rw-r--r--    1 root     root        37805 01-13 22:06 php.ini.new

```

et ce lien 'lib' ne pointe vers rien :

```

serveur32 php4 # file lib

lib: broken symbolic link to /usr/lib/php/extensions/no-debug-non-zts-20020429

```

Cependant, php4 marche toujours aussi bien chez moi (j'ai redémarré moulte fois apache)...

Par contre, pour ce cas très précis, j'avais d'abord installer la version 4.2.3 de mod_php avant d'upgrader à la 4.3.0 (sur conseil de la GWN).

A la limite, ce que tu peux tenter c'est un emerge de mod_php 4.2.3. Si ça passe, tu upgrade à la 4.3.0 ensuite.

```

emerge mod_php-4.2.3-r2.ebuild

...

emerge mod_php-4.3.0-r2.ebuild

...

emerge clean

```

A voir...

----------

## yannick

C'est un peu tard, mais bon... Pour moi, le meilleur moyen de trouver le USE flag qui foire c'est de faire un petit 'less /usr/portage/qqch/ebuild_foireux.ebuild' et de regarder quels USE flags sont utilisés et quels sont les effets sur la configuration.

Voilà voilà,

Yannick

----------

## takezo

je viens de regarder , et dans le use, il y a apache2, alors que moi j'avais emerge la version 1.3.27 

vous pensez que c'est ca qui peut foirer ?

j'ai pas encore eu le temps de tester, mais j'essayerais la solution d'arlequin eventuellement (j'ai pas besoin d'une version top a jour )

----------

## takezo

bien vu  :Smile: 

ca marche sans problemes avec la version 4.2.3  :Smile: 

merci beaucoup !!!

(si j'ai le courage, je tenterais l'upgrade +tard  :Wink: )

----------

## yannick

 *takezo wrote:*   

> je viens de regarder , et dans le use, il y a apache2, alors que moi j'avais emerge la version 1.3.27 
> 
> vous pensez que c'est ca qui peut foirer ?
> 
> 

 

Non, le use flag apache2 est juste une option pour si tu a installé apache2 qui, j'imagine, a une API différente d'apache (pas sûr), et est installé dans des répertoires différents (sûr: /etc/apache2/, ...). Donc tant que tu n'as pas USE="apache2" dans make.conf en ayant installé apache ou USE="-apache2" en ayant installé apache2, ça ne devrait pas poser de problème.

Yannick

----------

