プロジェクト

全般

プロフィール

Pythonのバージョンアップ » 履歴 » リビジョン 2

リビジョン 1 (白林檎 美和, 2021/10/08 21:31) → リビジョン 2/3 (白林檎 美和, 2025/03/12 18:14)

# Pythonのバージョンアップ 

 Portsから入れたpythonの,小数第一位以上が上がったときは, /usr/ports/UPDATING の20210425の手順を踏む。 

 1. /etc/make.conf の `DEFAULT_VERSIONS` 内の `python`, `python`*n* を,新バージョンへ書き替え。*n* は現時点で3。例: 
     

     ``` 
     DEFAULT_VERSIONS+=java=23 perl5=5.40 python=3.11 python3=3.11 ruby=3.3 samba=4.20 
 DEFAULT_VERSIONS+=java=17 perl5=5.34 python=3.10 python3=3.10 ruby=2.7 samba=4.13 ssl=openssl 
     
 ``` 
 1. pythonをアップグレード。 
     ``` 
     
 # portupgrade -o lang/python<新> python<旧> 
     
 ``` 
 1. 新しいpythonに合うよう,いったん削除→再インスコすべきぱっけぇぢを,吊し上げる。 
     ``` 
     
 $ REINSTALL=$(pkg info -o py<旧>-\* | awk '{printf "%s ", $2}') 
     
 $ echo $REINSTALL 
     
 ``` 
 1. それらのぱっけぇぢを削除→インスコ。 
     ``` 
     
 # pkg delete -f py<旧>-\* 
     
 # for pack in $REINSTALL; do make -C /usr/ports/$pack FLAVOR=py<新> config-recursive; done 
     
 # portinstall $REINSTALL 
     
 ``` 
 1. その他, pythonに依存するぱっけぇぢを再インスコ。 
     ``` 
     
 $ REBUILD=$(pkg query -g "%n:%dn" '*' | grep py<n> | grep -v py<新> | cut -d: -f1 | sort -u) 
     
 $ echo $REBUILD 
     
 # portupgrade -f $REBUILD 
     
 $ REBUILD2=$(pkg list | grep python-<旧> | xargs pkg which | awk '{print $6}' | sort -u) 
     
 $ echo $REBUILD2 
     
 # portupgrade -f $REBUILD2 
     
 ```