linux:anyenv

anyenv - rbenv スタイルのオールインワン環境マネージャー

git コマンドで anyenv~/.anyenvclone する。

$ git clone --depth 1 https://github.com/anyenv/anyenv ~/.anyenv

Cloning into '/home/tomoyan/.anyenv'...
remote: Enumerating objects: 34, done.
remote: Counting objects: 100% (34/34), done.
remote: Compressing objects: 100% (28/28), done.
remote: Total 34 (delta 0), reused 22 (delta 0), pack-reused 0
Receiving objects: 100% (34/34), 14.66 KiB | 4.88 MiB/s, done.

anyenvPATH を通す。

$ echo 'export PATH="$HOME/.anyenv/bin:$PATH"' >> ~/.bashrc

bash の設定を反映させる。

$ . ~/.bashrc

anyenv の動作確認。

$ anyenv

anyenv 1.1.5
Usage: anyenv  []

Some useful anyenv commands are:
   commands            List all available anyenv commands
   local               Show the local application-specific Any version
   global              Show the global Any version
   install             Install a **env
   uninstall           Uninstall a specific **env
   version             Show the current Any version and its origin
   versions            List all Any versions available to **env

See `anyenv help ' for information on a specific command.
For full documentation, see: https://github.com/anyenv/anyenv#readme

$ anyenv init

# Load anyenv automatically by adding
# the following to ~/.bash_profile:

eval "$(anyenv init -)"

表示された指示に従って、自動ロードの設定を追加する。

$ echo 'eval "$(anyenv init -)"' >> ~/.bash_profile

または、~/.profile が優先なディストリビューションでは、

$ echo 'eval "$(anyenv init -)"' >> ~/.profile

$ ls -al

...
drwxr-xr-x  8 dietpi dietpi  4096 Apr  4 10:41 .anyenv
-rw-r--r--  1 dietpi dietpi   161 Dec 16 00:24 .profile

~/.bash_profile ではなく ~/.profile に統一しているディストリビューションでは、~/.bash_profile が存在していないので ~/.profile に設定を追記するべきです。新たに ~/.bash_profile を作成してしまうと元々の ~/.profile が実行されなくなって問題が起きる可能性があります😱

ログイン時のスクリプト実行優先順位は、以下の順番で且つ何れか1つだけが実行されます🤔

~/.bash_profile
~/.bash_login
~/.profile

参考: 【LPIC102】bashの設定ファイルと読み込み順序 LPICで学ぶLinux2 - SEワンタンの独学備忘録

bash の設定を反映させる。(exec $(which zsh) –login or exec $(which bash) –login …)

$ exec $SHELL -l

ANYENV_DEFINITION_ROOT(/home/tomoyan/.config/anyenv/anyenv-install) doesn't exist. You can initialize it by:
> anyenv install --init

$ ls -al .bash*

...
-rw-r--r-- 1 tomoyan tomoyan  187  2月  9 04:11 .bash_profile
-rw-r--r-- 1 tomoyan tomoyan  575  2月  8 14:00 .bashrc

.bash_profile または .profile は、ログイン時に1度だけ実行される🤔
.bashrc は、bash 起動時に1度だけ実行される🤔
exec $SHELL -l.bash_profile を適用して bash を起動するが、その bash を終了すると .bash_profile の内容は失われるので再ログインする必要がある🤔

$ anyenv install --init

Manifest directory doesn't exist: /home/tomoyan/.config/anyenv/anyenv-install
Do you want to checkout https://github.com/anyenv/anyenv-install.git? [y/N]: y
Cloning https://github.com/anyenv/anyenv-install.git master to /home/tomoyan/.config/anyenv/anyenv-install...
Cloning into '/home/tomoyan/.config/anyenv/anyenv-install'...
remote: Enumerating objects: 71, done.
remote: Counting objects: 100% (14/14), done.
remote: Compressing objects: 100% (13/13), done.
remote: Total 71 (delta 4), reused 3 (delta 1), pack-reused 57
Receiving objects: 100% (71/71), 13.15 KiB | 3.29 MiB/s, done.
Resolving deltas: 100% (11/11), done.

Completed!

$ anyenv install -l | column -x -c 128

  Renv            crenv           denv            erlenv          exenv           goenv           hsenv           jenv
  jlenv           kubectlenv      luaenv          nodenv          phpenv          plenv           pyenv           rbenv
  sbtenv          scalaenv        swiftenv        tfenv

column コマンドは以下のコマンドでインストールする😉

  • Fedora

    $ sudo dnf install util-linux
    

  • Raspberry Pi OS, DietPi

    $ sudo apt install bsdextrautils
    

インストール マニフェスト ディレクトリが初期化されていない場合

$ anyenv install -l

ANYENV_DEFINITION_ROOT(/home/tomoyan/.config/anyenv/anyenv-install) doesn't exist. You can initialize it by:
> anyenv install --init

$ anyenv help install

Usage: anyenv install [-f|--force] [-s/--skip-existing] <**env>
       anyenv install -l|--list
       anyenv install --init       [git-url] [git-ref]
       anyenv install --force-init [git-url] [git-ref]
       anyenv install --update

  -l/--list          List all available **envs
  -f/--force         Install even if the **env appears to be installed already
  -s/--skip-existing Skip if the version appears to be installed already
  --init             Initialize install manifests with specified git repo or anyenv/anyenv-install
  --force-init       Initialize install manifests without confirmation
  --update           Update install manifests

ソースコード: GitHub - znz/anyenv-update: anyenv plugin that provides `anyenv update` command to update all **env and all plugins

anyenv-update プラグインは、anyenv 本体、anyenv のプラグイン、および、**env のすべてをコマンド一発で更新してくれるスグレモノ😆

インストール

$ mkdir -p $(anyenv root)/plugins && git clone --depth 1 https://github.com/znz/anyenv-update.git $(anyenv root)/plugins/anyenv-update

Cloning into '/home/tomoyan/.anyenv/plugins/anyenv-update'...
remote: Enumerating objects: 7, done.
remote: Counting objects: 100% (7/7), done.
remote: Compressing objects: 100% (6/6), done.
remote: Total 7 (delta 0), reused 3 (delta 0), pack-reused 0
Receiving objects: 100% (7/7), 4.06 KiB | 4.06 MiB/s, done.

動作確認

$ anyenv update

Updating 'anyenv'...
 |  From https://github.com/anyenv/anyenv
 |  610ce3b..95a0419  master     -> origin/master
Updating 'anyenv/anyenv-update'...
Updating 'nodenv'...
Updating 'nodenv/node-build'...
Updating 'nodenv/nodenv-vars'...
Updating 'rbenv'...
 |  From https://github.com/rbenv/rbenv
 |  585ed84..c4395e5  master     -> origin/master
 |  * [new tag]         v1.2.0     -> v1.2.0
Updating 'rbenv/ruby-build'...
Updating 'anyenv manifest directory'...

Python をインストールするための pyenv をインストールする。

$ anyenv install pyenv

anyenv install pyenv
/tmp/pyenv.20221013140754.13531 ~
Cloning https://github.com/pyenv/pyenv.git master to pyenv...
Cloning into 'pyenv'...
remote: Enumerating objects: 22020, done.
remote: Counting objects: 100% (88/88), done.
remote: Compressing objects: 100% (57/57), done.
remote: Total 22020 (delta 37), reused 69 (delta 24), pack-reused 21932
Receiving objects: 100% (22020/22020), 4.43 MiB | 757.00 KiB/s, done.
Resolving deltas: 100% (14897/14897), done.
~

Install pyenv succeeded!
Please reload your profile (exec $SHELL -l) or open a new session.

pyenv の動作確認。

$ exec $SHELL -l
$ pyenv

pyenv 2.3.5-2-g03a5d653
Usage: pyenv  []

Some useful pyenv commands are:
   --version   Display the version of pyenv
   commands    List all available pyenv commands
   exec        Run an executable with the selected Python version
   global      Set or show the global Python version(s)
   help        Display help for a command
   hooks       List hook scripts for a given pyenv command
   init        Configure the shell environment for pyenv
   install     Install a Python version using python-build
   local       Set or show the local application-specific Python version(s)
   prefix      Display prefixes for Python versions
   rehash      Rehash pyenv shims (run this after installing executables)
   root        Display the root directory where versions and shims are kept
   shell       Set or show the shell-specific Python version
   shims       List existing pyenv shims
   uninstall   Uninstall Python versions
   version     Show the current Python version(s) and its origin
   version-file   Detect the file that sets the current pyenv version
   version-name   Show the current Python version
   version-origin   Explain how the current Python version is set
   versions    List all Python versions available to pyenv
   whence      List all Python versions that contain the given executable
   which       Display the full path to an executable

See `pyenv help ' for information on a specific command.
For full documentation, see: https://github.com/pyenv/pyenv#readme

