2022.10.06 修正・追記
2023.04.19 修正・追記
2023.09.26 修正・追記
2024.08.09 修正・追記
Windows 10以降ではWindows Subsystem for Linux(以下WSL)が利用できる。 詳しくは、 Windows Subsystem for Linux に関するドキュメント (Microsoft) を参照のこと。
VirtualBox + Linux は、「1台のPCでWindowsとLinuxの2台のマシンの画面を切り替えて使う」感じであった。 WSLは Windowsを主に使いながら、Linuxも同時に使うという感じの使い方が便利である(もちろん、フルに Linuxマシンとして使用してもよい)。また、十分高速のようだ。 そこで、Seismic Un*xに限らず
基本的に、管理者モードでPowerShellを起動して以下を実行する。
PS> wsl --install好みのディストリビューションを指定するなら(例:Debian)
PS> wsl --install -d Debianでよい。 Ubuntuが最も人気で、おそらくデフォルトでUbuntuがインストールされるが、 私はDebianを使用している。
ここから
WSL(とLinux)のセットアップについては、例えば以下のサイトに詳しい説明がある。ここまでそのほかインターネット上にたくさんの解説があるので、これらを参照しながらセットアップを行う。ただし、古い記述や詳しすぎたり不要な記述もある。 下記は必要にして最低限のメモ。
- Windows 10用 Windows Subsystem for Linux のインストール ガイド (Microsoft)
- DebianをWindows10上で動かす その1: 準備とインストール (~その11)
- WSL (Windows Subsystem for Linux) の導入と設定
- コントロールパネル > プログラムと機能 > Windowsの機能の有効化または無効化
をチェック。
- Linux用Windowsサブシステム
- 仮想マシンプラットフォーム
- カーネルコンポーネントの更新
- ここからx64マシン用カーネル更新パッケージをダウンロードしインストール。
- PowerShell を管理者として実行し、
PS> wsl --set-default-version 2でWSL2に更新する。これだけでOK。Linux (Debian) のインストール
各種のディストリビューションを使用できるので、好みのものをインストールする。 Ubuntuが最も人気だが、 私はDebianを使用している。
- アプリ > Microsoft Store
- 「wsl」を検索
- 好みのディストリビューション(ここでは Debian)を選ぶ。
- 入手 > インストール > 起動
- 端末が起動する。[...] > タスクバーにピン留め しておくと便利。
$ sudo apt-get update $ sudo apt-get upgrade $ sudo apt-get clean $ sudo apt-get install インストールしたいパッケージ
$ sudo apt-get install gfortran
$ sudo apt-get install emacs
$ sudo apt-get install openssh-server
$ sudo apt-get install x11-apps
Disable access control Use this when you want vcxsrv to accept connections from all clients.のところをチェックすること。
Xの接続先を指定するために、WSLの端末から ~/.bashrcに下記の記載を追加しておく。
export DISPLAY=$(cat /etc/resolv.conf | grep nameserver | awk '{print $2}'):0.0export DISPLAY=`hostname`.mshome.net:0.0
接続先は、IPアドレス 127.0.0.1 (ループバックアドレス)、またはホスト名 localhost 。
※ WSLは各種サービスの起動を自動で行わないので、PSを起動するごとに、WSLの端末で
$ sudo /etc/init.d/ssh startを実行して sshd を開始する。
X11転送を有効にしてXを使えるようにしておく。鍵認証の設定をしておくと便利。
$ xeyes &して表示ができればOK。
表示できないときは、Windowsの以下の設定を確認する。
設定 > プライバシーとセキュリティ > Windows セキュリティ > ファイアウォールとネットワーク保護 > ファイアウォールによるアプリケーションの許可
VcXsrv windows xserver
プライベート パブリック 共にチェックが入っているか。パブリックにチェックが入っていなければ入れる。
\\WSL$を検索するとエクスプローラで、デストリビューション名のフォルダ以下のLinuxのファイルにアクセスできる。 「ネットワークドライブの割り当て」をしておくのも一案。
WSLからは Windowsのファイルは、
dfすればわかるように、それぞれ、
$ sudo apt-get install xorg-dev
便利のためここに置いたソースcwp_su_all_version.tgzをダウンロードする。
$ sudo mkdir /usr/local/cwp ※1 $ sudo chown myusername /usr/local/cwp ※2 $ export CWPROOT=/usr/local/cwp $ cd $CWPROOT $ tar -zxvf /path/to/downloaded/sufile/cwp_su_all_version.tgz $ cd src※1 インストール場所は任意でよい(自分のホームディレクトリ以下にインストールするのであれば sudo は不用)。
$CWPROOT/src/Makefile.config を環境に合わせて編集するか、 $CWPROOT/src/config/Makefile.config_Linux.****(自身の環境で選択)をコピーして使用する。 編集の必要がなくデフォルト通りでよいこともある。
$ mv Makefile.config Makefile.config.org $ cp config/Makefile.config_Linux.**** Makefile.configプログラム群をコンパイル、インストールする。
$ make install $ make xtinstall~/.bashrcを編集し以下の環境変数を設定・追加する。
export CWPROOT=/usr/local/cwp export PATH=$CWPROOT/bin:$PATHこれでOK。 (FortranやMotif, OpenGLのコードを使用するならそれぞれ別途設定する)
WIN_pkg-version.tar.gz (2021.01現在 version=3.0.11)インストールは通常通り、
$ sudo mkdir /usr/local/win $ sudo chown myusername /usr/local/win $ cd /path/to/download/file $ tar -zxvf WIN_pkg-version.tar.gz . $ cd WIN_pkg-version $ ./configure --prefix=/usr/local/win $ make $ make install~/.bashrcを編集し以下の環境変数を設定・追加する。
export PATH=/usr/local/win/bin:$PATHこれでOK。