web-dev-qa-db-ja.com

apt-get sourceに要求したパッケージを取得させるにはどうすればよいですか

$ apt-get source libtiff4
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Picking 'tiff3' as source package instead of 'libtiff4'
E: Unable to find a source package for tiff3

-fを追加しても、動作は変わりません。これを行う原因は何ですか?また、必要なパッケージをダウンロードさせるにはどうすればよいですか?

検索に基づいて、tiff3のアイデアをどこで得ているのかさえわかりません

$ apt-cache search libtiff
libtiff-doc - TIFF manipulation and conversion documentation
libtiff-tools - TIFF manipulation and conversion tools
libtiff5 - Tag Image File Format (TIFF) library
libtiff5-alt-dev - Tag Image File Format library (TIFF), alternative development files
libtiff5-dev - Tag Image File Format library (TIFF), development files
libtiffxx5 - Tag Image File Format (TIFF) library -- C++ interface
gem-plugin-tiff - Graphics Environment for Multimedia - TIFF support
libtiff-opengl - TIFF manipulation and conversion tools
libtiff4 - Tag Image File Format (TIFF) library (old version)
libtiff4-dev - Tag Image File Format (TIFF) library (old version), development files
libtiffxx0c2 - Tag Image File Format (TIFF) library (old version) -- C++ interface
pngtools - series of tools for PNG (Portable Network Graphics) images
python-libtiff - wrapper to the libtiff library to Python using ctypes
2
boatcoder

バイナリパッケージとそれに対応するソースパッケージの間には1対1の関係はありません。この理由は次のとおりです。

  • 場合によっては、単一のソースから複数のバイナリパッケージが派生します。
  • バイナリパッケージのバージョン管理を反映して、名前はわずかに異なります
  • 一部のパッケージにはバイナリが直接含まれていませんが、代わりにインストールする必要がある依存パッケージのみを指定します。

Ubuntuの新しいバージョンがインストールされているためか、特定の問題を再現できません。以下は、同様のライブラリに関する同様の問題のウォークスルーです(私の例のすべては既にインストールされていますが、表示されるマッピングと依存関係に関する情報は依然として関連していることに注意してください)。これにより、この種の問題に対処する方法についての良いヒントが得られるはずです。

libjpeg8というパッケージを正常にインストールしました:

$ Sudo apt-get install libjpeg8
Reading package lists... Done
Building dependency tree       
Reading state information... Done
libjpeg8 is already the newest version.

ソースを取得しようとしましたが、接尾辞-emptyが付いたものに再マップされます。

$ apt-get source libjpeg8
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Picking 'libjpeg8-empty' as source package instead of 'libjpeg8'
Skipping unpack of already unpacked source in libjpeg8-empty-8c

目的のパッケージの依存関係をリストし、libjpeg-turbo8に注目します。

$ apt-cache depends libjpeg8
libjpeg8
  Depends: libjpeg-turbo8
  Replaces: libjpeg8:i386
  Breaks: libjpeg8:i386

libjpeg-turbo8のソースをインストールし、必要なソースを取得します。

$ apt-get source libjpeg-turbo8
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Picking 'libjpeg-turbo' as source package instead of 'libjpeg-turbo8'
Skipping unpack of already unpacked source in libjpeg-turbo-1.3.0
1
nobar

「ソフトウェアと更新」でマークされた「ソースコード」エントリチェックがあることを確認します。

software and updates screenshot

そうでない場合は、チェックマークを付けてターミナルを開き、次の操作を行います。

Sudo apt-get update

(チェックボックスがオンになっていない場合はチェックマークを付けた後にパッケージリストをリロードするように求めるダイアログボックスが表示された場合、おそらくこれを行う必要はありません)

apt-get source libtiff4-dev

libtiff4のソースコードを取得します。

0
jobin