$ pyenv help install

Usage: pyenv install [-f] [-kvp] 
       pyenv install [-f] [-kvp] 
       pyenv install -l|--list
       pyenv install --version

  -l/--list          List all available versions
  -f/--force         Install even if the version appears to be installed already
  -s/--skip-existing Skip if the version appears to be installed already

  python-build options:

  -k/--keep          Keep source tree in $PYENV_BUILD_ROOT after installation
                     (defaults to $PYENV_ROOT/sources)
  -p/--patch         Apply a patch from stdin before building
  -v/--verbose       Verbose mode: print compilation status to stdout
  --version          Show version of python-build
  -g/--debug         Build a debug version

For detailed information on installing Python versions with
python-build, including a list of environment variables for adjusting
compilation, see: https://github.com/pyenv/pyenv#readme

インストールしたい Python バージョンが無いとか悩む必要はない🤔
anyenv-update プラグインで pyenvpython-build もコマンド一発でいつも最新に保てる😉

$ anyenv update pyenv

Updating 'pyenv'...
Skipping 'pyenv/python-build'; not git repo
Updating 'anyenv manifest directory'...

バージョン一覧を表示する🤤

$ pyenv install -l | column -x -c 128

Available versions:               2.1.3                           2.2.3                           2.3.7
  2.4.0                           2.4.1                           2.4.2                           2.4.3
  2.4.4                           2.4.5                           2.4.6                           2.5.0
  2.5.1                           2.5.2                           2.5.3                           2.5.4
  2.5.5                           2.5.6                           2.6.0                           2.6.1
  2.6.2                           2.6.3                           2.6.4                           2.6.5
  2.6.6                           2.6.7                           2.6.8                           2.6.9
  2.7.0                           2.7-dev                         2.7.1                           2.7.2
  2.7.3                           2.7.4                           2.7.5                           2.7.6
  2.7.7                           2.7.8                           2.7.9                           2.7.10
  2.7.11                          2.7.12                          2.7.13                          2.7.14
  2.7.15                          2.7.16                          2.7.17                          2.7.18
  3.0.1                           3.1.0                           3.1.1                           3.1.2
  3.1.3                           3.1.4                           3.1.5                           3.2.0
  3.2.1                           3.2.2                           3.2.3                           3.2.4
  3.2.5                           3.2.6                           3.3.0                           3.3.1
  3.3.2                           3.3.3                           3.3.4                           3.3.5
  3.3.6                           3.3.7                           3.4.0                           3.4-dev
  3.4.1                           3.4.2                           3.4.3                           3.4.4
  3.4.5                           3.4.6                           3.4.7                           3.4.8
  3.4.9                           3.4.10                          3.5.0                           3.5-dev
  3.5.1                           3.5.2                           3.5.3                           3.5.4
  3.5.5                           3.5.6                           3.5.7                           3.5.8
  3.5.9                           3.5.10                          3.6.0                           3.6-dev
  3.6.1                           3.6.2                           3.6.3                           3.6.4
  3.6.5                           3.6.6                           3.6.7                           3.6.8
  3.6.9                           3.6.10                          3.6.11                          3.6.12
  3.6.13                          3.6.14                          3.6.15                          3.7.0
  3.7-dev                         3.7.1                           3.7.2                           3.7.3
  3.7.4                           3.7.5                           3.7.6                           3.7.7
  3.7.8                           3.7.9                           3.7.10                          3.7.11
  3.7.12                          3.7.13                          3.7.14                          3.7.15
  3.7.16                          3.7.17                          3.8.0                           3.8-dev
  3.8.1                           3.8.2                           3.8.3                           3.8.4
  3.8.5                           3.8.6                           3.8.7                           3.8.8
  3.8.9                           3.8.10                          3.8.11                          3.8.12
  3.8.13                          3.8.14                          3.8.15                          3.8.16
  3.8.17                          3.8.18                          3.9.0                           3.9-dev
  3.9.1                           3.9.2                           3.9.4                           3.9.5
  3.9.6                           3.9.7                           3.9.8                           3.9.9
  3.9.10                          3.9.11                          3.9.12                          3.9.13
  3.9.14                          3.9.15                          3.9.16                          3.9.17
  3.9.18                          3.10.0                          3.10-dev                        3.10.1
  3.10.2                          3.10.3                          3.10.4                          3.10.5
  3.10.6                          3.10.7                          3.10.8                          3.10.9
  3.10.10                         3.10.11                         3.10.12                         3.10.13
  3.11.0                          3.11-dev                        3.11.1                          3.11.2
  3.11.3                          3.11.4                          3.11.5                          3.12.0rc2
  3.12-dev                        3.13-dev                        activepython-2.7.14             activepython-3.5.4
  activepython-3.6.0              anaconda-1.4.0                  anaconda-1.5.0                  anaconda-1.5.1
  anaconda-1.6.0                  anaconda-1.6.1                  anaconda-1.7.0                  anaconda-1.8.0
  anaconda-1.9.0                  anaconda-1.9.1                  anaconda-1.9.2                  anaconda-2.0.0
  anaconda-2.0.1                  anaconda-2.1.0                  anaconda-2.2.0                  anaconda-2.3.0
  anaconda-2.4.0                  anaconda-4.0.0                  anaconda2-2.4.0                 anaconda2-2.4.1
  anaconda2-2.5.0                 anaconda2-4.0.0                 anaconda2-4.1.0                 anaconda2-4.1.1
  anaconda2-4.2.0                 anaconda2-4.3.0                 anaconda2-4.3.1                 anaconda2-4.4.0
  anaconda2-5.0.0                 anaconda2-5.0.1                 anaconda2-5.1.0                 anaconda2-5.2.0
  anaconda2-5.3.0                 anaconda2-5.3.1                 anaconda2-2018.12               anaconda2-2019.03
  anaconda2-2019.07               anaconda2-2019.10               anaconda3-2.0.0                 anaconda3-2.0.1
  anaconda3-2.1.0                 anaconda3-2.2.0                 anaconda3-2.3.0                 anaconda3-2.4.0
  anaconda3-2.4.1                 anaconda3-2.5.0                 anaconda3-4.0.0                 anaconda3-4.1.0
  anaconda3-4.1.1                 anaconda3-4.2.0                 anaconda3-4.3.0                 anaconda3-4.3.1
  anaconda3-4.4.0                 anaconda3-5.0.0                 anaconda3-5.0.1                 anaconda3-5.1.0
  anaconda3-5.2.0                 anaconda3-5.3.0                 anaconda3-5.3.1                 anaconda3-2018.12
  anaconda3-2019.03               anaconda3-2019.07               anaconda3-2019.10               anaconda3-2020.02
  anaconda3-2020.07               anaconda3-2020.11               anaconda3-2021.04               anaconda3-2021.05
  anaconda3-2021.11               anaconda3-2022.05               anaconda3-2022.10               anaconda3-2023.03-0
  anaconda3-2023.03               anaconda3-2023.03-1             anaconda3-2023.07-0             anaconda3-2023.07-1
  anaconda3-2023.07-2             cinder-3.8-dev                  cinder-3.10-dev                 graalpy-22.3.0
  graalpy-23.0.0                  graalpython-20.1.0              graalpython-20.2.0              graalpython-20.3.0
  graalpython-21.0.0              graalpython-21.1.0              graalpython-21.2.0              graalpython-21.3.0
  graalpython-22.0.0              graalpython-22.1.0              graalpython-22.2.0              ironpython-dev
  ironpython-2.7.4                ironpython-2.7.5                ironpython-2.7.6.3              ironpython-2.7.7
  jython-dev                      jython-2.5.0                    jython-2.5-dev                  jython-2.5.1
  jython-2.5.2                    jython-2.5.3                    jython-2.5.4-rc1                jython-2.7.0
  jython-2.7.1                    jython-2.7.2                    mambaforge-pypy3                mambaforge
  mambaforge-4.10.1-4             mambaforge-4.10.1-5             mambaforge-4.10.2-0             mambaforge-4.10.3-0
  mambaforge-4.10.3-1             mambaforge-4.10.3-2             mambaforge-4.10.3-3             mambaforge-4.10.3-4
  mambaforge-4.10.3-5             mambaforge-4.10.3-6             mambaforge-4.10.3-7             mambaforge-4.10.3-8
  mambaforge-4.10.3-9             mambaforge-4.10.3-10            mambaforge-4.11.0-0             mambaforge-4.11.0-1
  mambaforge-4.11.0-2             mambaforge-4.11.0-3             mambaforge-4.11.0-4             mambaforge-4.12.0-0
  mambaforge-4.12.0-1             mambaforge-4.12.0-2             mambaforge-4.12.0-3             mambaforge-4.13.0-1
  mambaforge-4.14.0-0             mambaforge-4.14.0-1             mambaforge-4.14.0-2             mambaforge-22.9.0-0
  mambaforge-22.9.0-1             mambaforge-22.9.0-2             mambaforge-22.9.0-3             micropython-dev
  micropython-1.9.3               micropython-1.9.4               micropython-1.10                micropython-1.11
  micropython-1.12                micropython-1.13                micropython-1.14                micropython-1.15
  micropython-1.16                micropython-1.17                micropython-1.18                micropython-1.19.1
  miniconda-latest                miniconda-2.2.2                 miniconda-3.0.0                 miniconda-3.0.4
  miniconda-3.0.5                 miniconda-3.3.0                 miniconda-3.4.2                 miniconda-3.7.0
  miniconda-3.8.3                 miniconda-3.9.1                 miniconda-3.10.1                miniconda-3.16.0
  miniconda-3.18.3                miniconda2-latest               miniconda2-2.7-4.8.3            miniconda2-3.18.3
  miniconda2-3.19.0               miniconda2-4.0.5                miniconda2-4.1.11               miniconda2-4.3.14
  miniconda2-4.3.21               miniconda2-4.3.27               miniconda2-4.3.30               miniconda2-4.3.31
  miniconda2-4.4.10               miniconda2-4.5.1                miniconda2-4.5.4                miniconda2-4.5.11
  miniconda2-4.5.12               miniconda2-4.6.14               miniconda2-4.7.10               miniconda2-4.7.12
  miniconda3-latest               miniconda3-2.2.2                miniconda3-3.0.0                miniconda3-3.0.4
  miniconda3-3.0.5                miniconda3-3.3.0                miniconda3-3.4.2                miniconda3-3.7.0
  miniconda3-3.7-4.8.2            miniconda3-3.7-4.8.3            miniconda3-3.7-4.9.2            miniconda3-3.7-4.10.1
  miniconda3-3.7-4.10.3           miniconda3-3.7-4.11.0           miniconda3-3.7-4.12.0           miniconda3-3.7-22.11.1-1
  miniconda3-3.7-23.1.0-1         miniconda3-3.8.3                miniconda3-3.8-4.8.2            miniconda3-3.8-4.8.3
  miniconda3-3.8-4.9.2            miniconda3-3.8-4.10.1           miniconda3-3.8-4.10.3           miniconda3-3.8-4.11.0
  miniconda3-3.8-4.12.0           miniconda3-3.8-22.11.1-1        miniconda3-3.8-23.1.0-1         miniconda3-3.8-23.3.1-0
  miniconda3-3.8-23.5.0-3         miniconda3-3.8-23.5.1-0         miniconda3-3.8-23.5.2-0         miniconda3-3.9.1
  miniconda3-3.9-4.9.2            miniconda3-3.9-4.10.1           miniconda3-3.9-4.10.3           miniconda3-3.9-4.11.0
  miniconda3-3.9-4.12.0           miniconda3-3.9-22.11.1-1        miniconda3-3.9-23.1.0-1         miniconda3-3.9-23.3.1-0
  miniconda3-3.9-23.5.0-3         miniconda3-3.9-23.5.1-0         miniconda3-3.9-23.5.2-0         miniconda3-3.10.1
  miniconda3-3.10-22.11.1-1       miniconda3-3.10-23.1.0-1        miniconda3-3.10-23.3.1-0        miniconda3-3.10-23.5.0-3
  miniconda3-3.10-23.5.1-0        miniconda3-3.10-23.5.2-0        miniconda3-3.11-23.5.0-3        miniconda3-3.11-23.5.1-0
  miniconda3-3.11-23.5.2-0        miniconda3-3.16.0               miniconda3-3.18.3               miniconda3-3.19.0
  miniconda3-4.0.5                miniconda3-4.1.11               miniconda3-4.2.12               miniconda3-4.3.11
  miniconda3-4.3.14               miniconda3-4.3.21               miniconda3-4.3.27               miniconda3-4.3.30
  miniconda3-4.3.31               miniconda3-4.4.10               miniconda3-4.5.1                miniconda3-4.5.4
  miniconda3-4.5.11               miniconda3-4.5.12               miniconda3-4.6.14               miniconda3-4.7.10
  miniconda3-4.7.12               miniforge-pypy3                 miniforge3-latest               miniforge3-4.9.2
  miniforge3-4.10                 miniforge3-4.10.1-1             miniforge3-4.10.1-3             miniforge3-4.10.1-5
  miniforge3-4.10.2-0             miniforge3-4.10.3-0             miniforge3-4.10.3-1             miniforge3-4.10.3-2
  miniforge3-4.10.3-3             miniforge3-4.10.3-4             miniforge3-4.10.3-5             miniforge3-4.10.3-6
  miniforge3-4.10.3-7             miniforge3-4.10.3-8             miniforge3-4.10.3-9             miniforge3-4.10.3-10
  miniforge3-4.11.0-0             miniforge3-4.11.0-1             miniforge3-4.11.0-2             miniforge3-4.11.0-3
  miniforge3-4.11.0-4             miniforge3-4.12.0-0             miniforge3-4.12.0-1             miniforge3-4.12.0-2
  miniforge3-4.12.0-3             miniforge3-4.13.0-0             miniforge3-4.13.0-1             miniforge3-4.14.0-0
  miniforge3-4.14.0-1             miniforge3-4.14.0-2             miniforge3-22.9.0-0             miniforge3-22.9.0-1
  miniforge3-22.9.0-2             miniforge3-22.9.0-3             miniforge3-22.11.1-4            nogil-3.9.10
  nogil-3.9.10-1                  pypy-c-jit-latest               pypy-dev                        pypy-stm-2.3
  pypy-stm-2.5.1                  pypy-1.5-src                    pypy-1.6                        pypy-1.7
  pypy-1.8                        pypy-1.9                        pypy-2.0-src                    pypy-2.0
  pypy-2.0.1-src                  pypy-2.0.1                      pypy-2.0.2-src                  pypy-2.0.2
  pypy-2.1-src                    pypy-2.1                        pypy-2.2-src                    pypy-2.2
  pypy-2.2.1-src                  pypy-2.2.1                      pypy-2.3-src                    pypy-2.3
  pypy-2.3.1-src                  pypy-2.3.1                      pypy-2.4.0-src                  pypy-2.4.0
  pypy-2.5.0-src                  pypy-2.5.0                      pypy-2.5.1-src                  pypy-2.5.1
  pypy-2.6.0-src                  pypy-2.6.0                      pypy-2.6.1-src                  pypy-2.6.1
  pypy-4.0.0-src                  pypy-4.0.0                      pypy-4.0.1-src                  pypy-4.0.1
  pypy-5.0.0-src                  pypy-5.0.0                      pypy-5.0.1-src                  pypy-5.0.1
  pypy-5.1-src                    pypy-5.1                        pypy-5.1.1-src                  pypy-5.1.1
  pypy-5.3-src                    pypy-5.3                        pypy-5.3.1-src                  pypy-5.3.1
  pypy-5.4-src                    pypy-5.4                        pypy-5.4.1-src                  pypy-5.4.1
  pypy-5.6.0-src                  pypy-5.6.0                      pypy-5.7.0-src                  pypy-5.7.0
  pypy-5.7.1-src                  pypy-5.7.1                      pypy2-5.3-src                   pypy2-5.3
  pypy2-5.3.1-src                 pypy2-5.3.1                     pypy2-5.4-src                   pypy2-5.4
  pypy2-5.4.1-src                 pypy2-5.4.1                     pypy2-5.6.0-src                 pypy2-5.6.0
  pypy2-5.7.0-src                 pypy2-5.7.0                     pypy2-5.7.1-src                 pypy2-5.7.1
  pypy2.7-5.8.0-src               pypy2.7-5.8.0                   pypy2.7-5.9.0-src               pypy2.7-5.9.0
  pypy2.7-5.10.0-src              pypy2.7-5.10.0                  pypy2.7-6.0.0-src               pypy2.7-6.0.0
  pypy2.7-7.0.0-src               pypy2.7-7.0.0                   pypy2.7-7.1.0-src               pypy2.7-7.1.0
  pypy2.7-7.1.1-src               pypy2.7-7.1.1                   pypy2.7-7.2.0-src               pypy2.7-7.2.0
  pypy2.7-7.3.0-src               pypy2.7-7.3.0                   pypy2.7-7.3.1-src               pypy2.7-7.3.1
  pypy2.7-7.3.2-src               pypy2.7-7.3.2                   pypy2.7-7.3.3-src               pypy2.7-7.3.3
  pypy2.7-7.3.4-src               pypy2.7-7.3.4                   pypy2.7-7.3.5-src               pypy2.7-7.3.5
  pypy2.7-7.3.6-src               pypy2.7-7.3.6                   pypy2.7-7.3.8-src               pypy2.7-7.3.8
  pypy2.7-7.3.9-src               pypy2.7-7.3.9                   pypy2.7-7.3.10-src              pypy2.7-7.3.10
  pypy2.7-7.3.11-src              pypy2.7-7.3.11                  pypy2.7-7.3.12-src              pypy2.7-7.3.12
  pypy3-2.3.1-src                 pypy3-2.3.1                     pypy3-2.4.0-src                 pypy3-2.4.0
  pypy3.3-5.2-alpha1-src          pypy3.3-5.2-alpha1              pypy3.3-5.5-alpha-src           pypy3.3-5.5-alpha
  pypy3.5-c-jit-latest            pypy3.5-5.7-beta-src            pypy3.5-5.7-beta                pypy3.5-5.7.1-beta-src
  pypy3.5-5.7.1-beta              pypy3.5-5.8.0-src               pypy3.5-5.8.0                   pypy3.5-5.9.0-src
  pypy3.5-5.9.0                   pypy3.5-5.10.0-src              pypy3.5-5.10.0                  pypy3.5-5.10.1-src
  pypy3.5-5.10.1                  pypy3.5-6.0.0-src               pypy3.5-6.0.0                   pypy3.5-7.0.0-src
  pypy3.5-7.0.0                   pypy3.6-7.0.0-src               pypy3.6-7.0.0                   pypy3.6-7.1.0-src
  pypy3.6-7.1.0                   pypy3.6-7.1.1-src               pypy3.6-7.1.1                   pypy3.6-7.2.0-src
  pypy3.6-7.2.0                   pypy3.6-7.3.0-src               pypy3.6-7.3.0                   pypy3.6-7.3.1-src
  pypy3.6-7.3.1                   pypy3.6-7.3.2-src               pypy3.6-7.3.2                   pypy3.6-7.3.3-src
  pypy3.6-7.3.3                   pypy3.7-c-jit-latest            pypy3.7-7.3.2-src               pypy3.7-7.3.2
  pypy3.7-7.3.3-src               pypy3.7-7.3.3                   pypy3.7-7.3.4-src               pypy3.7-7.3.4
  pypy3.7-7.3.5-src               pypy3.7-7.3.5                   pypy3.7-7.3.6-src               pypy3.7-7.3.6
  pypy3.7-7.3.7-src               pypy3.7-7.3.7                   pypy3.7-7.3.8-src               pypy3.7-7.3.8
  pypy3.7-7.3.9-src               pypy3.7-7.3.9                   pypy3.8-7.3.6-src               pypy3.8-7.3.6
  pypy3.8-7.3.7-src               pypy3.8-7.3.7                   pypy3.8-7.3.8-src               pypy3.8-7.3.8
  pypy3.8-7.3.9-src               pypy3.8-7.3.9                   pypy3.8-7.3.10-src              pypy3.8-7.3.10
  pypy3.8-7.3.11-src              pypy3.8-7.3.11                  pypy3.9-7.3.8-src               pypy3.9-7.3.8
  pypy3.9-7.3.9-src               pypy3.9-7.3.9                   pypy3.9-7.3.10-src              pypy3.9-7.3.10
  pypy3.9-7.3.11-src              pypy3.9-7.3.11                  pypy3.9-7.3.12-src              pypy3.9-7.3.12
  pypy3.10-7.3.12-src             pypy3.10-7.3.12                 pyston-2.2                      pyston-2.3
  pyston-2.3.1                    pyston-2.3.2                    pyston-2.3.3                    pyston-2.3.4
  pyston-2.3.5                    stackless-dev                   stackless-2.7-dev               stackless-2.7.2
  stackless-2.7.3                 stackless-2.7.4                 stackless-2.7.5                 stackless-2.7.6
  stackless-2.7.7                 stackless-2.7.8                 stackless-2.7.9                 stackless-2.7.10
  stackless-2.7.11                stackless-2.7.12                stackless-2.7.14                stackless-2.7.16
  stackless-3.2.2                 stackless-3.2.5                 stackless-3.3.5                 stackless-3.3.7
  stackless-3.4-dev               stackless-3.4.2                 stackless-3.4.7                 stackless-3.5.4
  stackless-3.7.5

