Windows版のバイナリが配布され始めました。
Code_Aster for Windows
したがって、ここに書かれている手順は既に古くなりました。
Linux用バイナリしか配布されていないソフトを実行するには、Linuxがインストールされたマシンを使っている場合問題ないですが、手元にWindowsマシンしかない場合、
- 空いているコンピュータにLinuxをインストール
- Hyper-V、VirtualboxやVMWareにLinuxをインストールした仮想マシンを用意
などしてLinuxの環境を整えなければなりません。
1.は大変ですし、2.はProバージョンのWindowsを必要であったり、仮想マシン上ではネイティブ実行の時と比べてパフォーマンス低下が気になります。
フランスのEDF社から配布されている構造解析ソフト[salome_meca] (http://www.code-aster.org)は、公式サイトからソースコードのほか、Linux用のバイナリをダウンロードすることができますが、Windows用のバイナリは用意されていません。
Windows Subsystem for Linux
Windows10は、Windows NTマイクロカーネルの上に、Win32APIサブシステムが動作しているOSです。
同じ要領で Linuxサブシステムを動作させようとしているのがWindows Subsystem for Linux(WSL もしくは bash on windows)です。
WSLでは、Linux等のバイナリフォーマットELFがロード出来るようになっています。原理的にはLinux用のバイナリを実行出来る筈です。
しかし、Xはサポートしていない用なので、Windows用Xサーバを用いてLinux用GUIアプリケーションを動かしてみようと思います。
WSLのインストール
今回は、Creators Updateが適用されているWindows10(Home、ProどちらでもOK)が手元にあるものとします。
Windowsを開発者モードへ
WSLを動作させるには、Windowsを開発者モードにする必要があります。
「設定」を開きます。
「更新とセキュリティ」を開きます。
左ペインにある「開発者向け」を開きます。
右ペインの「開発者モード」を選択し再起動をします。
WSLを有効に
Windows Subsystem for Windowsを有効にします。
同様に設定から「アプリ」を開きます。
右ペインを下にスクロールしていき「関連設定」を見つけて、その下の「プログラムと機能」を開きます。
左ペインの「Windowsの機能の有効化または無効化」を開きます。
「Windows Subsystem for Linux (Beta)」のチェックボックスをオンにします。
インストールが完了したら「ここに入力して検索」に「bash
」と入力してbash
を起動してください。
初めてbash
を起動すると、WindowsストアからUbuntuのダウンロードが始まり、インストールされます。
初期設定を行うとbash
が使える用になります。
Ubuntuをアップデートしておきましょう。bash
の中で
% sudo apt update
% sudo apt dist-upgrade
とタイプして下さい。パッケージのアップデートが始まります。
アップデートが終わったら、exit
と打って一旦bash
を閉じます。
vcxsrvをインストール
vcxsrv
はWindows用のX serverです。mobaxterm
やxmingw
を既にインストールしている場合、改めてインストールする必要はありません。
VcXsrv Windows X Serverからインストーラをダウンロードしてインストールしてください。
インストールされると、デスクトップにアイコンが現れます。
salome_mecaをインストール
salome_mecaをインストールします。先ほどインストールしたbash
を起動してください。
salome_mecaで必要となるパッケージをあらかじめインストールしておきます。
% sudo apt install python libxft2 libxss1 libxmu6 libglu1-mesa
% sudo apt install fonts-noto-cjk fonts-noto-hinted
これらが終わったら、salome_meca
をダウンロードします。
% wget http://www.code-aster.org/FICHIERS/SALOME-MECA-2016-LGPL-1.tgz
ダウンロードしたsalome_meca
を展開してインストールします。
% tar xvf SALOME-MECA-2016-LGPL-1.tgz
% ./SMECA_V2016_LGPL.run
Creating salome_meca application in /home/michioga/salome_meca/appli_V2016 ...
chmod: '/home/michioga/.local/share/applications/salome_meca_V2016.desktop' にアクセスできません: そのようなファイルや ディレクトリはありません
Desktop directory not found.
Warning: the directory /mnt/c/Program is in a path variable but does not exist
色々なWarningが出ますが、無視してください。
プロンプトが戻ってきたらインストール完了です。
salome_mecaの起動
vcxsrvの起動
salome_mecaを起動する前に、vcxsrvを起動します。デスクトップにあるVcXsrv
アイコンをダブルクリックしてください。
初めて起動したとき、Windows Firewallから
という警告がでますが「アクセスを許可する(A)」をしてください。
正常に起動すると「X」というアイコンが起動中のタスクの中に現れます。
salome_mecaの起動
bash
からsalome_meca
を起動します。
少しおまじないをします。
% export DISPLAY=localhost:0.0
% export LIBGL_ALWAYS_INDIRECT=1
と打ってから
% cd
% cd salome_meca/appli_V2016
% ./salome &
とするとsalome_meca
が起動します。
安定して動くかは検証していませんが、試してみてください。
また、win32api用のバイナリが必要な場合、FrontISTRなども試してみてください。構築済みのバイナリがダウンロードできますし、
オープンソース大規模構造解析プログラム FrontISTR v4.5のインストール (Windows10 - MinGW-w64)でビルド方法を紹介しています。