2017年08月26日
Nano Pi NEO 2でOpenSim IP固定化とOpenSim導入
今回は、IP固定化とOpenSimの導入を行っていきたいと思います。
まずはIP固定化からやってみます。
IPはここでは、192.168.11.35とします。
必要な情報を取得します。
ゲートウェイアドレス
$ route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 192.168.11.1 0.0.0.0 UG 100 0 0 eth0
192.168.11.0 0.0.0.0 255.255.255.0 U 100 0 0 eth0
今回設定する情報は
IPアドレス 192.168.11.35
ネットマスク 255.255.255.0
ゲートウェイ 192.168.11.1
ネームサーバー 192.168.11.1
にて設定していきたいと思います。
さて、IP固定化では通常 /etc/network/interfacesに前述の情報を記載します。
interfacesファイルに追記します。
$ cd /etc/network
$ sudo vim interfaces
auto lo
iface lo inet loopback
auto eth0 追加
iface eth0 inet static 追加
address 192.168.11.35 追加
netmask 255.255.255.0 追加
gateway 192.168.11.1 追加
dns-nameservers 192.168.11.1 追加
設定を反映するため、再起動します。
固定IP(ここでは 192.168.11.35)から SSHログインします。
う~~ん ここまで順調だったのに^^ なんと おとしあなが^^;
次のステップのmonoの導入に失敗してしまいます^^
sudo apt-get updateでもアップデートに失敗してしまいます
色々調べてみるとDNSの設定がうまく働いていないようです
解決方法をくぐってみると こちらのAkagawa様のページ(NanoPi NEOセットアップメモ)に解決方法が載っていましたので参考にさせていただきました
貴重な情報ありがとうございます。
DNS設定を手動に変更
sudo vim /etc/NetworkManager/NetworkManager.conf
dns=dnsmasqを
dns=none に変更
resolv.confを退避
sudo mv /etc/resolv.conf /etc/resolv.conf.old
esolv.confにネームサーバーを新規登録
sudo vim /etc/resolv.conf
nameserver 192.168.11.1 (IPはリカの設定条件の場合です。)
設定を反映するため、再起動します。
固定IP(ここでは 192.168.11.35)から SSHログインします。
続いてOpenSimの動作環境のMonoをインストールします。
$ sudo apt-get install mono-complete
バージョンを確認します。
$ mono -V
ono JIT compiler version 4.2.1 (Debian 4.2.1.102+dfsg2-7ubuntu4)
Copyright (C) 2002-2014 Novell, Inc, Xamarin Inc and Contributors. www.mono-project.com
TLS: __thread
SIGSEGV: normal
Notifications: epoll
Architecture: arm64
Disabled: none
Misc: softdebug
LLVM: supported, not enabled.
GC: sgen
これでmonoがインストールされましたので引き続きOpenSimをインストールします。
ここでは、現時点(2017/8/25)の最新版バージョン0.9.0.0をインストールしてみました。
$ wget http://opensimulator.org/dist/opensim-0.9.0.0.tar.gz
解凍します
$ tar zxvf opensim-0.9.0.0.tar.gz
解凍したOpenSimのbinディレクトリに移動します。
$ cd opensim-0.9.0.0/bin
早速実行します。
$ mono OpenSim.exe
途中の質問事項に答えていきます。(例です)
New region name []: rikachann_island Sim名を入力します
RegionUUID [04124039-b4a1-40a5-bef7-d916e62ca614]: Enterボタンを押しました
Region Location [1000,1000]: Enterボタンを押しました
Internal IP address [0.0.0.0]: Enterボタンを押しました
Internal port [9000]: Enterボタンを押しました
Resolve hostname to IP on start (for running inside Docker) [False]: Enterボタンを押しました
External host name [SYSTEMIP]: 192.168.11.35 固定化したIPアドレスを入力しました。
・
・
・
New estate name [My Estate]:rika ここではリカにしました。
・
・
・
Exception: System.DllNotFoundException: BulletSim
エラーで止まちゃいましたぁ^^ 予想通りwww
BulletSimの実行ファイルがARM用でないため停止しました。
Raspberry Zeroと同じように、物理エンジンを ODEに変更して実装していきたいと思います。
まずはコンパイル環境を整えます。(すでにインストールされている場合もあります)
$ sudo apt-get install libtool gcc
$ sudo apt-get install g++
$ sudo apt-get install automake
$ sudo apt-get install git
OpenSimのライブラリーを読み込みます。
$ git clone git://opensimulator.org/git/opensim-libs
コンパイル会場に移動します。
$ cd opensim-libs/trunk/unmanaged/OpenDynamicsEngine-0.13.1mod
コンパイル環境構築のために bootstrapを実行
$ sh bootstrap
コンフィグを実行します。
$ ./configure --enable-shared --enable-release --disable-demos --without-x --enable-old-trimesh
コンパイルします。
$ make
作成されたlibode.so.4.1.0をOpenSimディレクトリにコピーします。
$ cp ./ode/src/.libs/libode.so.4.1.0 ~/opensim-0.9.0.0/bin/lib64/libode.so
ODE定義ファイルを編集しましますが、従来からのファイル名Ode.NET.dll.configから変更があったようで、ファイルが見つからなく焦りましたぁ^^
$ cd ~/opensim-0.9.0.0/bin
その前にバックアップ^^
$ cp OpenSim.Region.PhysicsModule.Ode.dll.config OpenSim.Region.PhysicsModule.Ode.dll.config.org
次のように編集します
$ vim OpenSim.Region.PhysicsModule.Ode.dll.config
編集内容(注意:表示の関係上<>は全角になっています。コピーするときは半角に直してください)
<configuration>
<dllmap dll="ode" target="lib64/libode.so" />
</configuration>
OpenSim.iniを編集して、デフォルトの物理エンジン BulletSimからODEに変更します。
vim OpenSim.ini
255行目のコメントを外します。
;; Default is BulletSim
physics = OpenDynamicsEngine
; physics = BulletSim
; physics = basicphysics
; physics = POS
再度opensimを起動します。
$ mono OpenSim.exe
質問に答えていきます。
Estate owner first name [Test]: ユーザーのファーストネーム ここでは rika
Estate owner last name [User]: ユーザーのラストネーム ここでは kayama
Password: パスワード 任意に設定
Email: Enter
User ID [1c3a35f2-2cae-???????????]: Enter
入力待ちになりました^^
Region (rikachan_island) #
でも、予想通りJPEGのところが赤くなっています。
ARM用のlibopenjpeg.soが無いためです。
opensimを終了します
Region (rikachan_island) # shutdown
gitで必要なファイルをダウンロードします。
$ git clone git://github.com/openmetaversefoundation/libopenmetaverse.git libopenmetaverse
コンパイル会場に移動します。
$ cd ~/libopenmetaverse/openjpeg-dotnet
Makefileを編集します。
$ vim Makefile
36,37行目を次のように編集します
ARCH=-ARM <<36行
ARCHFLAGS= <<37行
コンパイルします。
$ make
作成されたjpegライブラリーをOpenSimのディレクトリにコピーします。
$ cp -p libopenjpeg-dotnet-2-1.5.0-dotnet-1-ARM.so ~/opensim-0.9.0.0/bin/libopenjpeg.so
opensimディレクトリーに移動します。
$ cd ~/opensim-0.9.0.0/bin
jpeg定義ファイルを編集します。
その前にバックアップ^^
$ cp OpenMetaverse.dll.config OpenMetaverse.dll.config.org
下記のように編集します。
$ vim OpenMetaverse.dll.config
編集内容(注意:表示の関係上<>は全角になっています。コピーするときは半角に直してください)
<configuration>
<dllmap dll="openjpeg-dotnet-x86_64.dll" target="libopenjpeg.so" />
</configuration>
opensimを再起動します。
$ mono OpenSim.exe
JPEGのところもうまくいったようです。