ビルドの前に!!Python 依存パッケージのインストール

$ pyenv install 3.10.8

Downloading Python-3.10.8.tar.xz...
-> https://www.python.org/ftp/python/3.10.8/Python-3.10.8.tar.xz
Installing Python-3.10.8...
Installed Python-3.10.8 to /home/pi/.anyenv/envs/pyenv/versions/3.10.8

$ pyenv rehash
$ pyenv global 3.10.8
$ pyenv versions

  system
* 3.10.8 (set by /home/pi/.anyenv/envs/pyenv/version)

$ python -VV

Python 3.10.8 (main, Oct 13 2022, 15:22:56) [GCC 8.3.0]

build_failed_python_311

Ruby をインストールするための rbenv をインストールする。

$ anyenv install rbenv

/tmp/rbenv.20220725074500.2617 ~
Cloning https://github.com/rbenv/rbenv.git master to rbenv...
Cloning into 'rbenv'...
remote: Enumerating objects: 3017, done.
remote: Counting objects: 100% (121/121), done.
remote: Compressing objects: 100% (70/70), done.
remote: Total 3017 (delta 64), reused 93 (delta 51), pack-reused 2896
Receiving objects: 100% (3017/3017), 607.34 KiB | 711.00 KiB/s, done.
Resolving deltas: 100% (1873/1873), done.
~
~/.anyenv/envs/rbenv/plugins ~
Cloning https://github.com/rbenv/ruby-build.git master to ruby-build...
Cloning into 'ruby-build'...
remote: Enumerating objects: 13023, done.
remote: Counting objects: 100% (1744/1744), done.
remote: Compressing objects: 100% (201/201), done.
remote: Total 13023 (delta 1663), reused 1547 (delta 1543), pack-reused 11279
Receiving objects: 100% (13023/13023), 2.61 MiB | 836.00 KiB/s, done.
Resolving deltas: 100% (8879/8879), done.
~

