So-net無料ブログ作成

Processing-1.5.1 [Solaris]

Java をもっと簡単に使えるようにした言語に Processing というのがあります。

http://processing.org/

からダウンロードできますが、残念なことに、Solaris用のバイナリが用意されていません。
Processing自体はJavaでかかれていますので、そこはJavaの本家から提供されているSolarisで動かさないわけには行きません。

以前にもProcessing-0142というバージョンを使う方法を紹介しましたが、今回は最新版のProcessing-1.5.1版を動かす方法を紹介します。

まずは、Linux版をダウンロードします。
http://processing.org/download/processing-1.5.1-linux.tgz

ダウンロードしたファイルを展開します。

gunzip processing-1.5.1-linux.tgz | gtar xf -


processing-1.5.1/processingというシェルスクリプトを以下のように修正します。
diff -u pro*orig p*ng
--- processing.orig	Mon May 16 07:42:29 2011
+++ processing	Wed Feb 22 20:49:02 2012
@@ -71,7 +71,7 @@
 log APPDIR
 
 # Try using a local JDK from the same directory as this script
-JDKDIR=`readlink -f "$APPDIR/java"`
+JDKDIR=`readlink -f "$APPDIR/java"` && JDKDIR=`dirname "$JDKDIR"`/..
 make_jdkcp "$JDKDIR"
 log SUCCESS
 
@@ -92,7 +92,7 @@
 log CLASSPATH
 
 # Make all JDK binaries available in PATH
-export PATH="$JDKDIR/bin":"$PATH"
+PATH="$JDKDIR/bin":"$PATH"; export PATH
 log PATH
 
 # Start Processing in the same directory as this script

processingを実行すると

Screenshot-sketch_feb22a | Processing 1.5.1.png

という画面が表示されます。これで動くようになるのですが、OpenメニューからOpenGLのサンプルアプリケーションを実行しうようとするとjogl関係のライブラリが対応していないために動かすことができません。

そこで

https://jogl.dev.java.net/

からSolaris版のバイナリをとってきます。
Ultra20M2では、
jogl-1.1.2-pre-20080523-solaris-i586.zip
jogl-1.1.2-pre-20080523-solaris-amd64.zip
の両方をダウンロードします。

unzip で展開してlibディレクトリにあるファイルを以下のようにしてProcessingのディレクトリにコピーします。

