debian/control 파일에 종속성을 올바르게 지정하십시오.

debian/control 파일에 종속성을 올바르게 지정하십시오.

저는 이것이 주요 패키지 버전이고 다음에 지정된 명명 규칙을 준수하는 libfoo0.deb런타임 공유 라이브러리 패키지를 구축하고 있습니다.0데비안 정책.

libbar문제는 런타임 공유 라이브러리 패키지를 기반으로 또 다른 공유 라이브러리를 구축하고 싶다는 것입니다 libfoo0. 그래서 종속성 섹션을 추가하려고 생각하고 있지만 버전을 지정해야 하는지 잘 모르겠습니다.

Depends: libfoo0 (= 0.0.4)

이것은 빌드된 0.0.4버전 입니다 libfoo0-dev.deb(개발 파일/필요한 심볼릭 링크가 포함된 패키지 /usr/lib/). libbar내가 보는 문제는 이로 인해 사용자가 libfoo0.

질문:바이너리가 주요 라이브러리 버전 간에 이전 버전과 호환되는 한 빌드 중인 라이브러리/바이너리의 정확한 버전에 대한 종속성을 libfoo0지정할 필요가 없습니까 ?libfoo0

답변1

빌드에 dh_shlibdeps또는 (를 dpkg-shlibdeps사용하는 경우 dh처리됩니다.

Depends: ${shlibs:Depends}

에 적절한 종속성이 추가됩니다 libbar.control

라이브러리를 동시에 업그레이드해야 하는 경우가 아니면 특정 버전을 하드코딩해서는 안 됩니다. 동일한 주요 버전을 가진 라이브러리는 이전 버전과 호환되어야 하므로 버전이 필요한 버전보다 크거나 같으면 괜찮을 것입니다. 도구는 이 문제도 처리합니다. IIRC 에 수동으로 파일을 shlibs추가 해야 할 수도 있습니다 . 빌드에서 처리해야 할 시기를 알려줍니다.symbolslibfoo

관련 정보