coLinux日記

coLinuxはフリーソフトを種として、よろずのシステムとぞなれりける。

Raspberry Pi に最新の Python3 をインストールする その2

2024-07-24 21:13:49 | Python
前々回で、今使っている Raspberry Pi に Python 3.12.4 をインストールしましたが、
矢印キーが使えないことが分かりました。readline が動いていないからだと思います。

また、 pip3 でモジュールをインストールする時に、
https://pypi.org/simple や  https://www.piwheels.org/simple
からダウンロードするので やっぱり OpenSSL も必要みたいです。

早速 Python 3.12.4 を再インストールしてみましょう。

まず、readline 、ncurses 、openssl の開発環境? をインストールします。 

# apt install libncurses-dev ncurses-doc
#
# apt install libreadline-dev readline-doc
#
# apt install libssl-dev libssl-doc libssh-dev
#

    ( libssh-dev は、念のため )

さらに、関連していると思われるパッケージの開発環境(*-dev) もついでにインストールします。

# apt install libsqlite3-dev
#
# apt install libbz2-dev
#
# apt install libffi-dev
#
# apt install libgdbm-dev
#
# apt install liblzma-dev
#
# apt install tcl tcl-dev tk tk-dev
#
# apt install uuid-dev
#
# apt install zlib1g-dev
#
# apt autoremove
#

(もう使っていないというメッセージが出てるので、libcamera0.2 を削除します。)

再インストールの邪魔にならないように一度 /usr/local/python をすべて消して作り直します。

# rm -rf /usr/local/python
# mkdir /usr/local/python

前回とほぼ同様に make します。 --with-readline オプションと --enable-shared オプションを新たに付けます。

$ tar xvf Python-3.12.4.tgz
$ cd Python-3.12.4
$ ./configure --prefix=/usr/local/python --enable-optimizations  --with-readline --enable-shared
$ make


make の最後の方は、

The necessary bits to build these optional modules were not found:
_dbm
To find the necessary bits, look in configure.ac and config.log.

Checked 111 modules (31 built-in, 78 shared, 1 n/a on linux-aarch64, 0 disabled, 1 missing, 0 failed on import)

と、なったので、 _dbm 以外はすべて解消されました。

# make install

確認のために、環境変数を設定して実行してみます。

$ export PATH=/usr/local/python/bin:$PATH
$ export LD_LIBRARY_PATH=/usr/local/python/lib

$ python3
Python 3.12.4 (main, Jul 24 2024, 09:59:01) [GCC 12.2.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>>


矢印キーの動作を確認したところ、無事に動作しました。これができないと、色々試すときに履歴が使えないので不便ですから、初心者には必要な機能ですね。

pip3 も試すために pip 自身をアップデートしてみます。

# which pip3
/usr/local/python/bin/pip3
#
# pip3 install --upgrade pip

Looking in indexes: https://pypi.org/simple, https://www.piwheels.org/simple
Requirement already satisfied: pip in /usr/local/python/lib/python3.12/site-packages (24.0)
Collecting pip
Downloading https://www.piwheels.org/simple/pip/pip-24.1.2-py3-none-any.whl (1.8 MB)
qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq 1.8/1.8 MB 941.2 kB/s eta 0:00:00
Installing collected packages: pip
Attempting uninstall: pip
Found existing installation: pip 24.0
Uninstalling pip-24.0:
Successfully uninstalled pip-24.0
Successfully installed pip-24.1.2
WARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv
#

pip と pip3 は同じものみたいです。
$ pip3 --version
pip 24.1.2 from /usr/local/python/lib/python3.12/site-packages/pip (python 3.12)
$
$ pip --version
pip 24.1.2 from /usr/local/python/lib/python3.12/site-packages/pip (python 3.12)
$

というわけで、Python 3.12.4 のインストールは一応終わりました。Python3 でデータベースを使う時は、 gdbm か sqlite3 を押しているみたいですね。

これで、Python3 3.12.4 の Raspberry Pi へのインストールは完了です。

こちらでは、Python を無料で学習するのが目的なので、そろそろ終わる SimplePrograms に続いて何かないかと、
https://www.python.org/
から探していたら、次のものを見つけました。

PyFlo
https://pyflo.net/
The beginners guide to becoming a Python programmer


なので、機会があればこちらも並行して見てみたいと思います。 そこでは、 「Mu エディタ」 を推薦していますが、こちらは Raspberry Pi を使って Python 3.12.4 で色々試すのは従来通りです。

今回の作業によって、Raspberry Pi をディスプレイとか繋がずに単体で立ち上げて、ネットワークを通して ssh でログインして使うと、プログラミング学習に有効であることが分かりました。しかも、最新版の Python がこのように使えます。小さいので安定感を心配する方もいるかもしれませんが、こちらでは電源入れっぱなしで Webサーバとかも起動してあるのですが、数年間動いています。

プログラミング言語学習のためにスクールに行くとしても、家に実行環境がないと苦労するような気がするのですが、そこらへんはどうなっているのかが気になります。

コメント    この記事についてブログを書く
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする
« SimplePrograms で Python を... | トップ | SimplePrograms で Python を... »
最新の画像もっと見る

コメントを投稿

Python」カテゴリの最新記事