【解決】pycups のインストールエラーに対処する

Linux,プログラムPip,pycups,Python,シェルスクリプト

Python のパッケージマネージャ pippycups をアップグレードしようとしたらエラーが出たので対応方法を書いておきます。

環境

  • Linux, Ubuntu 20.04.5 LTS
  • Python 3.8
  • pip 22.3.1

対応方法(結論)

GitHub で issue が投げられているのを参考にしました。libcups2-dev をインストールするとよいそうです。

sudo apt install libcups2-dev

これでインストールしたあと、pip install -U pycups で無事アップグレードできました。

起きたこと

pip コマンドでアップグレードしようとしたら以下のようなエラーが出てしまいました。

Building wheel for pycups (setup.py) ... error
error: subprocess-exited-with-error

× python setup.py bdist_wheel did not run successfully.
│ exit code: 1
╰─> [6 lines of output]
    In file included from cupsconnection.c:22:
    cupsconnection.h:26:10: fatal error: cups/http.h: そのようなファイルやディレクトリはありません
       26 | #include <cups/http.h>
          |          ^~~~~~~~~~~~~
    compilation terminated.
    error: command '/usr/bin/x86_64-linux-gnu-gcc' failed with exit code 1
    [end of output]

note: This error originates from a subprocess, and is likely not a problem with pip.
ERROR: Failed building wheel for pycups
Running setup.py clean for pycups

どうも cups/http.h が見つからないようです。

cups http.h not found" で雑に検索したら、cupsibity の GitHub Issue に似たような質問が上がっているのを確認しました。

Linux の場合、cups/http.h は libcups2-dev パッケージに入っているようなので、別途インストールしたあとは問題なくアップグレードできるようになりました。

参考資料