Substituir o python construído com o UCS4 pelo UCS2

2

Eu tenho o fedora fc15 instalado com o python 2.7.1-7.fc15. É construído com o ucs4 e eu tenho alguns pacotes aqui no trabalho que são construídos com o ucs2. Eu agora não posso construir outros pacotes que usam esses pacotes ucs2 porque meu python é o ucs4. E o problema é que, assim que eu removo o python, o yum não funciona e as coisas ficam complicadas. Qual é a melhor maneira de abordar esse problema, para obter o ucs2 python e tudo mais? Por favor note que eu não posso influenciar os binários da empresa pré-construídos que são construídos com o ucs2 para serem construídos com o ucs4.

obrigado

    
por Marin 02.10.2012 / 09:09

1 resposta

3

Acho que você tem duas opções básicas:

  1. se você tiver acesso à fonte ou srpms, recompile seus pacotes ucs2 para o ucs4 python. Isso pode não ser prático se, por exemplo, você precisar se comunicar ou compartilhar dados com outras máquinas que esperam ucs2. um banco de dados por exemplo. Eu mencionei esta opção principalmente para completar - pelo que você disse, não é provável que seja uma opção viável.

  2. compile e instale uma versão do ucs2 do python em / usr / local (de preferência use GNU Stow para instalá-lo obter alguns dos benefícios que um pacote lhe daria).

    Configure o ambiente para apontar para os binários e bibliotecas ucs2 python - incluindo LD_PRELOAD, PYTHONHOME, PYTHONPATH, etc. você provavelmente desejará escrever um script para isso (fonte, ou coloque-o no script rc do seu shell - por exemplo ~ /.bashrc for bash - se você não se preocupa com a execução de python não-ucs2) Você provavelmente precisará reconstruir / reinstalar quaisquer bibliotecas python que se importem com o unicode usando seu ambiente python do ucs2 e instalá-las em / usr / local.

    Por fim, instale os pacotes ucs2 da sua empresa em / usr / local. Eles também podem precisar ser reconstruídos para serem instalados em / usr / local.

De qualquer forma, você deve reinstalar os pacotes fedora python para descompactar todo o resto do sistema que espera que o python seja instalado (incluindo o yum)

    
por 02.10.2012 / 12:56