Install rbenv succeeded!
Please reload your profile (exec $SHELL -l) or open a new session.

rbenv の動作確認。

$ exec $SHELL -l
$ rbenv

rbenv 1.2.0-16-gc4395e5
Usage: rbenv <command> [<args>]

Some useful rbenv commands are:
   commands    List all available rbenv commands
   local       Set or show the local application-specific Ruby version
   global      Set or show the global Ruby version
   shell       Set or show the shell-specific Ruby version
   install     Install a Ruby version using ruby-build
   uninstall   Uninstall a specific Ruby version
   rehash      Rehash rbenv shims (run this after installing executables)
   version     Show the current Ruby version and its origin
   versions    List installed Ruby versions
   which       Display the full path to an executable
   whence      List all Ruby versions that contain the given executable

See `rbenv help <command>' for information on a specific command.
For full documentation, see: https://github.com/rbenv/rbenv#readme

$ rbenv help install

Usage: rbenv install [-f|-s] [-kpv] <version>
       rbenv install [-f|-s] [-kpv] <definition-file>
       rbenv install -l|--list
       rbenv install --version

  -l/--list          List latest stable versions for each Ruby
  -L/--list-all      List all local versions
  -f/--force         Install even if the version appears to be installed already
  -s/--skip-existing Skip if the version appears to be installed already

  ruby-build options:

  -k/--keep          Keep source tree in $RBENV_BUILD_ROOT after installation
                     (defaults to $RBENV_ROOT/sources)
  -p/--patch         Apply a patch from stdin before building
  -v/--verbose       Verbose mode: print compilation status to stdout
  --version          Show version of ruby-build

For detailed information on installing Ruby versions with
ruby-build, including a list of environment variables for adjusting
compilation, see: https://github.com/rbenv/ruby-build#usage

Node.js をインストールするための nodenv をインストールする。

$ anyenv install nodenv

/tmp/nodenv.20220906112533.21705 ~
Cloning https://github.com/nodenv/nodenv.git master to nodenv...
Cloning into 'nodenv'...
remote: Enumerating objects: 4027, done.
remote: Counting objects: 100% (24/24), done.
remote: Compressing objects: 100% (22/22), done.
remote: Total 4027 (delta 6), reused 10 (delta 1), pack-reused 4003
Receiving objects: 100% (4027/4027), 734.40 KiB | 2.28 MiB/s, done.
Resolving deltas: 100% (2637/2637), done.
~
~/.anyenv/envs/nodenv/plugins ~
Cloning https://github.com/nodenv/node-build.git master to node-build...
Cloning into 'node-build'...
remote: Enumerating objects: 21422, done.
remote: Counting objects: 100% (1198/1198), done.
remote: Compressing objects: 100% (595/595), done.
remote: Total 21422 (delta 520), reused 1024 (delta 504), pack-reused 20224
Receiving objects: 100% (21422/21422), 3.83 MiB | 1.99 MiB/s, done.
Resolving deltas: 100% (13422/13422), done.
~
~/.anyenv/envs/nodenv/plugins ~
Cloning https://github.com/nodenv/nodenv-vars.git master to nodenv-vars...
Cloning into 'nodenv-vars'...
remote: Enumerating objects: 211, done.
remote: Total 211 (delta 0), reused 0 (delta 0), pack-reused 211
Receiving objects: 100% (211/211), 31.82 KiB | 651.00 KiB/s, done.
Resolving deltas: 100% (76/76), done.
~

Install nodenv succeeded!
Please reload your profile (exec $SHELL -l) or open a new session.

nodenv の動作確認。

$ exec $SHELL -l
$ nodenv

nodenv 1.4.0+5.acf64b3
Usage: nodenv <command> [<args>]

Some useful nodenv commands are:
   commands    List all available nodenv commands
   local       Set or show the local application-specific Node version
   global      Set or show the global Node version
   shell       Set or show the shell-specific Node version
   install     Install a Node version using node-build
   uninstall   Uninstall a specific Node version
   rehash      Rehash nodenv shims (run this after installing executables)
   version     Show the current Node version and its origin
   versions    List installed Node versions
   which       Display the full path to an executable
   whence      List all Node versions that contain the given executable

See `nodenv help <command>' for information on a specific command.
For full documentation, see: https://github.com/nodenv/nodenv#readme

