From owner-FreeBSD-users-jp@jp.freebsd.org  Tue Sep 24 23:37:53 1996
Received: by mail.jp.freebsd.org (8.7.3+2.6Wbeta5/8.7.3) id XAA00443
	Tue, 24 Sep 1996 23:37:53 +0900 (JST)
Received: by mail.jp.freebsd.org (8.7.3+2.6Wbeta5/8.7.3) with SMTP id XAA00438
	for <freebsd-users-jp@jp.freebsd.org>; Tue, 24 Sep 1996 23:37:51 +0900 (JST)
Received: from apricot.bpe.es.osaka-u.ac.jp (localhost [127.0.0.1]) by apricot.bpe.es.osaka-u.ac.jp (8.6.12+2.4W/3.3Wb95012519) with ESMTP id XAA05615 for freebsd-users-jp@jp.freebsd.org; Tue, 24 Sep 1996 23:37:51 +0900
Message-Id: <199609241437.XAA05615@apricot.bpe.es.osaka-u.ac.jp>
To: FreeBSD-users-jp@jp.freebsd.org
In-Reply-To: Your message of "Mon, 23 Sep 1996 11:55:18 +0900"
References: <199609230255.LAA25662@murase08.phys.sci.osaka-u.ac.jp>
X-Mailer: Mew version 1.06 on Emacs 19.28.1, Mule 2.3
Mime-Version: 1.0
Content-Type: Text/Plain; charset=iso-2022-jp
Date: Tue, 24 Sep 1996 23:37:50 +0900
From: OKAZAKI Tetsurou <okazaki@bpe.es.osaka-u.ac.jp>
Reply-To: FreeBSD-users-jp@jp.freebsd.org
X-Distribute: distribute [version 2.1 (Alpha) patchlevel=19]
X-Sequence: FreeBSD-users-jp 4832
Subject: [FreeBSD-users-jp 4832] Re: Fresco96 
Errors-To: owner-FreeBSD-users-jp@jp.freebsd.org
Sender: owner-FreeBSD-users-jp@jp.freebsd.org