まずはIP固定化からやってみます。
IPはここでは、192.168.11.35とします。
必要な情報を取得します。
ゲートウェイアドレス
$ route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 192.168.11.1 0.0.0.0 UG 100 0 0 eth0
192.168.11.0 0.0.0.0 255.255.255.0 U 100 0 0 eth0
今回設定する情報は
IPアドレス 192.168.11.35
ネットマスク 255.255.255.0
ゲートウェイ 192.168.11.1
ネームサーバー 192.168.11.1
にて設定していきたいと思います。
さて、IP固定化では通常 /etc/network/interfacesに前述の情報を記載します。
interfacesファイルに追記します。
$ cd /etc/network
$ sudo vim interfaces
auto lo
iface lo inet loopback
auto eth0 追加
iface eth0 inet static 追加
address 192.168.11.35 追加
netmask 255.255.255.0 追加
gateway 192.168.11.1 追加
dns-nameservers 192.168.11.1 追加
設定を反映するため、再起動します。
固定IP(ここでは 192.168.11.35)から SSHログインします。
う~~ん ここまで順調だったのに^^ なんと おとしあなが^^;
次のステップのmonoの導入に失敗してしまいます^^
sudo apt-get updateでもアップデートに失敗してしまいます
色々調べてみるとDNSの設定がうまく働いていないようです
解決方法をくぐってみると こちらのAkagawa様のページ(NanoPi NEOセットアップメモ)に解決方法が載っていましたので参考にさせていただきました
貴重な情報ありがとうございます。
DNS設定を手動に変更
sudo vim /etc/NetworkManager/NetworkManager.conf
dns=dnsmasqを
dns=none に変更
resolv.confを退避
sudo mv /etc/resolv.conf /etc/resolv.conf.old
esolv.confにネームサーバーを新規登録
sudo vim /etc/resolv.conf
nameserver 192.168.11.1 (IPはリカの設定条件の場合です。)
設定を反映するため、再起動します。
固定IP(ここでは 192.168.11.35)から SSHログインします。
続いてOpenSimの動作環境のMonoをインストールします。
$ sudo apt-get install mono-complete
バージョンを確認します。
$ mono -V
ono JIT compiler version 4.2.1 (Debian 4.2.1.102+dfsg2-7ubuntu4)
Copyright (C) 2002-2014 Novell, Inc, Xamarin Inc and Contributors. www.mono-project.com
TLS: __thread
SIGSEGV: normal
Notifications: epoll
Architecture: arm64
Disabled: none
Misc: softdebug
LLVM: supported, not enabled.
GC: sgen
これでmonoがインストールされましたので引き続きOpenSimをインストールします。
ここでは、現時点(2017/8/25)の最新版バージョン0.9.0.0をインストールしてみました。
$ wget http://opensimulator.org/dist/opensim-0.9.0.0.tar.gz
解凍します
$ tar zxvf opensim-0.9.0.0.tar.gz
解凍したOpenSimのbinディレクトリに移動します。
$ cd opensim-0.9.0.0/bin
早速実行します。
$ mono OpenSim.exe
途中の質問事項に答えていきます。(例です)
New region name []: rikachann_island Sim名を入力します
RegionUUID [04124039-b4a1-40a5-bef7-d916e62ca614]: Enterボタンを押しました
Region Location [1000,1000]: Enterボタンを押しました
Internal IP address [0.0.0.0]: Enterボタンを押しました
Internal port [9000]: Enterボタンを押しました
Resolve hostname to IP on start (for running inside Docker) [False]: Enterボタンを押しました
External host name [SYSTEMIP]: 192.168.11.35 固定化したIPアドレスを入力しました。
・
・
・
New estate name [My Estate]:rika ここではリカにしました。
・
・
・
Exception: System.DllNotFoundException: BulletSim
エラーで止まちゃいましたぁ^^ 予想通りwww
BulletSimの実行ファイルがARM用でないため停止しました。
Raspberry Zeroと同じように、物理エンジンを ODEに変更して実装していきたいと思います。
まずはコンパイル環境を整えます。(すでにインストールされている場合もあります)
$ sudo apt-get install libtool gcc
$ sudo apt-get install g++
$ sudo apt-get install automake
$ sudo apt-get install git
OpenSimのライブラリーを読み込みます。
$ git clone git://opensimulator.org/git/opensim-libs
コンパイル会場に移動します。
$ cd opensim-libs/trunk/unmanaged/OpenDynamicsEngine-0.13.1mod
コンパイル環境構築のために bootstrapを実行
$ sh bootstrap
コンフィグを実行します。
$ ./configure --enable-shared --enable-release --disable-demos --without-x --enable-old-trimesh
コンパイルします。
$ make
作成されたlibode.so.4.1.0をOpenSimディレクトリにコピーします。
$ cp ./ode/src/.libs/libode.so.4.1.0 ~/opensim-0.9.0.0/bin/lib64/libode.so
ODE定義ファイルを編集しましますが、従来からのファイル名Ode.NET.dll.configから変更があったようで、ファイルが見つからなく焦りましたぁ^^
$ cd ~/opensim-0.9.0.0/bin
その前にバックアップ^^
$ cp OpenSim.Region.PhysicsModule.Ode.dll.config OpenSim.Region.PhysicsModule.Ode.dll.config.org
次のように編集します
$ vim OpenSim.Region.PhysicsModule.Ode.dll.config
編集内容(注意:表示の関係上<>は全角になっています。コピーするときは半角に直してください)
<configuration>
<dllmap dll="ode" target="lib64/libode.so" />
</configuration>
OpenSim.iniを編集して、デフォルトの物理エンジン BulletSimからODEに変更します。
vim OpenSim.ini
255行目のコメントを外します。
;; Default is BulletSim
physics = OpenDynamicsEngine
; physics = BulletSim
; physics = basicphysics
; physics = POS
再度opensimを起動します。
$ mono OpenSim.exe
質問に答えていきます。
Estate owner first name [Test]: ユーザーのファーストネーム ここでは rika
Estate owner last name [User]: ユーザーのラストネーム ここでは kayama
Password: パスワード 任意に設定
Email: Enter
User ID [1c3a35f2-2cae-???????????]: Enter
入力待ちになりました^^
Region (rikachan_island) #
でも、予想通りJPEGのところが赤くなっています。
ARM用のlibopenjpeg.soが無いためです。
opensimを終了します
Region (rikachan_island) # shutdown
gitで必要なファイルをダウンロードします。
$ git clone git://github.com/openmetaversefoundation/libopenmetaverse.git libopenmetaverse
コンパイル会場に移動します。
$ cd ~/libopenmetaverse/openjpeg-dotnet
Makefileを編集します。
$ vim Makefile
36,37行目を次のように編集します
ARCH=-ARM <<36行
ARCHFLAGS= <<37行
コンパイルします。
$ make
作成されたjpegライブラリーをOpenSimのディレクトリにコピーします。
$ cp -p libopenjpeg-dotnet-2-1.5.0-dotnet-1-ARM.so ~/opensim-0.9.0.0/bin/libopenjpeg.so
opensimディレクトリーに移動します。
$ cd ~/opensim-0.9.0.0/bin
jpeg定義ファイルを編集します。
その前にバックアップ^^
$ cp OpenMetaverse.dll.config OpenMetaverse.dll.config.org
下記のように編集します。
$ vim OpenMetaverse.dll.config
編集内容(注意:表示の関係上<>は全角になっています。コピーするときは半角に直してください)
<configuration>
<dllmap dll="openjpeg-dotnet-x86_64.dll" target="libopenjpeg.so" />
</configuration>
opensimを再起動します。
$ mono OpenSim.exe
JPEGのところもうまくいったようです。

Posted by rikachann Aabye at 09:45│Comments(0)
│Nano Pi NEO 2