プロジェクト

全般

プロフィール

Pythonのバージョンアップ » 履歴 » バージョン 3

白林檎 美和, 2026/07/19 23:07

1 1 白林檎 美和
# Pythonのバージョンアップ
2
3
Portsから入れたpythonの,小数第一位以上が上がったときは, /usr/ports/UPDATING の20210425の手順を踏む。
4
5
1. /etc/make.conf の `DEFAULT_VERSIONS` 内の `python`, `python`*n* を,新バージョンへ書き替え。*n* は現時点で3。例:
6
    ```
7 3 白林檎 美和
    DEFAULT_VERSIONS+=perl5=5.44 python=3.12 python3=3.12 ruby=3.4 samba=4.23 ssl=openssl36
8 2 白林檎 美和
    ```
9 1 白林檎 美和
1. pythonをアップグレード。
10
    ```
11 2 白林檎 美和
    # portupgrade -o lang/python<新> python<旧>
12
    ```
13 1 白林檎 美和
1. 新しいpythonに合うよう,いったん削除→再インスコすべきぱっけぇぢを,吊し上げる。
14
    ```
15 2 白林檎 美和
    $ REINSTALL=$(pkg info -o py<旧>-\* | awk '{printf "%s ", $2}')
16
    $ echo $REINSTALL
17
    ```
18 1 白林檎 美和
1. それらのぱっけぇぢを削除→インスコ。
19
    ```
20 2 白林檎 美和
    # pkg delete -f py<旧>-\*
21
    # for pack in $REINSTALL; do make -C /usr/ports/$pack FLAVOR=py<新> config-recursive; done
22
    # portinstall $REINSTALL
23
    ```
24 1 白林檎 美和
1. その他, pythonに依存するぱっけぇぢを再インスコ。
25
    ```
26 2 白林檎 美和
    $ REBUILD=$(pkg query -g "%n:%dn" '*' | grep py<n> | grep -v py<新> | cut -d: -f1 | sort -u)
27
    $ echo $REBUILD
28
    # portupgrade -f $REBUILD
29
    $ REBUILD2=$(pkg list | grep python-<旧> | xargs pkg which | awk '{print $6}' | sort -u)
30
    $ echo $REBUILD2
31
    # portupgrade -f $REBUILD2
32
    ```