Google Cloud Shellの日本語化(gcc込み)

2022-04-20(水)

Webブラウザ上でコーディングとshellによる操作が可能なCloud Shell Editorがとても便利なので,夏季集中のコンピュータプログラミングで利用できないかと画策中。

機能的にはエディタはVS Codeの拡張機能組込み版みたいな感じで,Shellの方はDebianが動いている。

$ cat /etc/issue
Debian GNU/Linux 11 \n \l

ただし,どちらも日本語は表示は可能でもメニュー等は英語のまま。せめてShellのメッセージやmanを日本語化しようということで,Debianの日本語化の方法を一通り実行。

確認作業

ここで説明している作業を実施しても,セッションが切れると環境がリセットされるが,短時間ブラウザを閉じた程度だと継続してくれている。

locale -a

とやってja_JP.utf-8が存在していれば作業不要。

日本語化

以下をコピペする

sudo sh -c "echo 'ja_JP.UTF-8 UTF-8' >>  /etc/locale.gen"
sudo locale-gen
sudo apt update; sudo apt install task-japanese -y
wget -c https://github.com/gcc-mirror/gcc/raw/releases/gcc-10/gcc/po/ja.po
msgfmt -o gcc.mo ja.po
sudo cp gcc.mo /usr/share/locale/ja/LC_MESSAGES/gcc-10.mo
echo "export LANG=ja_JP.utf-8" >> ~/.profile
source ~/.profile

わかりやすいかは疑問だが英語で思考停止する人には良い。

None

分けて説明

localeとしてja_JP.utf-8が有効になっていないので/etc/locale.genファイルに追記し,locale-genで生成する。あとtask-japaneseは日本語manとか。

sudo sh -c "echo 'ja_JP.UTF-8 UTF-8' >>  /etc/locale.gen"
sudo locale-gen
sudo apt update; sudo apt install task-japanese -y

gccの.moファイル(メッセージのローカライゼーションファイル)が無いのでgccのソースミラーから拾って生成する。moファイルは実体と一致しないとダメなので

$ file /usr/bin/gcc
/usr/bin/gcc: symbolic link to gcc-10

で出てきたgcc-10に合わせている。

wget -c https://github.com/gcc-mirror/gcc/raw/releases/gcc-10/gcc/po/ja.po
msgfmt -o gcc.mo ja.po
sudo cp gcc.mo /usr/share/locale/ja/LC_MESSAGES/gcc-10.mo

シェルを開いたときにja_JP.utf-8が環境変数LANGになるよう設定して読み込み

echo "export LANG=ja_JP.utf-8" >> ~/.profile
source ~/.profile

Category: Memo Tagged: C Lecture Debian gcc