$ nodenv help install

Usage: nodenv install [-f|-s] [-kpv] <version>
       nodenv install [-f|-s] [-kpv] <definition-file>
       nodenv install -l|--list
       nodenv install --version

  -l/--list          List all available versions
  -f/--force         Install even if the version appears to be installed already
  -s/--skip-existing Skip if the version appears to be installed already

  node-build options:

  -c/--compile       Force compilation even if a matching binary exists
  -k/--keep          Keep source tree in $NODENV_BUILD_ROOT after installation
                     (defaults to $NODENV_ROOT/sources)
  -p/--patch         Apply a patch from stdin before building
  -v/--verbose       Verbose mode: print compilation status to stdout
  --version          Show version of node-build

For detailed information on installing Node versions with
node-build, including a list of environment variables for adjusting
compilation, see: https://github.com/nodenv/node-build#usage

インストールしたい Node バージョンが無いとか悩む必要はない🤔
anyenv-update プラグインで nodenvnode-build もコマンド一発でいつも最新に保てる😉

$ anyenv update nodenv

Updating 'nodenv'...
 |  From https://github.com/nodenv/nodenv
 |  31ebd80..15375bb  master     -> origin/master
Updating 'nodenv/node-build'...
 |  From https://github.com/nodenv/node-build
 |  8ead6fb3..473bfc80  master     -> origin/master
 |  * [new tag]           v4.9.111   -> v4.9.111
 |  * [new tag]           v4.9.110   -> v4.9.110
Updating 'nodenv/nodenv-vars'...
Updating 'anyenv manifest directory'...

Node.js - nodejs.org で LTS 推奨、または、最新版のバージョンを確認する。
バージョン一覧を表示する🤤

$ nodenv install -l | column -x -c 128

