apt를 사용하지 않고 xdebug를 업그레이드하시겠습니까?

apt를 사용하지 않고 xdebug를 업그레이드하시겠습니까?

저는 debian 5.0.6을 실행 중이고 aptitude를 통해 xdebug 2.0.3을 설치했습니다. 이제 PHPUnit을 설치하려고 하는데 pear를 통해 설치하려고 하면 PHPUnit이 xdebug 업데이트를 원한다는 오류가 발생합니다.

phpunit/PHPUnit requires PHP extension "xdebug" (version >= 2.0.5), installed version is 2.0.3

데비안 웹사이트를 확인해 보니 2.0.5용 패키지가 보이지 않습니다. 적절한 시스템 외부에서 xdebug를 업그레이드하는 것이 안전한가요? 나는 이러한 것(php, apache2 및 xdebug)이 서로 어떻게 관련되어 있는지 완전히 확신하지 못하며 문제를 일으키고 가동 중지 시간을 유발하고 싶지 않습니다. 내 대략적인 추측은 xdebug 2.0.5를 빌드한 다음 Apache를 다시 시작한다는 것입니다. 혼자 하면 xdebug 패키지 나올 때 적성이 문제를 일으키나요?

답변1

새로운 버전이 있습니다스퀴즈 중 xdebug(데비안의 다음 버전은 이제 매달 준비될 것입니다). 안정적인 공식 백포트가 없습니다. 그렇지 않으면 백포트가 아래에 나열됩니다.xdebug 패키지 검색 페이지). 바이너리 패키지는 최신 버전의 PHP를 사용하지만 컴파일할 수 있어야 합니다.소스코드 패키지lenny의 빌드 종속성이 lenny에서 만족되기 때문입니다. 패키지를 만드는 비결은 다음과 같습니다.

  1. 세 개의 파일( .dsc, .orig.tar.gz.debian.tar.gz)을 다운로드합니다. 이는 적시 요구 사항이므로 수동으로 수행할 수 있습니다.
  2. 빌드 종속성을 사용하거나 설치합니다(여기 debhelperphp5-dev). 또한 기본 개발 패키지 세트를 설치하면 패키지가 모두 제거됩니다. 아직 설치가 필요합니다.apt-getaptitudebuild-essentialfakeroot
  3. 소스 코드의 압축을 풀고 dpkg-source -x xdebug_2.1.0-1.dsc소스 코드 디렉터리로 전환합니다: cd xdebug-2.1.0.
  4. (소스 패키지를 변경하지 않는 경우 이 단계를 건너뛸 수 있습니다.) 파일
    을 편집하여 debian/changelog새 변경 로그 항목을 추가합니다. 이는 Emacs에서 쉽게 수행됩니다.
    • 확실하게 하다dpkg-dev-el소프트웨어 패키지가 설치되었습니다.
    • debian/changelogEmacs에서 엽니다.
    • 항목을 추가하는 데 사용됩니다 C-c C-a.
    • 새 버전 번호를 선택합니다( 2.1.0~user394+1공식 백포트에서 사용하는 패턴을 따르는 합리적인 선택입니다).
    • 로그 항목을 작성합니다(예 backport to lenny: 변경 사항을 설명).
    • 항목을 완료 하는 데 사용됩니다 C-c C-c.
  5. 패키지 컴파일: dpkg-buildpackage -rfakeroot -us -uc
    PGP/GPG 키가 있는 경우 -us -uc패키지에 암호화 서명하라는 메시지가 표시될 때 비밀번호를 입력하지 마세요.
  6. Profit은 바이너리 패키지를 설치합니다.

단계를 요약하면 다음과 같습니다.

wget http://ftp.de.debian.org/debian/pool/main/x/xdebug/xdebug_2.1.0{.orig.tar.gz,-1.{dsc,debian.tar.gz}}
sudo aptitude install build-essential fakeroot debhelper php5-dev
dpkg-source -x xdebug_2.1.0-1.dsc
cd xdebug-2.1.0
# patch as necessary
emacs debian/changelog # not necessary if unpatched
dpkg-buildpackage -rfakeroot -us -uc
dpkg -i ../php5-xdebug_2.1.0_*.deb

답변2

맞습니다. php-dev 패키지를 설치하고(기존 PHP에 대해 컴파일할 수 있도록) 최신 xdebug 버전을 빌드하여 데비안 버전을 덮어쓸 수 있습니다. 문제는 데비안이 패키지(어쩌면 작은 패치)를 업데이트하면 변경 사항이 덮어쓰여진다는 것입니다. 자신만의 패키지를 만들 수 있지만 이는 다소 번거로운 경우가 많습니다.

그러나 중단/문제 관점에서는 문제가 없을 것입니다(최악의 상황은 php.ini 파일에서 xdebug 확장에 대한 경로를 조정해야 할 수도 있다는 것입니다).

관련 정보