rikachann Aabye
2013年09月27日
21:39
予想通りにOpenSim起動後にODEエラーになってしまいました。
このODEエラーに対応したいと思います。
ODEエラーのもとになっているlibode.soを自前でコンパイルする必要がありそうです。
まず、コンパイル環境を構築します。
pi@raspberrypi ~ $ sudo apt-get install aclocal libtool gcc
Reading package lists... Done
Building dependency tree
Reading state information... Done
E: Unable to locate package aclocal
あれ、 aclocalというパッケージは無いようです。
とりあえず、 libtoolとgccをインストールします。
pi@raspberrypi ~ $ sudo apt-get install libtool gcc
aclocalはautomakeパッケージの中にはいっているようなので automakeをインストールします
pi@raspberrypi ~ $ sudo apt-get install automake
aclocalのバージョンを確認します
pi@raspberrypi ~ $ aclocal --version
aclocal (GNU automake) 1.11.6
Copyright (C) 2011 Free Software Foundation, Inc.
以下 略
無事インストールできました。
ODEのライブラリーをgitでダウンロードします。
ダウンロードするデレクトリはーは ode_libsとしました。自動的に作成されます。
pi@raspberrypi ~ $ git clone git://opensimulator.org/git/opensim-libs ode_libs
pi@raspberrypi ~ $ cd ode_libs/trunk/unmanaged/OpenDynamicsEngine-r1755
コンパイル環境の構築のため autogen.shを起動
pi@raspberrypi ~/ode_libs/trunk/unmanaged/OpenDynamicsEngine-r1755 $ sh autogen.sh
Please make sure that you use automake 1.10 or later
Warnings about underquoted definitions are harmless
Running aclocal
Running libtoolize
Running autoheader
Running automake
configure.in:54: installing `./compile'
configure.in:45: installing `./config.guess'
configure.in:45: installing `./config.sub'
configure.in:47: installing `./install-sh'
configure.in:47: installing `./missing'
GIMPACT/src/Makefile.am: installing `./depcomp'
Running autoconf
Running bootstrap in ou directory
Running bootstrap in libccd directory
libtoolize: You should add the contents of the following files to `aclocal.m4':
libtoolize: `/usr/share/aclocal/libtool.m4'
libtoolize: `/usr/share/aclocal/ltoptions.m4'
libtoolize: `/usr/share/aclocal/ltversion.m4'
libtoolize: `/usr/share/aclocal/ltsugar.m4'
libtoolize: `/usr/share/aclocal/lt~obsolete.m4'
libtoolize: Consider adding `AC_CONFIG_MACRO_DIR([m4])' to configure.ac and
libtoolize: rerunning libtoolize, to keep the correct libtool macros in-tree.
libtoolize: Consider adding `-I m4' to ACLOCAL_AMFLAGS in Makefile.am.
Now you are ready to run ./configure
コンフィグを実行
pi@raspberrypi ~/ode_libs/trunk/unmanaged/OpenDynamicsEngine-r1755 $ ./configure --enable-shared --enable-release --disable-demos --without-x --enable-old-trimesh
コンパイル実行
pi@raspberrypi ~/ode_libs/trunk/unmanaged/OpenDynamicsEngine-r1755 $ make
libode.soをopensimディレクトリーにコピー
pi@raspberrypi ~/ode_libs/trunk/unmanaged/OpenDynamicsEngine-r1755 $ cp ./ode/src/.libs/libode.so ~/opensim-0.7.5/bin/lib32/libode.so
Ode.NET.dll.config を編集
その前にバックアップ^^
pi@raspberrypi ~/opensim-0.7.5/bin $ cp Ode.NET.dll.config Ode.NET.dll.config.org
pi@raspberrypi ~/opensim-0.7.5/bin $ vim Ode.NET.dll.config
下記のように編集しました。(<>は全角表示になっています^^;)
<configuration>
<dllmap dll="ode" target="lib32/libode.so" />
</configuration>
早速 再度opensimを起動してみます。
pi@raspberrypi ~/opensim-0.7.5/bin $ 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) #
でも よく見ると OpenJpegのところが 赤くなってます^^
一度 opensimを終了します
Region (rikachan_island) # shutdown
ホームへ帰ります
pi@raspberrypi ~/opensim-0.7.5/bin $ cd ~
gitで必要なファイルをダウンロードします
pi@raspberrypi ~ $ git clone git://github.com/openmetaversefoundation/libopenmetaverse.git libopenmetaverse
移動します
pi@raspberrypi ~ $ cd ./libopenmetaverse/openjpeg-dotnet/
Makefileを編集します。
pi@raspberrypi ~/libopenmetaverse/openjpeg-dotnet $ vim Makefile
36行目を編集します
ARCH=-i686 → ARCH=-ARM
37行目を編集します
ARCHFLAGS=-m32 → ARCHFLAGS=
mekeしますが gmakeがありません
pi@raspberrypi ~/libopenmetaverse/openjpeg-dotnet $ gmake
-bash: gmake: command not found
makeのバージョンを確認すると
pi@raspberrypi ~/libopenmetaverse/openjpeg-dotnet $ make -version
GNU Make 3.81
Copyright (C) 2006 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.
There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A
PARTICULAR PURPOSE.
This program built for arm-unknown-linux-gnueabihf
実は gmakeなので そのまま makeしちゃいます
pi@raspberrypi ~/libopenmetaverse/openjpeg-dotnet $ make
opensimディレクトリーにコピーします
pi@raspberrypi ~/libopenmetaverse/openjpeg-dotnet $ cp -p libopenjpeg-dotnet-2-1.5.0-dotnet-1-ARM.so ~/opensim-0.7.5/bin/libopenjpeg.so
opensimディレクトリーに移動します
pi@raspberrypi ~/libopenmetaverse/openjpeg-dotnet $ cd ~/opensim-0.7.5/bin
OpenMetaverse.dll.configを編集します
その前にバックアップします
pi@raspberrypi ~/opensim-0.7.5/bin $ cp OpenMetaverse.dll.config OpenMetaverse.dll.config.org
編集します
pi@raspberrypi ~/opensim-0.7.5/bin $ vim OpenMetaverse.dll.config
下記のように変更(<>は全角表示になっています^^;)
<configuration>
<dllmap dll="openjpeg-dotnet.dll" target="libopenjpeg.so" />
</configuration>
opensimを再起動
pi@raspberrypi ~/opensim-0.7.5/bin $ mono OpenSim.exe
わ〜〜 うまくいきました^^
次回は 母艦から opensimにアクセスしたいと思います^^