0.1.14				0.1.15				0.1.16				0.1.17
0.1.18				0.1.19				0.1.20				0.1.21
0.1.22				0.1.23				0.1.24				0.1.25
0.1.26				0.1.27				0.1.28				0.1.29
0.1.30				0.1.31				0.1.32				0.1.33
0.1.90				0.1.91				0.1.92				0.1.93
0.1.94				0.1.95				0.1.96				0.1.97
0.1.98				0.1.99				0.1.100				0.1.101
0.1.102				0.1.103				0.1.104				0.2.0
0.2.1				0.2.2				0.2.3				0.2.4
0.2.5				0.2.6				0.3.0				0.3.1
0.3.2				0.3.3				0.3.4				0.3.5
0.3.6				0.3.7				0.3.8				0.4.0
0.4.1				0.4.2				0.4.3				0.4.4
0.4.5				0.4.6				0.4.7				0.4.8
0.4.9				0.4.10				0.4.11				0.4.12
0.5.0				0.5.1				0.5.2				0.5.3
0.5.4				0.5.5				0.5.6				0.5.7
0.5.8				0.5.9				0.5.10				0.6.0
0.6.1				0.6.2				0.6.3				0.6.4
0.6.5				0.6.6				0.6.7				0.6.8
0.6.9				0.6.10				0.6.11				0.6.12
0.6.13				0.6.14				0.6.15				0.6.16
0.6.17				0.6.18				0.6.19				0.6.20
0.6.21				0.7.0				0.7.1				0.7.2
0.7.3				0.7.4				0.7.5				0.7.6
0.7.7				0.7.8				0.7.9				0.7.10
0.7.11				0.7.12				0.8.0				0.8.1
0.8.2				0.8.3				0.8.4				0.8.5
0.8.6				0.8.7				0.8.8				0.8.9
0.8.10				0.8.11				0.8.12				0.8.13
0.8.14				0.8.15				0.8.16				0.8.17
0.8.18				0.8.19				0.8.20				0.8.21
0.8.22				0.8.23				0.8.24				0.8.25
0.8.26				0.8.27				0.8.28				0.9.0
0.9.1				0.9.2				0.9.3				0.9.4
0.9.5				0.9.6				0.9.7				0.9.8
0.9.9				0.9.10				0.9.11				0.9.12
0.10.0				0.10-dev			0.10-next			0.10.1
0.10.2				0.10.3				0.10.4				0.10.5
0.10.6				0.10.7				0.10.8				0.10.9
0.10.10				0.10.11				0.10.12				0.10.13
0.10.14				0.10.15				0.10.16				0.10.17
0.10.18				0.10.19				0.10.20				0.10.21
0.10.22				0.10.23				0.10.24				0.10.25
0.10.26				0.10.27				0.10.28				0.10.29
0.10.30				0.10.31				0.10.32				0.10.33
0.10.34				0.10.35				0.10.36				0.10.37
0.10.38				0.10.39				0.10.40				0.10.41
0.10.42				0.10.43				0.10.44				0.10.45
0.10.46				0.10.47				0.10.48				0.11.0
0.11.1				0.11.2				0.11.3				0.11.4
0.11.5				0.11.6				0.11.7				0.11.8
0.11.9				0.11.10				0.11.11				0.11.12
0.11.13				0.11.14				0.11.15				0.11.16
0.12.0				0.12-dev			0.12-next			0.12.1
0.12.2				0.12.3				0.12.4				0.12.5
0.12.6				0.12.7				0.12.8				0.12.9
0.12.10				0.12.11				0.12.12				0.12.13
0.12.14				0.12.15				0.12.16				0.12.17
0.12.18				4.0.0				4.x-dev				4.x-next
4.1.0				4.1.1				4.1.2				4.2.0
4.2.1				4.2.2				4.2.3				4.2.4
4.2.5				4.2.6				4.3.0				4.3.1
4.3.2				4.4.0				4.4.1				4.4.2
4.4.3				4.4.4				4.4.5				4.4.6
4.4.7				4.5.0				4.6.0				4.6.1
4.6.2				4.7.0				4.7.1				4.7.2
4.7.3				4.8.0				4.8.1				4.8.2
4.8.3				4.8.4				4.8.5				4.8.6
4.8.7				4.9.0				4.9.1				5.0.0
5.x-next			5.1.0				5.1.1				5.2.0
5.3.0				5.4.0				5.4.1				5.5.0
5.6.0				5.7.0				5.7.1				5.8.0
5.9.0				5.9.1				5.10.0				5.10.1
5.11.0				5.11.1				5.12.0				6.0.0
6.x-dev				6.x-next			6.1.0				6.2.0
6.2.1				6.2.2				6.3.0				6.3.1
6.4.0				6.5.0				6.6.0				6.7.0
6.8.0				6.8.1				6.9.0				6.9.1
6.9.2				6.9.3				6.9.4				6.9.5
6.10.0				6.10.1				6.10.2				6.10.3
6.11.0				6.11.1				6.11.2				6.11.3
6.11.4				6.11.5				6.12.0				6.12.1
6.12.2				6.12.3				6.13.0				6.13.1
6.14.0				6.14.1				6.14.2				6.14.3
6.14.4				6.15.0				6.15.1				6.16.0
6.17.0				6.17.1				7.0.0				7.x-dev
7.x-next			7.1.0				7.2.0				7.2.1
7.3.0				7.4.0				7.5.0				7.6.0
7.7.0				7.7.1				7.7.2				7.7.3
7.7.4				7.8.0				7.9.0				7.10.0
7.10.1				8.0.0				8.x-dev				8.x-next
8.1.0				8.1.1				8.1.2				8.1.3
8.1.4				8.2.0				8.2.1				8.3.0
8.4.0				8.5.0				8.6.0				8.7.0
8.8.0				8.8.1				8.9.0				8.9.1
8.9.2				8.9.3				8.9.4				8.10.0
8.11.0				8.11.1				8.11.2				8.11.3
8.11.4				8.12.0				8.13.0				8.14.0
8.14.1				8.15.0				8.15.1				8.16.0
8.16.1				8.16.2				8.17.0				9.0.0
9.x-dev				9.x-next			9.1.0				9.2.0
9.2.1				9.3.0				9.4.0				9.5.0
9.6.0				9.6.1				9.7.0				9.7.1
9.8.0				9.9.0				9.10.0				9.10.1
9.11.0				9.11.1				9.11.2				10.0.0
10.x-dev			10.x-next			10.1.0				10.2.0
10.2.1				10.3.0				10.4.0				10.4.1
10.5.0				10.6.0				10.7.0				10.8.0
10.9.0				10.10.0				10.11.0				10.12.0
10.13.0				10.14.0				10.14.1				10.14.2
10.15.0				10.15.1				10.15.2				10.15.3
10.16.0				10.16.1				10.16.2				10.16.3
10.17.0				10.18.0				10.18.1				10.19.0
10.20.0				10.20.1				10.21.0				10.22.0
10.22.1				10.23.0				10.23.1				10.23.2
10.23.3				10.24.0				10.24.1				11.0.0
11.x-dev			11.x-next			11.1.0				11.2.0
11.3.0				11.4.0				11.5.0				11.6.0
11.7.0				11.8.0				11.9.0				11.10.0
11.10.1				11.11.0				11.12.0				11.13.0
11.14.0				11.15.0				12.0.0				12.x-dev
12.x-next			12.1.0				12.2.0				12.3.0
12.3.1				12.4.0				12.5.0				12.6.0
12.7.0				12.8.0				12.8.1				12.9.0
12.9.1				12.10.0				12.11.0				12.11.1
12.12.0				12.13.0				12.13.1				12.14.0
12.14.1				12.15.0				12.16.0				12.16.1
12.16.2				12.16.3				12.17.0				12.18.0
12.18.1				12.18.2				12.18.3				12.18.4
12.19.0				12.19.1				12.20.0				12.20.1
12.20.2				12.21.0				12.22.0				12.22.1
12.22.2				12.22.3				12.22.4				12.22.5
12.22.6				12.22.7				12.22.8				12.22.9
12.22.10			12.22.11			12.22.12			13.0.0
13.x-dev			13.x-next			13.0.1				13.1.0
13.2.0				13.3.0				13.4.0				13.5.0
13.6.0				13.7.0				13.8.0				13.9.0
13.10.0				13.10.1				13.11.0				13.12.0
13.13.0				13.14.0				14.0.0				14.x-dev
14.x-next			14.1.0				14.2.0				14.3.0
14.4.0				14.5.0				14.6.0				14.7.0
14.8.0				14.9.0				14.10.0				14.10.1
14.11.0				14.12.0				14.13.0				14.13.1
14.14.0				14.15.0				14.15.1				14.15.2
14.15.3				14.15.4				14.15.5				14.16.0
14.16.1				14.17.0				14.17.1				14.17.2
14.17.3				14.17.4				14.17.5				14.17.6
14.18.0				14.18.1				14.18.2				14.18.3
14.19.0				14.19.1				14.19.2				14.19.3
14.20.0				14.20.1				14.21.0				14.21.1
14.21.2				14.21.3				15.0.0				15.0.1
15.1.0				15.2.0				15.2.1				15.3.0
15.4.0				15.5.0				15.5.1				15.6.0
15.7.0				15.8.0				15.9.0				15.10.0
15.11.0				15.12.0				15.13.0				15.14.0
16.0.0				16.1.0				16.2.0				16.3.0
16.4.0				16.4.1				16.4.2				16.5.0
16.6.0				16.6.1				16.6.2				16.7.0
16.8.0				16.9.0				16.9.1				16.10.0
16.11.0				16.11.1				16.12.0				16.13.0
16.13.1				16.13.2				16.14.0				16.14.1
16.14.2				16.15.0				16.15.1				16.16.0
16.17.0				16.17.1				16.18.0				16.18.1
16.19.0				16.19.1				16.20.0				17.0.0
17.0.1				17.1.0				17.2.0				17.3.0
17.3.1				17.4.0				17.5.0				17.6.0
17.7.0				17.7.1				17.7.2				17.8.0
17.9.0				17.9.1				18.0.0				18.1.0
18.2.0				18.3.0				18.4.0				18.5.0
18.6.0				18.7.0				18.8.0				18.9.0
18.9.1				18.10.0				18.11.0				18.12.0
18.12.1				18.13.0				18.14.0				18.14.1
18.14.2				18.15.0				19.0.0				19.0.1
19.1.0				19.2.0				19.3.0				19.4.0
19.5.0				19.6.0				19.6.1				19.7.0
19.8.0				19.8.1				chakracore-dev			chakracore-nightly
chakracore-8.1.2		chakracore-8.1.4		chakracore-8.2.1		chakracore-8.3.0
chakracore-8.4.0		chakracore-8.6.0		chakracore-8.9.4		chakracore-8.10.0
chakracore-8.11.1		chakracore-10.0.0		chakracore-10.1.0		chakracore-10.6.0
chakracore-10.13.0		graal+ce-1.0.0-rc1		graal+ce-1.0.0-rc10		graal+ce-1.0.0-rc11
graal+ce-1.0.0-rc12		graal+ce-1.0.0-rc13		graal+ce-1.0.0-rc14		graal+ce-1.0.0-rc15
graal+ce-1.0.0-rc16		graal+ce-1.0.0-rc2		graal+ce-1.0.0-rc3		graal+ce-1.0.0-rc4
graal+ce-1.0.0-rc5		graal+ce-1.0.0-rc6		graal+ce-1.0.0-rc7		graal+ce-1.0.0-rc8
graal+ce-1.0.0-rc9		graal+ce-19.0.0			graal+ce-19.0.2			graal+ce-19.1.0
graal+ce-19.1.1			graal+ce-19.2.0			graal+ce-19.2.0.1		graal+ce-19.2.0-dev-b01
graal+ce-19.2.1			graal+ce_java11-19.3.0		graal+ce_java11-19.3.0.2	graal+ce_java8-19.3.0
graal+ce_java8-19.3.0.2		graal+ce_java11-19.3.1		graal+ce_java8-19.3.1		graal+ce_java11-20.0.0
graal+ce_java8-20.0.0		iojs-0.12.0-dev			iojs-1.0.0			iojs-1.x-dev
iojs-1.0.1			iojs-1.0.2			iojs-1.0.3			iojs-1.0.4
iojs-1.1.0			iojs-1.2.0			iojs-1.3.0			iojs-1.4.1
iojs-1.4.2			iojs-1.4.3			iojs-1.5.0			iojs-1.5.1
iojs-1.6.0			iojs-1.6.1			iojs-1.6.2			iojs-1.6.3
iojs-1.6.4			iojs-1.7.1			iojs-1.8.1			iojs-1.8.2
iojs-1.8.3			iojs-1.8.4			iojs-2.0.0			iojs-2.0.1
iojs-2.0.2			iojs-2.1.0			iojs-2.2.0			iojs-2.2.1
iojs-2.3.0			iojs-2.3.1			iojs-2.3.2			iojs-2.3.3
iojs-2.3.4			iojs-2.4.0			iojs-2.5.0			iojs-3.0.0
iojs-3.1.0			iojs-3.2.0			iojs-3.3.0			iojs-3.3.1
nightly				node-dev			rc				v8-canary

