9a4f65cdbe8a8e95f9182327bfa4c57c7984ef6a
python/pybluez/pybluez\343\202\244\343\203\263\343\202\271\343\203\210\343\203\274\343\203\253\346\231\202\343\201\256\343\202\250\343\203\251\343\203\274.md
| ... | ... | @@ -0,0 +1,42 @@ |
| 1 | +この記事はChatGPT o1によって生成しました。 |
|
| 2 | + |
|
| 3 | +## 概要 |
|
| 4 | +Python のライブラリには、インストール時にソースコードのコンパイルを必要とするものがある。そのため、Python の C ヘッダやその他の開発関連ライブラリをあらかじめ用意しておく必要がある。 |
|
| 5 | +本記事では、特にエラーが起こりやすいパッケージ(`sysv-ipc`, `pybluez` など)のインストール時に見られる代表的なエラーメッセージと、その対処方法を示す。 |
|
| 6 | + |
|
| 7 | +--- |
|
| 8 | + |
|
| 9 | +## sysv-ipc インストール時のエラー例と対処方法 |
|
| 10 | +### エラー例 |
|
| 11 | + |
|
| 12 | +- "fatal error: Python.h: No such file or directory" |
|
| 13 | +- "command '/usr/bin/aarch64-linux-gnu-gcc' failed with exit code 1" |
|
| 14 | + |
|
| 15 | +これは、Python の開発ヘッダファイル (`Python.h`) が見つからないために発生するエラーである。 |
|
| 16 | +Debian/Ubuntu 系の環境では、以下のコマンドで開発ツールをインストールすることで対処できる。 |
|
| 17 | + |
|
| 18 | +```bash |
|
| 19 | +sudo apt-get update |
|
| 20 | +sudo apt-get install build-essential python3-dev |
|
| 21 | +``` |
|
| 22 | + |
|
| 23 | +`python3-dev` は環境に合わせて任意のバージョン(例: `python3.7-dev`, `python3.11-dev` など)を指定してよい。 |
|
| 24 | +これによって必要なヘッダファイルが用意され、`pip install -r requirements.txt` を再度実行すると `sysv-ipc` が正常にビルドできるようになる。 |
|
| 25 | + |
|
| 26 | +--- |
|
| 27 | + |
|
| 28 | +## pybluez インストール時のエラー例と対処方法 |
|
| 29 | +### エラー例 |
|
| 30 | + |
|
| 31 | +- "fatal error: bluetooth/bluetooth.h: No such file or directory" |
|
| 32 | +- "command '/usr/bin/aarch64-linux-gnu-gcc' failed with exit code 1" |
|
| 33 | + |
|
| 34 | +これは、Bluetooth 用の C ヘッダファイルが見つからずに発生するエラーである。 |
|
| 35 | +Debian/Ubuntu 系システムでは、以下のコマンドにより対応するパッケージをインストールすると解決できる。 |
|
| 36 | + |
|
| 37 | +```bash |
|
| 38 | +sudo apt-get update |
|
| 39 | +sudo apt-get install libbluetooth-dev |
|
| 40 | +``` |
|
| 41 | + |
|
| 42 | +インストール後に再度 `pip install -r requirements.txt` を実行することで、`pybluez` がビルドされ、インストールが成功するようになる。 |
|
| ... | ... | \ No newline at end of file |