$B2,:j!w:eBg$G$9!%(B

> >  $B$=$l$+$i!$(BC++$B$G=q$+$l$?%i%$%V%i%j$r6&M-%i%$%V%i%j2=(B
> >  $B$9$k>l9g$O!$(Bgcc -fpic $B$G:n@.$7$?(B PIC$B%*%V%8%'%/%H72$H$H$b$K!$(B
> >  /usr/lib/c++rt0.o $B$r%j%s%/$9$kI,MW$,$"$j$^$9!%(B
> >  $B$3$l$rK:$l$k$H!$(Bdlopen() $B$GF0E*$K%j%s%/$7$?(B
> >  $B6&M-%i%$%V%i%j$N=i4|2=!&=*N;=hM}$,=PMh$J$/$J$C$F$O$^$j$^$9!%(B
> 
> >  $B$H$$$&Lu$G(B
> >      C++LIB=ld -Bshareable /usr/lib/c++rt0.o
> >  $B$H$9$k$+!$(Bgcc -shared $B$,;H$($k$h$&$K$7$F(B
> >      C++LIB=gcc -shared -Wl,/usr/lib/c++rt0.o
> >  $B$H$9$k$H$$$$$G$9!%(B
> 
> $B$H$$$&$o$1$G!"$5$7$"$?$C$FA0<T$NJ}K!$r$H$j$^$7$?!#(B
> $B860x$O$^$5$K$3$l$G$7$?!#6&M-%i%$%V%i%j$G(Bstatic$B@k8@$5$l$F$$$k(B
> $B%*%V%8%'%/%H$N%3%s%9%H%i%/%?$O$$$D8F$S=P$5$l$k$N$@$m$&$H;W$C$F$$$^$7$?(B
> $B$,!"$*0~MM$G5?Ld$,$R$H$D$O$l$^$7$?!#$H$3$m$G!"$3$&$$$C$?>pJs$O2?$r;2>H(B
> $B$9$k$H$o$+$k$N$G$7$g$&$+(B?

 $B0JA0!$(BSunOS4.1.3$B>e$G(B95$BG/(B5$B7n:"$N(BFresco snapshot$B$r(B
 $B%3%s%Q%$%k$7$FF0$+$=$&$H$7$?;~$K!$:#2s$N$H$[$\(B
 $BF1$8>u67$KAx6x$7$?$s$G$9$,!$$=$N:"$K(B fresco-ml $B$K(B
 $BN.$l$?>pJs$,<g$K;29M$K$J$C$F$$$^$9!%Ev;~$O!$(Bstatic
 object$B$N=i4|2==hM}$,I,MW$J%i%$%V%i%j$r(Bdlopen()$B$G(B
 $BFI$_9~$`$3$H$O!$(BBSD$B7O$N(BOS$B$G$O0lHLE*$J;v$G$O$J$+$C$?(B
 $BMM$G!$(B($B:G6a$O(BJAVA$B$,$"$k$N$G>u67$O0c$$$^$9$,(B)
 $B$=$l0J30$KLr$KN)$D>pJs$O8+$D$+$j$^$;$s$G$7$?!%(B

 $B>\$7$$$3$H$OCN$j$^$;$s$,!$(BFreeBSD 2.1.5R$B$G$N(B
 $B6&M-%i%$%V%i%j4X78$N;EAH$_$O(BSunOS4.1.3$B$N$b$N$,(B
 $BM3Mh$H$J$C$F$$$kMM$J$N$G!$$I$s$JBP:v$r$H$l$P$h$$$+$H(B
 $B$$$&$N$bBgBNA[A|$,$D$$$?$H$$$&$3$H$b$"$j$^$9!%(B
 $B$"$H$O%=!<%9$rFI$`$H$+(B(^^;

$B!t(B $B<B:]!$(B/usr/lib/c++rt0.o $B$r%j%s%/$9$k$H$$$&$N$O(B
$B!t(B /usr/src/gnu/lib/libg++/Makefile $B$d(B
$B!t(B /usr/share/mk/bsd.lib.mk $B$r;29M$K$7$^$7$?!%(B

 man dlopen $B$9$k$H!$(Bdlopen() $B$,6&M-%i%$%V%i%jCf$N(B
 _init() $B$r!$(Bdlclose() $B$,(B _fini() $B$r8F$S=P$9$H(B
 $B=q$$$F$"$j$^$9$,!$$3$N(B_init$B$H(B_fini$B$N<BBN$O(B
 /usr/lib/c++rt0.o $B$K$"$k$3$H$,(B 
 nm /usr/lib/c++rt0.o $B$H$9$k$H$o$+$j$^$9!%(B
 $B6&M-%i%$%V%i%jCf$N(Bstatic object$B$N%3%s%9%H%i%/%?$H(B
 $B%G%9%H%i%/%?$r8F$S=P$94X?t(B(?)$B$N%j%9%H$,(B
 __CTOR_LIST__$B$H(B__DTOR_LIST__$B$K$"$k$N$G!$(B_init$B$H(B_fini$B$O(B
 $B$=$l$>$l$r8!:w$7$F<!!9$H<B9T$7$F$$$k$N$@$H;W$$$^$9!%(B

 $B$=$l$+$i!$(BFreeBSD2.1.5R$B$G$O(B dlopen() $B$GF0E*$K%j%s%/$9$k(B
 $B6&M-%*%V%8%'%/%H$O@dBP%Q%9$+AjBP%Q%9$G%U%!%$%kL>$b(B
 $B4^$a$F@53N$K5-=R$9$kI,MW$,$"$C$F!$(Bldconfig$B$N@_Dj$d(B
 $B4D6-JQ?t(BLD_LIBRARY_PATH$BEy$r;H$C$F8!:w$7$?$j$H$+$O(B
 $B$7$J$$$N$,;EMM$_$?$$$G$9$M!%(B( $B$3$l$b(BSunOS4.1.3$B$HF1$8(B? )
 man page$B$K$b(B"simple programatic interface to 
 the services of the dynamic linker"$B$H$$$&5-=R$,$"$k$7!$(B
 /usr/src/gnu/lib/ld/rtld/rtld.c $B$rFI$s$G$b$=$s$J46$8$,$7$^$9!%(B

 $B$H$$$&Lu$G!$(Bdloadlib.cxx $B$NCf$G(Bdynamic loading service$B$r(B
 $BDs6!$9$k%/%i%9(B DLoadLib $B$,Dj5A$5$l$F$^$9$,!$$3$3$K$"$k(B

#if defined(__SVR4) || defined(__osf__) || defined(__linux)

 $B$H$$$&>r7oJ8$O!$$=$N(BOS$B$,(BELF$B$r:NMQ$7$F$$$k$+!)$H$$$&(B
 $B%A%'%C%/$r$7$F$$$k$H9M$($?J}$,NI$$$G$9!%(BELF$B4D6-$G$N(B
 dlopen() $B$H!$(Ba.out$B4D6-(B(?)$B$G$N(BSunOS4$BM3Mh$N(B dlopen() $B$O!$(B
 $B4X?t$N%$%s%?!<%U%'%$%9$,F1$8$G$b>e$NMM$K0c$&F0:n$r(B
 $B$9$k$_$?$$$J$N$G!$(BFreeBSD $B$N%A%'%C%/$O(B SunOS 4 $B$r<($9(B
 $B$3$A$i"-$NJ}$KF~$l$F!$(B

#if defined(__sun) && !defined(__SVR4) || defined(__FreeBSD__)

 $B@N(Bfresco-ml$B$KN.$l$?!$(BSunOS4 + gcc 2.6.3$BMQ$N(B
 dlopen() , dlsym() $B$K4X$9$k%+%P!<4X?t$N%=!<%9$r(B
 $BN.MQ$7$FBP=h(B(*)$B$7$F$$$^$9!%%j%s%/$9$Y$-%U%!%$%k$,(B
 $BA}$($F$7$^$&$N$G$"$^$j4qNo$J$d$j$+$?$G$O$J$$$G$9$,!$(B
 $B$H$j$"$($:(B DLoadLib::lib_prefix() $B$NCf$G%i%$%V%i%j$rCV$/(B
 $B@dBP%Q%9$r;XDj$7$?$j!$%i%$%V%i%j$NCV$$$F$"$k%G%#%l%/%H%j$K(B
 $B0\F0$7$F(B fdraw $B$r<B9T$7$?$j$7$J$/$F$b(B LD_LIBRARY_PATH $B$K(B
 $B@_Dj$9$l$PF0$/MM$K$J$j$^$7$?!%(B

(*) http://www.bpe.es.osaka-u.ac.jp/~okazaki/Fresco/patches/FreeBSD/
    $B$K(B _dl_lib.cxx $B$H(B dloadlib.cxx.diff $B$H$7$FCV$$$F$*$-$^$9!%(B

 DLoadLib::lib_extension()$B$NJ}$K4X$7$F$O!$(B
 $B%/%i%9(B DLoadLib $B$NDj5A$G$O85$NDL$j(B

const char* DLoadLib::lib_extension() { return ".so"; }

 $B$H$7$F$*$$$F!$(BFresco library $B$r%$%s%9%H!<%k$7$?(B
 $B%G%#%l%/%H%j$G(B ln -s libwidgets.so.1.0 libwidgets.so
 $BEy$H$7$F(Bsymbolic link$B$r$D$/$C$F$*$1$P$I$&$G$7$g$&$+!%(B

 ld $B$N%3%^%s%I%i%$%s$G(B -lfoo $B$H$7$F%j%s%/$9$k%i%$%V%i%j$O(B
 $B6&M-%i%$%V%i%j$N>l9g!$(Blibbase.so.1.0 $B$NMM$K(B ".so" $B$KB3$1$F(B
 major$BHV9f$H(Bminor$BHV9f$N$D$$$?%U%!%$%kL>$G$J$$$H8!:w$7$F(B
 $B$/$l$J$$MM$G$9$,!$(Bdlopen()$B$GFI$_9~$`J}$O>e$K=q$$$?$h$&$K(B
 $B;XDj$5$l$?%Q%9L>$G$=$N$^$^6&M-%*%V%8%'%/%H$K%"%/%;%9(B
 $B$9$kMM$J$N$G!$(Bmajor$BHV9f$b(Bminor$BHV9f$b$J$/$F$b$$$$$s$G$9$M!%(B

> >  $B$=$l$H!$(BFresco Library $B$r(B debug option $B$D$1$F(B
> >  $B%3%s%Q%$%k$9$k$H!$=PMh>e$,$C$?%i%$%V%i%j$NBg$-$5$,(B
> >  $BH>C<$8$c$J$/$J$k$N$G!$%a%b%j9=@.$K$h$C$F$O!$(B
> >  gdb $B$G%G%P%C%0$7$h$&$H$7$F$b%a%b%j$,B-$j$J$/$J$C$F(B
> >  $B$&$^$/F0$+$J$$62$l$,$"$j$^$9!%(B
> > 
> >  $B$=$s$JLu$G;d$O(B debug option $B$r30$7$F$$$^$9!%(B
> 
> $B$&$A$O%a%b%j$O(B32MB$B$G$9$,!"(BHello$B$HI=<($9$k$@$1$G$b$+$J$j6l$7$$MM$G$9!#(B

 $B$3$A$i$N4D6-$O0JA0!$(BRAM 20MB $B$H=q$-$^$7$?$,!$(B24MB $B$G$7$?!%(B
 
> $B$G!"$=$N7k2L$J$N$G$9$,!"Nc$($PIUB0$N(B examples $B$G%a%K%e!<$,=P$k$H$3$m$^(B
> $B$G$O$?$I$jCe$/$N$G$9$,!"$=$N8e2?$+$r<B9T$7$h$&$H$9$k$HMn$A$k$h$&$G$9!#(B

  examples$B$O!$;d$NJ}$G$bF1$88=>]$,5/$3$j$^$9!%(B
  $B$^$@860x$OJ,$+$C$F$$$^$;$s!%(Bdebug option $B$r(B
  $B30$7$F$$$k$N$GD4$Y$h$&$,$J$$(B(^^;)

---
$B2,:j(B $BE/O/(B   okazaki@bpe.es.osaka-u.ac.jp