$ nodenv install 20.11.1

Downloading node-v20.11.1-linux-x64.tar.gz...
-> https://nodejs.org/dist/v20.11.1/node-v20.11.1-linux-x64.tar.gz
Installing node-v20.11.1-linux-x64...
Installed node-v20.11.1-linux-x64 to /home/tomoyan/.anyenv/envs/nodenv/versions/20.11.1

$ nodenv rehash
$ nodenv global 20.11.1
$ nodenv versions

* 20.11.1 (set by /home/tomoyan/.anyenv/envs/nodenv/version)

$ node -v

v20.11.1

$ npm -v

10.2.4

$ npx -v

10.2.4

$ npm -g list

/home/tomoyan/.anyenv/envs/nodenv/versions/20.11.1/lib
├── corepack@0.23.0
└── npm@10.2.4

php をインストールするための phpenv をインストールする。

$ anyenv install phpenv

/tmp/phpenv.20221005195525.11488 ~
Cloning https://github.com/phpenv/phpenv.git master to phpenv...
Cloning into 'phpenv'...
remote: Enumerating objects: 1213, done.
remote: Counting objects: 100% (8/8), done.
remote: Compressing objects: 100% (8/8), done.
remote: Total 1213 (delta 3), reused 0 (delta 0), pack-reused 1205
Receiving objects: 100% (1213/1213), 235.52 KiB | 545.00 KiB/s, done.
Resolving deltas: 100% (748/748), done.
~
~/.anyenv/envs/phpenv/plugins ~
Cloning https://github.com/php-build/php-build.git master to php-build...
Cloning into 'php-build'...
remote: Enumerating objects: 10786, done.
remote: Counting objects: 100% (1329/1329), done.
remote: Compressing objects: 100% (441/441), done.
remote: Total 10786 (delta 1143), reused 959 (delta 784), pack-reused 9457
Receiving objects: 100% (10786/10786), 1.32 MiB | 863.00 KiB/s, done.
Resolving deltas: 100% (8195/8195), done.
~
~/.anyenv/envs/phpenv/plugins ~
Cloning https://github.com/ngyuki/phpenv-composer master to phpenv-composer...
Cloning into 'phpenv-composer'...
remote: Enumerating objects: 60, done.
remote: Total 60 (delta 0), reused 0 (delta 0), pack-reused 60
Receiving objects: 100% (60/60), 6.96 KiB | 81.00 KiB/s, done.
Resolving deltas: 100% (12/12), done.
~

Install phpenv succeeded!
Please reload your profile (exec $SHELL -l) or open a new session.

phpenv の動作確認。

$ exec $SHELL -l
$ phpenv

phpenv:
=======
   PHP multi-version installation and management utility.

Usage: phpenv <command> [<args>]

Some useful phpenv commands are:
   commands    List all available phpenv commands
   configure   Edit the current PHP's php.ini configuration file at location
   local       Set or show the local application-specific PHP version
   global      Set or show the global PHP version and update the Apache apxs
   shell       Set or show the shell-specific PHP version
   install     Install a PHP version using the php-build plugin
   uninstall   Uninstall a specific PHP version using the php-build plugin
   rehash      Rehash phpenv shims (run this after installing executables)
   version     Show the current PHP version and its origin
   versions    List all PHP versions available to phpenv
   which       Display the full path to an executable
   whence      List all PHP versions that contain the given executable

