Open6
voltaがLinux/arm64に対応していなかったので自分でビルドしたログ
次のv2.0.0リリースでARM版のリリースが出るようです。
やったこと
ソースの入手
voltaのGitHubからソースをダウンロード
Rustの環境構築
Rustの環境が無かったので、Rustのページを参考に環境構築
自分の場合はWindowsのWSL上でUbuntuを利用しているので「Windows Subsystem for Linux」の項目を参考にセットアップ
とはいってもコマンドを実行するだけで問題なかった。
とりあえずビルドしてみる
どうやらGitHub Actionsの中にはLinux/arm64のビルドが用意されているようなのでそれを参考にビルドしてみる。
cargo build --release --target aarch64-unknown-linux-gnu
error linker cc not found
のようなエラーが出てビルドできなかった。
調べてみるとこれはCのコンパイラがインストールされていないことが原因っぽいのでインストールしてして再度ビルドしてみる。
再度ビルド
Cのコンパイラを入れた後に再度ビルドしてみると正常にビルドできた。
また、Actionsのコードを読んでみると配布している実行ファイルは
- volta
- volta-shim
- volta-migrate
らしいことが分かる。
実行ファイルの配置
通常voltaはインストールスクリプトを実行すると~/.volta
というディレクトリを作成し、~/.volta/bin
に実行ファイルを配置するので同じように動かす。
# /volta/target/aarch64-unknown-linux-gnu/release にいる状態
cp volta volta-shim volta-migrate ~/.volta/bin
実行ファイルを直接叩くと、実行できる。
# ~/.volta/bin にいる状態
./volta -h
PATHの設定とか
ここからは通常のインストール後と変らなかったはずだけど、PATHを通したりする作業。
自分は zsh
なので .zshrc
に下記を追加
# volta
export VOLTA_HOME="$HOME/.volta"
export PATH="$VOLTA_HOME/bin:$PATH"
シェルの設定を再読み込み。
source .zshrc
コマンドを実行
nodeとnpmのPATHが通っていない
nodeはインストールできているがnodeコマンドが実行できていない
volta setup
を忘れていただけでした。
このコマンドでPATHも設定してくれるはずなので、PATHを通す作業は不要だったかも。