Apr 17, 2002

                  onlsun1, Solaris8 システムへのHORB202インストール
                         ---  インストールおよび設定#1
                ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                  (http://www-online.kek.jp/~inoue/onlsun1/
                                   HORB/Solaris8/install.txt)



                        高エネルギー加速器研究機構
                            素粒子原子核研究所
                         物理、オンライングループ
                                井上 栄二

 (1).   現状確認

        (A). HORB202を産総研からゲットした。


 (2).   ここでやるべきこと
	
	SPARC S-4/20, onlsun1のマシンにHORB202をインストールする。


 (3).   インストールキットの展開

   (3-1).  /usr/horb202ディレクトリの下にキットを展開する

onlsun1# pwd
/usr
onlsun1# ls
4lib/        demo/        java1.4.0/   news@        pub@         ucbinclude/
5bin@        dict@        kernel/      oasys/       sadm/        ucblib/
SUNWale/     dt/          kvm/         old/         sbin/        vmsys/
X@           games/       lib/         openwin/     share/       xpg4/
adm@         include/     local@       opt/         snadm/
apache/      java@        lost+found/  perl5/       spool@
aset/        java-old@    mail@        platform/    src@
bin/         java1.1/     man@         preserve@    tmp@
ccs/         java1.2/     net/         proc/        ucb/
onlsun1# 

onlsun1# rcp -pr onlsun4:/export/home/onlsun4/inoue/horb202 .
onlsun1# chown -R root:bin horb202
onlsun1# ls -l
		:
drwxr-xr-x   2 root     bin        10752  4月 17日  15:35 horb202/
		:
onlsun1#


   (3-2).  環境変数を設定する

onlsun1[43]% vi ~/.cshrc
		:
set path=($path /usr/horb202)
		:
setenv LD_LIBRARY_PATH /usr/horb202:/export/home/onlsun1/inoue/HORB/horb202:/usr
/java1.4.0/j2sdk1.4.0/jre/lib/sparc:/usr/java1.4.0/j2sdk1.4.0/jre/lib:/usr/java1
.4.0/j2sdk1.4.0/lib:/export/home/onlsun1/inoue/HORB/horb21b2:/net/fs/public/sola
ris_licensed/forte6/sparc/SUNWspro/lib:/kek/compilers/ws5.0/SUNWspro/lib:/kek/co
mpilers/volume5/SUNWspro/lib:/kek/compilers/volume4/SUNWspro/lib:/kek/SUNWspro/l
ib:/opt/sfw/lib:/home3/NSUG93/X11R5/lib
		:
setenv LD_RUN_PATH /usr/horb202:/export/home/onlsun1/inoue/HORB/horb202:/usr/jav
a1.4.0/j2sdk1.4.0/jre/lib/sparc:/usr/java1.4.0/j2sdk1.4.0/jre/lib:/usr/java1.4.0
/j2sdk1.4.0/lib:/export/home/onlsun1/inoue/HORB/horb21b2:/net/fs/public/solaris_
licensed/forte6/sparc/SUNWspro/lib:/kek/compilers/ws5.0/SUNWspro/lib:/opt/gtk/li
b:/home2/opt/gimp/lib:/opt/sfw/lib:/home3/NSUG93/X11R5/lib:/usr/X11R6.1/lib:/usr
/local/lib
		:
onlsun1[45]%
onlsun1[45]% source ~/.cshrc
onlsun1[46]% env
HOME=/export/home/onlsun1/inoue
PATH=/opt/NSCPnav/bin:/usr/horb202:/usr/java1.4.0/j2sdk1.4.0/bin:/usr/java1.4.0/
j2sdk1.4.0/jre/bin:/export/home/onlsun1/inoue/HORB/horb21b2/bin:/home2/opt/gimp/
bin:/export/home/onlsun1/inoue/FastEther/X1059A/TTCP/ttcp:/opt/Acrobat4/bin:/opt
/sfw/bin:/usr/local/bin:/home3/opt_ext/LBLxfig/bin:/net/fs/public/solaris_licens
ed/forte6/sparc/SUNWspro/bin:/kek/compilers/ws5.0/SUNWspro/bin:/kek/compilers/vo
lume5/SUNWspro/bin:/kek/compilers/volume4/SUNWspro/bin:/kek/SUNWspro/bin:/usr/sb
in:/usr/ccs/bin:/export/home/onlsun1/inoue/bin:/home3/NSUG93/X11R5/bin:/usr/dt/b
in:/bin:/usr/bin:/usr/ucb:/etc:.:/usr/openwin/bin:/kek/local/bin:/kek/cern/97a/b
in:/home1/cern/95a/bin
LOGNAME=inoue
HZ=100
TERM=vt100
TZ=Japan
SHELL=/bin/csh
MAIL=/var/mail/inoue
LANG=ja
_INIT_NET_STRATEGY=none
_INIT_PREV_LEVEL=S
_INIT_RUN_LEVEL=3
_INIT_RUN_NPREV=0
_INIT_UTS_ISA=sparc
_INIT_UTS_MACHINE=sun4m
_INIT_UTS_NODENAME=onlsun1
_INIT_UTS_PLATFORM=SUNW,SPARCstation-20
_INIT_UTS_RELEASE=5.8
_INIT_UTS_SYSNAME=SunOS
_INIT_UTS_VERSION=Generic_108528-01
PWD=/export/home/onlsun1/inoue
USER=inoue
LD_LIBRARY_PATH=/usr/horb202:/export/home/onlsun1/inoue/HORB/horb202:/usr/java1.
4.0/j2sdk1.4.0/jre/lib/sparc:/usr/java1.4.0/j2sdk1.4.0/jre/lib:/usr/java1.4.0/j2
sdk1.4.0/lib:/export/home/onlsun1/inoue/HORB/horb21b2:/net/fs/public/solaris_lic
ensed/forte6/sparc/SUNWspro/lib:/kek/compilers/ws5.0/SUNWspro/lib:/kek/compilers
/volume5/SUNWspro/lib:/kek/compilers/volume4/SUNWspro/lib:/kek/SUNWspro/lib:/opt
/sfw/lib:/home3/NSUG93/X11R5/lib
LD_RUN_PATH=/usr/horb202:/export/home/onlsun1/inoue/HORB/horb202:/usr/java1.4.0/
j2sdk1.4.0/jre/lib/sparc:/usr/java1.4.0/j2sdk1.4.0/jre/lib:/usr/java1.4.0/j2sdk1
.4.0/lib:/export/home/onlsun1/inoue/HORB/horb21b2:/net/fs/public/solaris_license
d/forte6/sparc/SUNWspro/lib:/kek/compilers/ws5.0/SUNWspro/lib:/opt/gtk/lib:/home
2/opt/gimp/lib:/opt/sfw/lib:/home3/NSUG93/X11R5/lib:/usr/X11R6.1/lib:/usr/local/
lib
MANPATH=/net/fs/public/solaris_licensed/forte6/sparc/SUNWspro/man:/kek/compilers
/ws5.0/SUNWspro/man/:/kek/compilers/volume5/SUNWspro/man:/usr/openwin/man:/usr/m
an:/usr/dt/man:/usr/local/man:/kek/compilers/volume4/SUNWspro/man:/kek/SUNWspro/
man:/opt/sfw/man
NNTPSERVER=keknews
LESS=-c -h0
onlsun1[47]%
onlsun1[47]% setenv .:/usr/horb202
onlsun1[49]% source ~/.cshrc
onlsun1[50]% which horb
/export/home/onlsun1/inoue/HORB/horb21b2/bin/horb
onlsun1[51]% ls -l /usr/horb202/horb
-rw-r--r--   1 root     bin           40  4月 17日  15:34 /usr/horb202/horb
onlsun1[52]% ls -l /usr/horb202/*exe
-rw-r--r--   1 root     bin        18944  4月 17日  15:35 /usr/horb202/horb.exe
-rw-r--r--   1 root     bin        18944  4月 17日  15:35 /usr/horb202/horbc.exe
-rw-r--r--   1 root     bin        27136  4月 17日  15:35 /usr/horb202/horbstat.
exe
onlsun1[53]%

	horb, horbc, horbstat に実行可能のパーミションを付ける。

onlsun1# source /.cshrc
onlsun1# chmod +x /usr/horb202/horb
onlsun1# chmod +x /usr/horb202/horbc
onlsun1# chmod +x /usr/horb202/horbstat
onlsun1# ls -l /usr/horb202/horb /usr/horb202/horbc /usr/horb202/horbstat
-rwxr-xr-x   1 root     bin           40  4月 17日  15:34 /usr/horb202/horb*
-rwxr-xr-x   1 root     bin           37  4月 17日  15:34 /usr/horb202/horbc*
-rwxr-xr-x   1 root     bin           49  4月 17日  15:35 /usr/horb202/horbstat*
onlsun1#

onlsun1[54]% which horb
/usr/horb202/horb
onlsun1[55]%

	horb が使用できるかどうか確認する。

onlsun1[62]% pwd
/export/home/onlsun1/inoue
onlsun1[63]% java -version
java version "1.4.0"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.4.0-b92)
Java HotSpot(TM) Client VM (build 1.4.0-b92, mixed mode)
onlsun1[64]% horb -version
Exception in thread "main" java.lang.NoClassDefFoundError: horb/orb/HORBServer
onlsun1[65]%

	CLASSPATH の設定が正しくないようだ。

onlsun1[66]% printenv CALSSPATH
onlsun1[67]% setenv CLASSPATH .:/usr/horb202
onlsun1[68]% printenv CLASSPATH
.:/usr/horb202
onlsun1[69]% horb -version
Exception in thread "main" java.lang.NoClassDefFoundError: horb/orb/HORBServer
onlsun1[70]%

onlsun1[70]% cat /usr/horb202/horb
#!/bin/sh
java horb.orb.HORBServer $*
onlsun1[71]%

	ディレクトリの設定に不備がある。
	/usr/horb202/horb はシェルスクリプトになっていて、

	  horb -+--
	          |
	          +--orb -+--
	                  |
	                  +-- HORBServer.class
	
	のディレクトリ構造を期待している。 ディレクトリをこの構成にする。

onlsun1# pwd
/usr
onlsun1# ls
4lib/        demo/        java1.2/     net/         proc/        ucb/
5bin@        dict@        java1.4.0/   news@        pub@         ucbinclude/
SUNWale/     dt/          kernel/      oasys/       sadm/        ucblib/
X@           games/       kvm/         old/         sbin/        vmsys/
adm@         horb202/     lib/         openwin/     share/       xpg4/
apache/      include/     local@       opt/         snadm/
aset/        java@        lost+found/  perl5/       spool@
bin/         java-old@    mail@        platform/    src@
ccs/         java1.1/     man@         preserve@    tmp@
onlsun1# mkdir horb
onlsun1# chown root:bin horb
onlsun1# cd horb
onlsun1# ls -l
合計 0
onlsun1# ln -s ../horb202 orb
onlsun1# cd horb
onlsun1# cd ..
onlsun1# ls -l horb/orb/HORBServer.class
-rw-r--r--   1 root     bin        11646  4月 17日  15:35 horb/orb/HORBServer.cl
ass
onlsun1#

onlsun1[75]% pwd
/export/home/onlsun1/inoue
onlsun1[76]% ln -s /usr/horb horb
onlsun1[77]% horb -version
Exception in thread "main" java.lang.NoClassDefFoundError: horb/orb/transport/HO
RBObjectOutputStream
        at horb.orb.HORB.(HORB.java:138)
        at horb.orb.ServerStatus.(ServerStatus.java)
        at horb.orb.Config.(Config.java:54)
        at horb.orb.HORBServer.main(HORBServer.java:119)
onlsun1[78]%

	horb の実行は、

	  horb -+--
		|
	        +-- orb -+--
	                 |
	                 +-- transport -+--
	                                |
	                                +-- HORBObjectOutputStream.class

	
	のディレクトリ構造を期待している。 ディレクトリをこの構成にする。

onlsun1# pwd
/usr/horb202
onlsun1# ls -l t*
-rw-r--r--   1 root     bin        36619  4月 17日  15:34 toplogo.jpg
onlsun1# mkdir transport
onlsun1# chown root:bin transport
onlsun1# cd transport
onlsun1# ln -s ../HORBObjectOutputStream.class HORBObjectOutputStream.class
onlsun1#

onlsun1[79]% pwd
/export/home/onlsun1/inoue
onlsun1[80]% horb -version
Exception in thread "main" java.lang.NoClassDefFoundError: horb/orb/transport/HO
RBObjectInputStream
        at horb.orb.HORB.(HORB.java:138)
        at horb.orb.ServerStatus.(ServerStatus.java)
        at horb.orb.Config.(Config.java:54)
        at horb.orb.HORBServer.main(HORBServer.java:119)
onlsun1[81]%

	transportディレクトリには、HORBObjectInputStream.classファイルが存在
	することも期待している。 修正する。

onlsun1# pwd
/usr/horb202/transport
onlsun1# ln -s ../HORBObjectInputStream.class HORBObjectInputStream.class
onlsun1# ls -l
合計 4
lrwxrwxrwx   1 root     other         30  4月 17日  16:34 HORBObjectInputStream.
class -> ../HORBObjectInputStream.class
lrwxrwxrwx   1 root     other         31  4月 17日  16:30 HORBObjectOutputStream
.class -> ../HORBObjectOutputStream.class
onlsun1#

onlsun1[82]% pwd
/export/home/onlsun1/inoue
onlsun1[83]% horb -version
HORB ORB Version 2.0.2
 Copyright 1995-2000 HIRANO Satoshi
 Copyright 1995-2000 Electrotechnical Laboratory and contributors
 Copyright 1999-2000 NJK Corporation
onlsun1[84]%

	ok.  horb は起動できた。 
	horbc を起動してみる。

onlsun1[128]% pwd
/export/home/onlsun1/inoue
onlsun1[129]% horbc
Exception in thread "main" java.lang.NoClassDefFoundError: horb/horbc/horbc
onlsun1[130]% which horbc
/usr/horb202/horbc
onlsun1[131]% cat /usr/horb202/horbc
#!/bin/sh
java horb.horbc.horbc $*
onlsun1[132]%

	NG.  horbc は、

	  horb -+--
	          |
	          +--horbc -+--
	                    |
	                    +-- horbc.class

	のディレクトリ構造を期待している。 ディレクトリをこの構成にする。

onlsun1# pwd
/usr/horb
onlsun1# ln -s ../horb202/ horbc
onlsun1# ls -l
合計 4
lrwxrwxrwx   1 root     other         10  4月 17日  17:29 horbc -> ../horb202/
lrwxrwxrwx   1 root     other         10  4月 17日  16:18 orb -> ../horb202/
onlsun1# ls -l /usr/horb/horbc/horbc.class
-rw-r--r--   1 root     bin        10165  4月 17日  15:34 /usr/horb/horbc/horbc.
class
onlsun1#

onlsun1[134]% pwd
/export/home/onlsun1/inoue
onlsun1[135]% horbc
Exception in thread "main" java.lang.NoClassDefFoundError: horb/horbc/Proxy (wro
ng name: horb/orb/Proxy)
        at java.lang.ClassLoader.defineClass0(Native Method)
        at java.lang.ClassLoader.defineClass(ClassLoader.java:509)
        at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:12
3)
        at java.net.URLClassLoader.defineClass(URLClassLoader.java:246)
        at java.net.URLClassLoader.access$100(URLClassLoader.java:54)
        at java.net.URLClassLoader$1.run(URLClassLoader.java:193)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(URLClassLoader.java:186)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:265)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:262)
        at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:322)
onlsun1[136]%

	horbc は、horb/horbc/Proxy.classファイルを期待しており、
	horb/orb/Proxy.classファイルは期待してしていない。
	修正する。

onlsun1# pwd
/usr/horb
onlsun1# ls -l
合計 4
lrwxrwxrwx   1 root     other         10  4月 17日  17:29 horbc -> ../horb202/
lrwxrwxrwx   1 root     other         10  4月 17日  16:18 orb -> ../horb202/
onlsun1# rm horbc
onlsun1# mkdir horbc
onlsun1# cp orb/Proxy.class horbc
onlsun1# mv orb/Proxy.class orb/Proxy.class-inoue
onlsun1# ls -l
合計 4
drwxr-xr-x   2 root     other        512  4月 17日  22:26 horbc/
lrwxrwxrwx   1 root     other         10  4月 17日  16:18 orb -> ../horb202/
onlsun1# ls -l horbc
合計 2
-rw-r--r--   1 root     other        826  4月 17日  22:26 Proxy.class
onlsun1# cp orb/horbc horbc
onlsun1# ls -l horbc
合計 4
-rw-r--r--   1 root     other        826  4月 17日  22:26 Proxy.class
-rwxr-xr-x   1 root     other         37  4月 17日  22:30 horbc*
onlsun1# chown root:bin horbc/*
onlsun1# ls -l horbc
合計 4
-rw-r--r--   1 root     bin          826  4月 17日  22:26 Proxy.class
-rwxr-xr-x   1 root     bin           37  4月 17日  22:30 horbc*
onlsun1#

onlsun1[77]% pwd
/export/home/onlsun1/inoue
onlsun1[78]% horbc
Exception in thread "main" java.lang.NoClassDefFoundError: horb/horbc/horbc
onlsun1[79]%

onlsun1# cp orb/horbc.class horbc
onlsun1# chown root:bin horbc/horbc.class
onlsun1#




---xxxx

続いて "Hello World" の例題を実行してみる。


---
 (6).  セクション
   (6-1).  サブセクション
     (6-1-1).  サブサブセクション