See `phpenv help <command>' for information on a specific command.
For full documentation, see: https://github.com/phpenv/phpenv#readme

$ phpenv install --help

install:
========
   Install a PHP version using the php-build plugin

Usage: phpenv install [--ini|-i ] [-v|--verbose] [-f|-s] 
       phpenv install [--ini|-i ] [-v|--verbose] [-f|-s] 
       phpenv install -l|--list
       phpenv install -V|--version

 -l/--list          List all available versions
 -f/--force         Install even if the version appears to be installed already
 -s/--skip-existing Skip if the version appears to be installed already

 php-build options:

 -k/--keep          Do not run make clean on source tree / keep object files
 -v/--verbose       Verbose mode: print compilation status to stdout
 -V/--version       Show version of php-build

For detailed information on installing PHP versions with
php-build, including a list of environment variables for adjusting
compilation, see: https://github.com/php-build/php-build

インストールしたい php バージョンが無いとか悩む必要はない🤔
anyenv-update プラグインで phpenvphp-build もコマンド一発でいつも最新に保てる😉

$ anyenv update phpenv

Updating 'phpenv'...
Updating 'phpenv/php-build'...
Updating 'phpenv/phpenv-composer'...
Updating 'anyenv manifest directory'...

バージョン一覧を表示する🤤

$ phpenv install -l | column -x -c 128

Available versions:	  5.2.17		  5.3.2			  5.3.3			  5.3.6
  5.3.8			  5.3.9			  5.3.10		  5.3.11		  5.3.12
  5.3.13		  5.3.14		  5.3.15		  5.3.16		  5.3.17
  5.3.18		  5.3.19		  5.3.20		  5.3.21		  5.3.22
  5.3.23		  5.3.24		  5.3.25		  5.3.26		  5.3.27
  5.3.28		  5.3.29		  5.4.0			  5.4.1			  5.4.2
  5.4.3			  5.4.4			  5.4.5			  5.4.6			  5.4.7
  5.4.8			  5.4.9			  5.4.10		  5.4.11		  5.4.12
  5.4.13		  5.4.14		  5.4.15		  5.4.16		  5.4.17
  5.4.18		  5.4.19		  5.4.20		  5.4.21		  5.4.22
  5.4.23		  5.4.24		  5.4.25		  5.4.26		  5.4.27
  5.4.28		  5.4.29		  5.4.30		  5.4.31		  5.4.32
  5.4.33		  5.4.34		  5.4.35		  5.4.36		  5.4.37
  5.4.38		  5.4.39		  5.4.40		  5.4.41		  5.4.42
  5.4.43		  5.4.44		  5.4.45		  5.4snapshot		  5.5.0
  5.5.1			  5.5.2			  5.5.3			  5.5.4			  5.5.5
  5.5.6			  5.5.7			  5.5.8			  5.5.9			  5.5.10
  5.5.11		  5.5.12		  5.5.13		  5.5.14		  5.5.15
  5.5.16		  5.5.17		  5.5.18		  5.5.19		  5.5.20
  5.5.21		  5.5.22		  5.5.23		  5.5.24		  5.5.25
  5.5.26		  5.5.27		  5.5.28		  5.5.29		  5.5.30
  5.5.31		  5.5.32		  5.5.33		  5.5.34		  5.5.35
  5.5.36		  5.5.37		  5.5.38		  5.5snapshot		  5.6.0
  5.6.1			  5.6.2			  5.6.3			  5.6.4			  5.6.5
  5.6.6			  5.6.7			  5.6.8			  5.6.9			  5.6.10
  5.6.11		  5.6.12		  5.6.13		  5.6.14		  5.6.15
  5.6.16		  5.6.17		  5.6.18		  5.6.19		  5.6.20
  5.6.21		  5.6.22		  5.6.23		  5.6.24		  5.6.25
  5.6.26		  5.6.27		  5.6.28		  5.6.29		  5.6.30
  5.6.31		  5.6.32		  5.6.33		  5.6.34		  5.6.35
  5.6.36		  5.6.37		  5.6.38		  5.6.39		  5.6.40
  5.6snapshot		  7.0.0			  7.0.1			  7.0.2			  7.0.3
  7.0.4			  7.0.5			  7.0.6			  7.0.7			  7.0.8
  7.0.9			  7.0.10		  7.0.11		  7.0.12		  7.0.13
  7.0.14		  7.0.15		  7.0.16		  7.0.17		  7.0.18
  7.0.19		  7.0.20		  7.0.21		  7.0.22		  7.0.23
  7.0.24		  7.0.25		  7.0.26		  7.0.27		  7.0.28
  7.0.29		  7.0.30		  7.0.31		  7.0.32		  7.0.33
  7.0snapshot		  7.1.0			  7.1.1			  7.1.2			  7.1.3
  7.1.4			  7.1.5			  7.1.6			  7.1.7			  7.1.8
  7.1.9			  7.1.10		  7.1.11		  7.1.12		  7.1.13
  7.1.14		  7.1.15		  7.1.16		  7.1.17		  7.1.18
  7.1.19		  7.1.20		  7.1.21		  7.1.22		  7.1.23
  7.1.24		  7.1.25		  7.1.26		  7.1.27		  7.1.28
  7.1.29		  7.1.30		  7.1.31		  7.1.32		  7.1.33
  7.1snapshot		  7.2.0			  7.2.1			  7.2.2			  7.2.3
  7.2.4			  7.2.5			  7.2.6			  7.2.7			  7.2.8
  7.2.9			  7.2.10		  7.2.11		  7.2.12		  7.2.13
  7.2.14		  7.2.15		  7.2.16		  7.2.17		  7.2.18
  7.2.19		  7.2.20		  7.2.21		  7.2.22		  7.2.23
  7.2.24		  7.2.25		  7.2.26		  7.2.27		  7.2.28
  7.2.29		  7.2.30		  7.2.31		  7.2.32		  7.2.33
  7.2.34		  7.2snapshot		  7.3.0			  7.3.1			  7.3.2
  7.3.3			  7.3.4			  7.3.5			  7.3.6			  7.3.7
  7.3.8			  7.3.9			  7.3.10		  7.3.11		  7.3.12
  7.3.13		  7.3.14		  7.3.15		  7.3.16		  7.3.17
  7.3.18		  7.3.19		  7.3.20		  7.3.21		  7.3.22
  7.3.23		  7.3.24		  7.3.25		  7.3.26		  7.3.27
  7.3.28		  7.3.29		  7.3.30		  7.3.31		  7.3.32
  7.3.33		  7.3snapshot		  7.4.0			  7.4.1			  7.4.2
  7.4.3			  7.4.4			  7.4.5			  7.4.6			  7.4.7
  7.4.8			  7.4.9			  7.4.10		  7.4.11		  7.4.12
  7.4.13		  7.4.14		  7.4.15		  7.4.16		  7.4.18
  7.4.19		  7.4.20		  7.4.21		  7.4.22		  7.4.23
  7.4.24		  7.4.25		  7.4.26		  7.4.27		  7.4.28
  7.4.29		  7.4.30		  7.4snapshot		  8.0.0			  8.0.1
  8.0.2			  8.0.3			  8.0.5			  8.0.6			  8.0.7
  8.0.8			  8.0.9			  8.0.10		  8.0.11		  8.0.12
  8.0.13		  8.0.14		  8.0.15		  8.0.16		  8.0.17
  8.0.18		  8.0.19		  8.0.20		  8.0.21		  8.0.22
  8.0.23		  8.0snapshot		  8.1.0			  8.1.1			  8.1.2
  8.1.3			  8.1.4			  8.1.5			  8.1.6			  8.1.7
  8.1.8			  8.1.9			  8.1.10		  8.1snapshot		  8.2snapshot

$ .anyenv/envs/phpenv/plugins/php-build/install-dependencies.sh

/usr/bin/sudo
Hit:1 http://raspbian.raspberrypi.org/raspbian bullseye InRelease
Hit:2 https://archive.raspberrypi.org/debian bullseye InRelease
Reading package lists...
Reading package lists...
Building dependency tree...
Reading state information...
autoconf is already the newest version (2.69-14).
bash is already the newest version (5.1-2+deb11u1).
bash set to manually installed.
bison is already the newest version (2:3.7.5+dfsg-1).
build-essential is already the newest version (12.9).
ca-certificates is already the newest version (20210119).
curl is already the newest version (7.74.0-1.3+deb11u3).
findutils is already the newest version (4.8.0-1).
findutils set to manually installed.
git is already the newest version (1:2.30.2-1).
libbz2-dev is already the newest version (1.0.8-4).
libicu-dev is already the newest version (67.1-7).
libjpeg-dev is already the newest version (1:2.0.6-4).
libmcrypt-dev is already the newest version (2.5.8-3.4).
libonig-dev is already the newest version (6.9.6-1.1).
libpng-dev is already the newest version (1.6.37-3).
libreadline-dev is already the newest version (8.1-1).
libsqlite3-dev is already the newest version (3.34.1-3).
libtidy-dev is already the newest version (2:5.6.0-11).
libxml2-dev is already the newest version (2.9.10+dfsg-6.7+deb11u2).
libxslt1-dev is already the newest version (1.1.34-4+deb11u1).
libzip-dev is already the newest version (1.7.3-1).
pkg-config is already the newest version (0.29.2-1).
re2c is already the newest version (2.0.3-1).
zlib1g-dev is already the newest version (1:1.2.11.dfsg-2+deb11u2).
libssl-dev is already the newest version (1.1.1n-0+deb11u3+rpt1).
Suggested packages:
  gnu-standards libcurl4-doc libgnutls28-dev libidn11-dev librtmp-dev libssh2-1-dev
The following packages will be REMOVED:
  libcurl4-openssl-dev
The following NEW packages will be installed:
  autoconf2.13 autoconf2.64 libcurl4-gnutls-dev
0 upgraded, 3 newly installed, 1 to remove and 0 not upgraded.
Need to get 1,111 kB of archives.
After this operation, 3,147 kB of additional disk space will be used.
Get:1 http://ftp.udx.icscoe.jp/Linux/raspbian/raspbian bullseye/main armhf autoconf2.13 all 2.13-69 [252 kB]
Get:2 http://raspbian.raspberrypi.org/raspbian bullseye/main armhf libcurl4-gnutls-dev armhf 7.74.0-1.3+deb11u3 [378 kB]
Get:3 http://raspbian.raspberrypi.org/raspbian bullseye/main armhf autoconf2.64 all 2.64+dfsg-1 [480 kB]
Fetched 1,111 kB in 4s (296 kB/s)
debconf: delaying package configuration, since apt-utils is not installed
(Reading database ... 104831 files and directories currently installed.)
Removing libcurl4-openssl-dev:armhf (7.74.0-1.3+deb11u3) ...
Selecting previously unselected package autoconf2.13.
(Reading database ... 104809 files and directories currently installed.)
Preparing to unpack .../autoconf2.13_2.13-69_all.deb ...
Unpacking autoconf2.13 (2.13-69) ...
Selecting previously unselected package libcurl4-gnutls-dev:armhf.
Preparing to unpack .../libcurl4-gnutls-dev_7.74.0-1.3+deb11u3_armhf.deb ...
Unpacking libcurl4-gnutls-dev:armhf (7.74.0-1.3+deb11u3) ...
Selecting previously unselected package autoconf2.64.
Preparing to unpack .../autoconf2.64_2.64+dfsg-1_all.deb ...
Unpacking autoconf2.64 (2.64+dfsg-1) ...
Setting up libcurl4-gnutls-dev:armhf (7.74.0-1.3+deb11u3) ...
Setting up autoconf2.64 (2.64+dfsg-1) ...
Setting up autoconf2.13 (2.13-69) ...
No diversion 'diversion of /usr/bin/autoconf to /usr/bin/autoconf2.50 by autoconf2.13', none removed.
No diversion 'diversion of /usr/share/man/man1/autoconf.1.gz to /usr/share/man/man1/autoconf2.50.1.gz by autoconf2.13', none removed.
No diversion 'diversion of /usr/bin/autoheader to /usr/bin/autoheader2.50 by autoconf2.13', none removed.
No diversion 'diversion of /usr/share/man/man1/autoheader.1.gz to /usr/share/man/man1/autoheader2.50.1.gz by autoconf2.13', none removed.
No diversion 'diversion of /usr/bin/autoreconf to /usr/bin/autoreconf2.50 by autoconf2.13', none removed.
No diversion 'diversion of /usr/share/man/man1/autoreconf.1.gz to /usr/share/man/man1/autoreconf2.50.1.gz by autoconf2.13', none removed.
Processing triggers for man-db (2.9.4-2) ...

  • linux/anyenv.txt
  • 最終更新: 2024/03/04 05:15
  • by ともやん