Windows10のアップデート(Fall Creators Update、2017.10/17提供開始)の適用により、Windows10の「Windows Subsystem for Linux」(WSL)が正式版になりました。WSLの機能により、Linux用ソフトをそのまま動かすことができます。ここではLinux用である照明シミュレーションソフトRadianceのインストールについて示します。ここでは下記のWindowsを使用しました。(2018.10改定)
Windows10 (64bit) 、version 1809インストールを行う際に、その過程を忘備録として簡単なメモをとっていたのですが、Radianceをインストールしたい方の参考になればと思い、ここに記すことにしました。以下に、WSL上でRadianceを使用できるようにする一連の作業(ソースファイルのコンパイル、リンク、インストールなど)を示します。Linuxに不慣れな方にもなるべくわかりやすくと思い、Windowsで可能な作業はWindowsで行うように記述しています。
通常のWindowsソフトのインストールと違い、ソースファイルからのインストールなので手間がかかりめんどくさいと思います。Radianceはオリジナル配布ソースをそのまま実行形式にします。このRadianceをWindowsと一緒に使用したい人に少しでもお役に立てば幸いです。間違いや不適当なところがあれば、ご指摘いただければうれしいです。
以下の表記のなかで、
青色部分は Widows での操作や表示、
茶色部分は ububtuコンソール での操作や表示
を表しています。
初めに、Windows10に Fall Creators Updateが適用されていることを確認してください。
確認方法です。
1.[スタートボタン]をクリック
2.[設定](歯車アイコン)をクリック
3.[システム]をクリック
4.[バージョン情報]をクリック
いろいろな情報が表示されますが、その中に
バージョン 1809
という表示があれば、OKです。
5.バージョン番号がこれより小さいと、アップデートが必要です。
次の順番でマウスでクリックして、WSLを使えるようにします。
1.[スタートボタン]をクリック
2.[設定](歯車アイコン)をクリック
3.[アプリ]をクリック
4.[プログラムと機能]をクリック
5.[Windowsの機能の有効化または無効化]をクリック(左側にある)
6.Windowsの機能が表示されるので、
□Windows Subsystem for Linux
にチェックを入れ、[OK]をクリックします。
7.再起動を促すダイアログが出るので再起動します。
ここでは、LinuxとしてUbuntuを導入します。設定に使用する文字は英数字にします。
1.タスクバーにある[紙袋アイコン]をクリックします。
(または、ブラウザでWindows storeを開く。)
2.検索欄に ubuntu と入力し検索します。
3.検索結果画面のアプリ[Ubuntu 18.04 LTS]アイコンをクリックします。
4.次に[入手]をクリックするとububtuがダウンロードされ、
「この製品はインストール済みです。」の表示がでます。
5.青色の[起動]をクリックします。
6.ubuntsコンソール画面が現れます。(以下、単に コンソール と記します。)
このコンソールにコマンドを入力してLinuxを使用します。
インストールに時間がかかるので、しばらく待ちます。
7.ユーザ名を聞いてくるので、入力します。
ここでは、ユーザ名を kankyo と入力した例を示します。
(後出で kankyo とある部分は 自分のユーザ名 となります。)
続いて、「パスワード」聞いてくるので、2回入力します。
注意
・このユーザ名とパスワードは Windows のログインとは関係
ないので、違うもので問題ありません。
・パスワードは sudo コマンド使用時に必要になるだけです。
8.緑色のプロンプトが表示され、コンソールが使用できるようになります。
緑色と白文字のプロンプトは「ユーザ名@パソコン名: $」となります。
(コンソールの終了方法は次の3通りあります。
1: 右上の×をクリック、2: exitと入力、3: CTRL+d )
9.ブラウザ、コンソールは終了してもいいです。
連続して作業を続行する場合は、コンソールはそのままにして次に進みます。
インストールしたubuntsの更新とアップグレードをします。
コンソールが表示されている状態であれば、3から開始します。
1.[スタートボタン]をクリック
2.[Ubuntu]アイコンをクリックし、コンソールを表示します。
3.コンソールに以下の2つのコマンドを順に入力し実行して行きます。
入力するとパスワードを聞かれるので入力します。(下記の注意参照)
終了するまで、しばらく時間がかかります。
sudo apt-get update
sudo apt-get upgrade -y
注意
・sudoコマンドを使用したとき、パスワードの入力が要求されます。
要求があったときは、パスワードを入力します。
・コマンドプロンプトに続き、上記コマンドを1つずつ入力し実行します。
終わるとコマンドプロンプトが新しく表示されます。
・Windowsでのテキストのコピーは、コンソール上で右クリックでペーストできます。
・コマンド実行時、y/n の要求があれば、y を入力する。
4.ブラウザ、コンソールは終了してもいいです。
連続して作業を続行する場合は、コンソールはそのままにして次に進みます。
Radiance用のフォルダ作成します。
このフォルダは、計算データなどを保存したりする作業に使用します。
フォルダはLinuxではディレクトリと呼ばれます。Windowsで作成します。
d:\radhome
d:\radhome\bin
上記はdディスクに radhome という名前のフォルダを作成しています。
フォルダ radhome は自分の好きなディスク・名前でいいです。
フォルダ bin は自作のコマンドやシェルスクリプトの格納に使用します。
後でフォルダ radhome をホームディレクトリに設定します。
以下、上記例の名称がでてきたときは、自分のものに読み替えます。
ここでは現在のホームディレクトリを Windowsのフォルダ radhome に変更します。
WSLで当初使用しているディレクトリはWSL独自のものです。
このディレクトリに作成されたファイルは、Windows側から参照や編集をするこ
とができません。変更の目的は、ファイルなどがWindowsと共用できるようにす
るためです。radファイルやシミュレーション結果などの編集作業をWindowsの
ソフトですぐ行うことが可能になり利用しやすくなります。
コンソールが表示されている状態であれば、3から開始してください。
1.[スタートボタン]をクリック
2.[Ubuntu]アイコンをクリックし、コンソールを表示します。
3.コンソールでの次の作業をする。
下記コマンドでファイルを作成したフォルダ radhome にコピーする。
cp .* /mnt/d/radhome/.
4.各ユーザのホームディレクトリは、/etc/passwd ファイルに記述されています。
ここで/etc/passwd ファイルの変更を行います。viなどで直接編集してもいいのですが、
編集し損ねるとやっかいなことになる可能性があるので、下記のようにします。
(1) /etc/passwd ファイルを先ほど作成したディレクトリにコピーします。
cp /etc/passwd /mnt/d/radhome/.
(2) Windowsで、d:radhome\passwd ファイルを変更します。
ここでは、サクラエディタを使用しました。
(メモ帳は Linux の改行コードLFに非対応なので使用しないでください。)
一番最後の行を変更します。(最終行は31行目でした。)
ユーザがkankyoとなっている最終行は次のようになっています。
kankyo:x:1000:1000:,,,:/home/kankyo:/bin/bash
この行に記述されているホームディレクトリを変更します。
現在: /home/kankyo
新規: /mnt/d/radhome (dデスクのradhomeフォルダ)
新規は上記にならって自分のフォルダ名にしてください。
変更すると下記のようになります。
kankyo:x:1000:1000:,,,:/mnt/d/radhome:/bin/bash
変更部分をよく確認して保存し終了します。
(3) オリジナルと変更したpasswdファイルとの違いをコンソールで最終確認します。
diffコマンドにより2つのファイルの違いを表示してみます。
実行すると次のようなります。diffコマンドの次の4行が違った部分の差分出力です。
diff /etc/passwd passwd
31c31
> kankyo:x:1000:1000:,,,:/home/kankyo:/bin/bash
---
< kankyo:x:1000:1000:,,,:/mnt/d/radhome:/bin/bash
ホームディレクトリ /home/kankyo が /mnt/d/radhome になっていればOKです。
よく確認し、違っていれば、(1)のコピーから再度実行します。
(4) よければ、下記コマンドでコピーし変更を反映させます。
sudo cp passwd /etc/passwd
5.コンソールを終了し、再度、コンソールを立ち上げます。
ホームディレクトリが radhome に変更されていることを下記コマンドで確認します。
pwd
/mnt/d/radhome
6.ホームディレクトリにある .bashrc ファイルに追加記述をします。
この作業は、XWindowを使用するための設定です。Windowsで作業を行います。
サクラエディタに d:radhome\.bashrc ファイルを読み込みます。
ファイルの最後に次の1行を追加し保存します。
export DISPLAY=localhost:0.0
Radianceをインストール・使用するために必要なソフトの準備をします。
他のパッケージソフトは、imagemagick と gnuplot をインストールします。
コンソールが表示されている状態であれば、3から開始してください。
1.[スタートボタン]をクリック
2.[Ubuntu]アイコンをクリックし、コンソールを表示します。
3.コンソールに以下のコマンドを順に入力し実行して行きます。
要領・注意は、上記の準備作業1と同様です。
sudo apt-get install -y fonts-noto-cjk fonts-noto-hinted
sudo apt-get install -y build-essential
sudo apt-get install -y xorg-dev tcl tk csh
sudo apt-get install -y x11-apps x11-utils x11-xserver-utils
sudo apt-get install -y imagemagick gnuplot-x11
sudo apt-get update
sudo apt-get upgrade -y
少し時間がかかりますが、以上がRadiance用のWSL環境となります。
いよいよ、Radianceのコンパイル、リンク、インストールします。
1.Radianceのソースファイルは、下記ページよりダウンロードできます。
http://radsite.lbl.gov/radiance/framed.html
次の2つのファイルをダウンロードします。
rad5R2.tar.gz
rad5R2supp.tar.gz
ダウンロードが終了したら、このファイルをホームディレクトリにコピーします。
(本来なら rad5R2all.tar.gz でよいのですが、解凍時にエラーがでました。)
2.ホームディレクトリにある上記ファイルを下記コマンドで解凍します。
(Windows用ソフトで解凍してもいいです。)
tar zxvf rad5R2.tar.gz
tar zxvf rad5R2supp.tar.gz
3.解凍が終わると、ray というディレクトリができます。
そこに移動し、下記コマンドでインストールを指示します。
cd ray
sudo ./makeall install
インストール作業が開始されるまでにいくつか聞いてきます。
下記にその質問を示します。?の後の記述を入力(3か所)します。
何もないものはエンターキーを押すだけです。
What is your preferred editor [vi]?
Where do you want the executables [/usr/local/bin]?
--More--(37%) (ここはスペースキーを押します。)
Do you understand and accept the terms of this agreement [n]? y
Choice? 2
Where do you want the library files [/usr/local/lib/ray]?
Install library files now [n]? y
Do you want to change it?
ここからインストール作業が開始されます。
コンパイルでは、warning が出てきますが、エラー無しで終了すると思います。
終了するとコマンドプロンプトが表示されます。
最後のメッセージが Done. と表示されていれば正常に終了しています。
これで、Radianceのインストールは終了です。
4.ブラウザ、コンソールは終了します。
今回インストールしたradianceでは、画像表示などはXwindowを使用しています。十分に使うためには、windows10上で稼働するXサーバが必要になります。計算だけならば、コマンドによりXサーバなしでもradianceを使用できますが、不便だと思います。Xサーバのインストールなどについては、ネットにさまざまな情報があります。フリーのXサーバには、VcXsrv や cygwin などがあります。試したところ、こちらのPC環境では VcXsrvは不安定でしたので cygwinのXサーバを使用しています。
以下に、簡単ですが cygwin のXサーバインストールについて示します。
Xサーバ(cygwin)のインストール
1.Cygwinのホームページよりセットアッププログラムをダウンロードします。
下記リンクがCygwinのホームページです。
https://www.cygwin.com
次のリンクはセットアッププログラムへの直接リンクです。
setup-x86_64.exe
ダウンロードが終了したら、セットアッププログラムをダブルクリックし実行します。
すると、つぎのようなウインドウが出ます。
このウインドウの表示に応じて[次へ]をクリックしてゆきます。
以下に、この最初のウインドウから順番にするクリックを示します。
Cygwin Net Release Setup Program [次へ]
Install from Internet [次へ]
Select Root Install Directory [次へ]
Select Local Package Directory [次へ]
Select Your Internet Connection [次へ]
Choose A Download Sites
サイトの選択です。どのサイトでもいいのですが、
真ん中より下の方に日本のサイトがあるので選択します。
[次へ]
Select Packages
インストールするパッケージを選択
Category にします。
X11 の Default をクリックし、Install にします。
[次へ]
Resolving Dependancies [次へ]
これよりも後の質問は、すべて前向きの選択(次へ、OK)で答えていきます。
ダウンロードが開始され、そのあとインストールを行うのでしばらく時間がかかります。
以上でXサーバのインストールは終了です。
次のような順番で起動します。
1.WSL の起動
[ubuntu]アイコンのクリック
2.Xサーバの起動
cygwinのXサーバ起動コマンド(Windows)は下記を使用しています。
C:\cygwin64\bin\XWin.exe :0 -multiwindow -listen tcp
ショートカットを作成しておけば、すぐ起動することができます。
注:上記の1,2は独立して動作するので実行順番は関係ありません。
3.X端末エミュレーターの起動
1で起動したubuntuコンソールにX端末エミュレーターのコマンドを入力します。
オプションで様々な設定ができますが、下記はその一例です。好みに応じて設定をします。
uxterm -fa DejaVuSansMono -fd NotoSansMonoCJKJP -fs 10 -fg white -bg rgb:20/28/48 &
Radianceは、原則としてX端末エミュレーター上で使用します。
<参考>
X端末エミュレーターの終了(コンソールと同じ)
1: 右上の×をクリック、2: exitと入力、3: CTRL+d
X端末エミュレーター画面上のコピー&ペースト
コピー :マウスで反転
ペースト :マウスのホイールボタンを押す
これでRadianceコマンドが使用できる環境が整いました。
4.Radianceコマンドの使用(動作確認)
上記のX端末エミュレーターでradianceコマンドを使ってみます。
ホームディレクトリから次の2つのコマンドを入力し実行します。
cd ray/obj/misc
rad -o x11 daf.rif
実行すると、ラッパ水仙の花が表示されます。
次の画像は上記コマンドを実行したときの、スクリーンショットです。
X端末エミュレーター2つと、rvu実行画面が表示されています。
ububtuコンソールは最小化状態です。終了しないでください。
★ 以上でインストールは終了です。
★ 下記に、Radianceソースに添付されていたシーンファイルを
実行して得られたCG画像
があります。
<追記>
このインストールにおけるWindows特有と思われる現象
・ x11meta コマンド。(2018.10)
例 $ objline room.rad | x11meta
実行すると画面が真っ白のウィンドウが表示されますが、マウスで
ウィンドウサイズを変更すると正常な表示になります。
ImageMagickを利用して下記のようにすると直ちに表示できます。
$ objline room.rad | psmeta | display -alpha off eps:-