mkdir processing-1.5.1/modes/java/libraries/opengl/library/amd64
cp jogl-1.1.2-pre-20080523-solaris-amd64/lib/lib/*.so processing-1.5.1/modes/java/libraries/opengl/library/amd64
cp jogl-1.1.2-pre-20080523-solaris-i586/lib/lib/* processing-1.5.1/modes/java/libraries/opengl/library/



Sparc版では、
dist/jogl-1.1.2-pre-20080523-solaris-sparc.zip
dist/jogl-1.1.2-pre-20080523-solaris-sparcv9.zip
の両方をダウンロードして、下記のように展開します。

mkdir processing-0142/libraries/opengl/library/sparcv9
cp jogl-1.1.2-pre-20080523-solaris-sparcv9/lib/*.so processing-1.5.1/modes/java/libraries/opengl/library/sparcv9
cp jogl-1.1.2-pre-20080523-solaris-sparc/lib/* processing-1.5.1/modes/java/libraries/opengl/library


File -> Examples ... -> Libraries -> OpenGL -> Geometry
というアプリケーションを実行すると下記のような画面が表示されます。

Screenshot-Geometry.png

静止画のように見えますが、実際は動画です。

SXCEとxVM [Solaris]

Solaris Express Communication Edition(SXCE)のリリース完了まであと少しというところになりました。

今回ひっそりとb129がリリースされたのでいれてみたところ、xVMが起動できないというトラブルにみまわれたのですが、解決できました。

前回のblogでxVMで起動するようにしていたのですが、xVMのサービスが動いていないので以下のようにして起動させる必要がありました。

# svcadm enable -r svc:/milestone/xvm:default


b127まではこれでもよかったのですが、b129になってメモリ不足で起動できない問題が発生しました。
xendが確保するメモリ量が多くなったが原因でしたので、以下のようにして容量を減らしました。

# svccfg
svc:> select xvm/xend
svc:/system/xvm/xend> setprop config/dom0-min-mem=2048
svc:/system/xvm/xend> exit
# svcadm restart xvm/xend

これで昔のようにSolaris10をゲストとして動かすことができるようになりました。


Solaris nevada b123 [Solaris]

Solaris Nevada (SXCE)のリリース終了まで1ヶ月となりました。皆さん、いかがお過ごしでしょうか。

いつもなら1週間前にリリースされていたはずのSolaris Nevada b123がようやくダウンロード可能になりました。

早速インストールといきたかったのですがダウンロードを開始したのが朝と言うこともありようやくインストールすることができました。

インストールは滞りなく終わったのですが、再起動したところgrubのメニューから xVMバージョンがごっそりと抜け落ちておりました。
知らずにmenu.lstを修正してしまい、failsafeで起動させてしまいました。
バックアップしておいたb122のmenu.lstからxVMのエントリーを復活させることで、xVMバージョンのカーネルを起動させることができました。

まずはめでたしめでたし。

Solaris nevada b115 [Solaris]

OpenSolaris 2009.06とともに、Solaris Nevada b115がリリースされました。

早速インストールしてみたところ、遊ばせてもらいました。
日本語を入力しようとして、Ctrl+SPACEをタイプしても^@が表示されて日本語入力のモードには入れません。
xVMを使っているのですが、virshというコマンドを実行しようとすると、
ld.so.1: virsh: 重大なエラー: libgnutls.so.13: open に失敗しました: ファイルもディレクトリもありません。

と表示されてしまい、DomUのOSを起動することができませんでした。

ということで対応方法ですが、日本語を入力できないのは、/etc/gtk-2.0/gtk.immodulesの内容が
# GTK+ Input Method Modules file
# Automatically generated file, do not edit
# Created by /a/usr/bin/gtk-query-immodules-2.0 from gtk+-2.16.1
#
"/a/usr/lib/gtk-2.0/2.10.0/immodules/im-iiim.so" 
"iiim" "Internet/Intranet Input Method" "iiimgcf" "/usr/share/locale" "" 

"/a/usr/lib/gtk-2.0/2.10.0/immodules/im-scim-bridge.so" 
"scim-bridge" "SCIM Bridge Input Method" "" "" "" 

"/a/usr/lib/gtk-2.0/2.10.0/immodules/im-scim.so" 
"scim" "SCIM Input Method" "scim" "/usr/share/locale" "" 

"/a/usr/lib/gtk-2.0/2.10.0/immodules/im-xim.so" 
"xim" "X Input Method" "gtk20" "/usr/share/locale" "*" 

とパス名の先頭に
/a
が書かれているためなので、この部分を削除して、一旦ログアウトします。

後者の、virshが起動できないことは、暫定策として、
cd /usr/lib; ln -s libgnutls.so.26.11.6 libgnutls.so.13
cd /usr/lib/64; ln -s libgnutls.so.26.11.6 libgnutls.so.13

とシンボリックリンクでごかますことで動くようになりました。



CentOS on Solaris nevada [Solaris]

Solaris Nevada にはBrandZという機能があって、Linuxのバイナリを動かすことができます。
デフォルトではLinux 2.4のみに対応しているため、最近のLinuxが動かせません。
OpenSolarisのサイトには
http://opensolaris.org/os/community/brandz/todo/linux_2_6/
というプロジェクトがあってLinux 2.6のバイナリが動かせるようになっているのですが、肝心のLinux 2.6のインストールキットがおいてないので、自分で作る必要があります。
最近CentOS5.3がリリースされたのでBlandZで動くようにしてみました。
まずはCentOSを素の環境にインストールする必要があるのですが、手持ちのUltra20M2ではxVMをうごかしているのでこのxVMのゲストとしてCentOSをインストールするべく下記のようにしてみました。
# zfs create -V 8G mypool/centos
# virt-install -n centos --hvm -r 1024 --vnc -f /dev/zvol/dsk/mypool/centos -s 8 -c /mypool/cdrom/centos/CentOS-5.3-i386-bin-DVD.iso

ところが、インストーラーを起動している途中で、
Freeing unused kermel memory: 228k freed
Write potecting the kernel read-only data: 397k

と表示されて、起動できませんでした。
それではと、x86_64のインストールDVDでやってみたのですが、今度は起動してインストールまではできたのですが、再起動でフェイルして結局BlandZ用のインストールイメージが作れませんでした。
仕方ないので一つ前のバージョンのCentOS5.2でやってみたのですが、i386のメディアでCentOS5.3と同様にインストーラが起動できませんでした。x86_64バイナリでようやくBlandZ用のインストールができたので、
[root@centos ~]# cd /
[root@centos /]# tar -jcf centos5.tar.bz2 --exclude centos5.tar.bz2 --exclude dev --exclude proc --exclude sys --exclude boot *

とやってBlandZ用のインストールイメージを作成しました。そしてBlandZを準備します。
# cd /etc/zones
# wget http://www.opensolaris.org/os/community/brandz/files/SUNWlx26.xml
# zonecfg -z centos
centos: そのような構成済みゾーンはありません
'create' を使用して、新しいゾーンの構成を開始してください。
zonecfg:centos> create -t SUNWlx26
zonecfg:centos> set zonepath=/mypool/zones/centos
zonecfg:centos> add net
zonecfg:centos:net> set address=192.168.xx.yy/24
zonecfg:centos:net> set physical=nge0
zonecfg:centos:net> end
zonecfg:centos> add attr
zonecfg:centos:attr> set name="audio"
zonecfg:centos:attr> set type=boolean
zonecfg:centos:attr> set value=true
zonecfg:centos:attr> end
zonecfg:centos> commit
zonecfg:centos> exit

BlandZが準備できたところで、先ほど作ったCentOSのインストールイメージをつかってBlandZのインストールを完了させます。
# zoneadm -z centos install -d centos5.tar.bz2

インストールできたので、起動しようとしたところ、
# zomeadm -z centos boot
zoneadm: zone 'centos': zoneadmd の呼び出しに失敗しました

となってまともに動きませんでした。
xVM上ではi386のインストールイメージが作れないので、Pentium///のマシンを用意してブートCDを作成してNFSサーバ経由でCentOSをインストールしてBlandZ用のインストールイメージを作成して再度BlandZをインストールしたところ正常に動かすことができました。
この間xVMを何度か強制終了させたのですが、その影響で、/var/xen/dumpにコアがつくられしまい、もう少しでパーティションが溢れるところでした。
パーティションが溢れる前に気がついたのですが、最初どこのディレクトリがいっぱいになってしまったのか分からずdu -sで調べていったところ、xVMのコアが原因と判明したのでありました。

Solaris nevada b112 [Solaris]

Solaris Nevada b112がリリースされました。

b111が遅れた理由のバグはそのまま残っていましたので、b111と同じような対策をしました。
それ以外は目立ったトラブルには遭遇していません。


Solaris nevada b111 [Solaris]

Solaris nevada b111がリリースされました。
本来なら、先週リリースされる予定だったのですが、一部に問題ありと言うことで遅くなったようです。

ベータ版だけあってまたまた遊ばせて頂きました。

インストール後にウィンドマネージャが起動しないというトラブルが発生しましたが、ogl-selectの問題ということで

http://bugs.opensolaris.org/view_bug.do?bug_id=6822628

というバグが登録されていました。
インストール前にはバグをチェックする癖がつきました。

タグ:ogl-select b111

読み上げてくれるAdobe Reader 9.1 [Solaris]

Solaris x86版のAdobe Reader 9.1がリリースされました。

http://get.adobe.com/jp/reader/
http://get.adobe.com/jp/reader/otherversions/

Solaris nevada に入れました。
Adobe Reader 9.1の編集(E)→環境設定(N)... Ctrl+Kの分類(G)に読み上げという機能が追加されました。

読み上げオプションをデフォルトから
ドライバ(D): eSpeak GNOME Speach Driverに
音声(C): english-us
にすると英語のドキュメントを読み上げてくれます。

デフォルトのスピーチ属性を使用(A)をデフォルトから
ピッチ(I): 1
1分あたりの単語数(W): 150
程度にすると聞きやすい速度で読み上げてくれるので英語のシャドーイング(by リトルチャロ)に便利です。

LDom で zone [Solaris]

T5120にSolaris nevada b110をいれてLDomを設定し、続いてzoneを作ったところ
本来ならzoneをboot後にsysidconfigでシステム設定ができるのですが、

sysidconfig: Failure: Unable to determine terminal type

というメッセージがでて設定のUIが表示されません。
いろいろ調べたところ、non global zoneでsys-unconfigしてzoneがinstalledになった後で
/export/zones/my-zone/etc/sysidcfgに以下の1行があれば質問してくれるようになりました。
単にファイルがあるだけではだめでした。

system_locale=C

まじめに書くなら下記のようにします。
system_locale=C
terminal=vt100
network_interface=primary {
        hostname=ホスト名
        default_route=192.168.a.b ←exclusive networkの場合必要
        ip_address=192.168.a.c    ←exclusive networkの場合必要
        netmask=255.255.255.0     ←exclusive networkの場合必要
}
nfs4_domain=dynamic
timezone=Japan
root_password=なんたら

書き方についてはman sysidcfgを参照します。
タグ:sysidconfig LDom

Solaris nevada b110 [Solaris]

Solaris nevada b110 がリリースされました。
木曜日にはダウンロードしたのですが、都合により今日インストールしました。
Ultra20M2に入れたところ、

SunOS Release 5.11 Version snv_110 64-bit
Copyright 1983-2009 Sun Microsystems, Inc. All rights reserved.
Use is subject to license terms.

というメッセージがでてそのあと本来なら、
Configuring devices.
hostname: xxxx
Loading smf(5) service descriptions: 1/217
というように表示されるはずなのですが、何も表示されずに、リターンキーを叩いてもカーソルが下に行くだけでした。

対策ですが、
/kernel/drv/amd_iommu.conf に以下の一行を追加しました。
amd-iommu="no";

これで正常に起動できるようになりました。

AMD-Vマシンのように複数のIOMMUを搭載しているマシンで影響するようです。

http://bugs.opensolaris.org/view_bug.do?bug_id=6816741

にbug登録されていました。
b111でこの修正が入ってb112で再度IOMMUが有効にできるようです。

この広告は前回の更新から一定期間経過したブログに表示されています。更新すると自動で解除されます。

×

この広告は1年以上新しい記事の更新がないブログに表示されております。