UCS4로 빌드된 Python을 UCS2로 교체

UCS4로 빌드된 Python을 UCS2로 교체

Fedora fc15와 Python 2.7.1-7.fc15를 설치했습니다. 이는 ucs4로 구축되었으며 여기에는 ucs2로 구축된 일부 패키지가 있습니다. 내 Python이 ucs4이기 때문에 지금은 이러한 ucs2 패키지를 사용하는 다른 패키지를 만들 수 없습니다. 문제는 Python을 제거하면 yum이 작동하지 않고 상황이 복잡해진다는 것입니다. ucs2 python 등을 얻기 위해 이 문제를 해결하는 가장 좋은 방법은 무엇입니까? ucs4로 빌드하기 위해 ucs2로 빌드된 사전 빌드된 회사 바이너리에는 영향을 미칠 수 없습니다.

감사해요

답변1

두 가지 기본 옵션이 있다고 생각합니다.

  1. 소스 코드나 srpm에 액세스할 수 있는 경우 ucs4 python용 ucs2 패키지를 다시 컴파일하세요. 예를 들어, ucs2가 필요한 다른 컴퓨터와 통신하거나 데이터를 공유해야 하는 경우 이는 실용적이지 않을 수 있습니다. 예를 들어, 데이터베이스. 나는 이 옵션을 주로 완전성을 위해 언급합니다. 귀하가 말씀하신 바에 따르면 실행 가능한 옵션이 아닐 가능성이 높습니다.

  2. Python의 ucs2 버전을 /usr/local에 컴파일하고 설치합니다(바람직하게는 다음을 사용).GNU 스토우패키지가 제공하는 이점 중 일부를 얻으려면 설치하세요.)

    LD_PRELOAD, PYTHONHOME, PYTHONPATH 등을 포함하여 ucs2 Python 바이너리 및 라이브러리를 가리키도록 환경을 설정합니다. 이에 대한 스크립트를 작성하고 싶을 수도 있습니다(얻거나 쉘의 rc 스크립트에 넣거나 - 예를 들어 bash의 경우 ~/.bashrc - ucs2가 아닌 Python 실행에 전혀 신경 쓰지 않는 경우). 다시 빌드해야 할 수도 있습니다. ucs2 Python 환경을 사용하여/유니코드에 관심이 있는 Python 라이브러리를 다시 설치하고 /usr/local에 설치합니다.

    마지막으로 /usr/local에 회사의 ucs2 소프트웨어 패키지를 설치하십시오. /usr/local에 설치하려면 다시 빌드해야 할 수도 있습니다.

어느 쪽이든, 시스템에서 Python 설치가 필요한 다른 모든 항목(yum 포함)을 제거하려면 fedora python 패키지를 다시 설치해야 합니다.

관련 정보