# [emerge] Complètement HS....

## hoyohoyo

Bonjour à tous,

Voila mon problème, emerge fonctionne plus je vais vous faire voir les problèmes 

```
# emerge

  File "/usr/bin/emerge", line 43

    except PermissionDenied as e:

                             ^

SyntaxError: invalid syntax

```

```
 # emerge --sync

  File "/usr/bin/emerge", line 43

    except PermissionDenied as e:

                             ^

SyntaxError: invalid syntax
```

```
# python-updater

  File "/usr/bin/portageq", line 152

    print("ERROR: insufficient parameters!", file=sys.stderr)

                                                 ^

SyntaxError: invalid syntax

  File "/usr/bin/portageq", line 152

    print("ERROR: insufficient parameters!", file=sys.stderr)

                                                 ^

SyntaxError: invalid syntax

 * Can't determine any previous Python version(s).
```

```
# eselect python list

!!! Error: Can't load module python

Killed
```

```
# python -V

Python 2.4.4

```

ça fait 3 semaines que je cherche mais je trouve de site où ils expliquent le comment réparer ça, je peux pas re install le système car j'héberge plein de site pour asso, des serveur teamspeak et des webradio.

SI vous pouvez m'aider ça serait trop bien...

----------

## Damiatux

C'est ton python qui va pas. Est-ce que la commande make fonctionne ?

----------

## hoyohoyo

Oui

Hier j'ai compilé LZO et openVPN donc oui ça fonctionne ^^

----------

## 22decembre

combien t'as de set python ? 

essaye :

```
eselect python list
```

----------

## hoyohoyo

 *22decembre wrote:*   

> combien t'as de set python ? 
> 
> essaye :
> 
> ```
> ...

 

```
# eselect python list 

!!! Error: Can't load module python 

Killed
```

----------

## 22decembre

ok... c'est pas la joie...

Je peux pas trop t'aider là ... désolé   :Sad: 

----------

## 22decembre

juste comme ça... t'as essayé de reinstaller un portage neuf ?

Je sais pas si c'est une bonne idée, note bien (mon expérience de gentoo c'est tout recent)

----------

## Picani

Salut.

Alors en fait j'ai déjà eu le même problème que toi mais ça a pas été la joie à réparer. T'as plein d'erreur de syntaxe dans les scripts python de portage, vas savoir pourquoi ... Le truc que j'avais fait, c'est que tu vas dans les fichiers qui marche pas, à la ligne qui marche pas et tu les remets comme il faut. Par exemple : 

 *Quote:*   

> Code:
> 
>   # emerge 
> 
>   File "/usr/bin/emerge", line 43 
> ...

 

Là tu vas à la ligne 43 de /usr/bin/emerge et tu remets la syntaxe sur le caractère sur lequel point le petit ^. Si (comme moi) tu connais rien au python, utilise un éditeur de texte qui utilise la coloration syntaxique, genre emacs, vim, kate ou gedit, pcq à cette ligne t'auras les couleur qui vont faire n'importe quoi, et en changeant (enlève les espaces en trop et les lettres accentuées et remets l'indentation) les couleurs vont redevenir normales.

Au fur et à mesure que tu vas réparer les fichiers, les erreurs devraient arriver sur d'autres fichier (4 ou 5 maxi normalement).

Voila, j'espère que ça t'aide même si c'est assez bricolage comme technique mais sa peut t'éviter de devoir toucher + en profondeur et risquer de casser encore plus.

Bonne chance !

----------

## xaviermiller

Hop hop hop !

Portage DOIT tourner avec python 2.6, il ne fonctionne pas avec python 3 !

Python 3 a été poussé pour une raison obscure par un développeur Gentoo, mais il ne peut pas être utilisé dans le cadre de portage.

Il faut donc faire une compilation à la main de paquets nécessitant pyhon 3.1.

----------

## guilc

Xavier Miller, t'as fumé quoi ??????

Portage FONCTIONNE avec python 3, en tous cas la branche 2.2 est opérationnelle (celle que j'utilise, justement avec python 3) depuis longtemps. La branche 2.1 je sais pas.

A noter que portage 2.2 a un USE "python3" qui lui permet de fonctionner exclusivement avec python3, indépendamment de la version de python activée via eselect.

Par contre, AUCUNE COMPILATION A FAIRE A LA MAIN !!!!

Python est slotté ! tu peux avoir python 2.6 et 3.1 en même temps sans souci, juste pour que le systeme marche, la version de python activée (eselect python) DOIT être la version 2.6 pour que tout marche. Mais cela n'empêche pas :

- d'avoir python 3.1 installé via portage

- d'utiliser python 3.1 en invoquant /usr/bin/python3

Quant aux ebuilds supportant les 2 versions de python, les modules/bytecodes sont compilés pour les 2 version si c'est supporté par le package, via l'eclass python.

bref, non, portage n'est pas en retard, et gère tout à fait bien les version de python multiples, même si tous les modules python ne sont pas près à fonctionner sous python3 (mais ça, ça ne dépend pas de gentoo mais des upstreams respectifs...)

----------

## 22decembre

ça m'est arrivé de débugguer un emerge en passant sur le set python 3.1 !

C'est d'ailleurs la première chose que je tente quand ça bug ! alors, oui, il fonctionne !

Le problème est ailleurs.

----------

## kwenspc

De toute manière la question n'est pas là vu que la version de python pour ce soucis est 2.4.4

----------

## xaviermiller

 *guilc wrote:*   

> Xavier Miller, t'as fumé quoi ??????
> 
> Portage FONCTIONNE avec python 3, en tous cas la branche 2.2 est opérationnelle (celle que j'utilise, justement avec python 3) depuis longtemps. La branche 2.1 je sais pas.
> 
> A noter que portage 2.2 a un USE "python3" qui lui permet de fonctionner exclusivement avec python3, indépendamment de la version de python activée via eselect.
> ...

 

OK, je ne savais pas que Portage pouvait passer sur Python3. Comme quoi, il faut continuer à suivre les infos...  :Wink: 

----------

