<HTML ><HEAD ><TITLE >$B6&M-%i%$%V%i%j(B</TITLE ><META NAME="GENERATOR" CONTENT="Modular DocBook HTML Stylesheet Version 1.54"><LINK REL="HOME" TITLE="Program Library HOWTO" HREF="index.html"><LINK REL="PREVIOUS" TITLE="$B@EE*%i%$%V%i%j(B" HREF="static-libraries.html"><LINK REL="NEXT" TITLE="$BF0E*$K%m!<%I$5$l$k(B (Dynamically Loaded; DL) $B%i%$%V%i%j(B" HREF="dl-libraries.html"></HEAD ><BODY CLASS="SECT1" BGCOLOR="#FFFFFF" TEXT="#000000" ><DIV CLASS="NAVHEADER" ><TABLE WIDTH="100%" BORDER="0" CELLPADDING="0" CELLSPACING="0" ><TR ><TH COLSPAN="3" ALIGN="center" >Program Library HOWTO</TH ></TR ><TR ><TD WIDTH="10%" ALIGN="left" VALIGN="bottom" ><A HREF="static-libraries.html" >Prev</A ></TD ><TD WIDTH="80%" ALIGN="center" VALIGN="bottom" ></TD ><TD WIDTH="10%" ALIGN="right" VALIGN="bottom" ><A HREF="dl-libraries.html" >Next</A ></TD ></TR ></TABLE ><HR ALIGN="LEFT" WIDTH="100%"></DIV ><DIV CLASS="SECT1" ><H1 CLASS="SECT1" ><A NAME="SHARED-LIBRARIES" >3. $B6&M-%i%$%V%i%j(B</A ></H1 ><P >$B6&M-%i%$%V%i%j$O!"%W%m%0%i%`$,5/F0$9$k$H$-$K%m!<%I$5$l$k%i%$%V%i%j$G$9!#(B $B6&M-%i%$%V%i%j$,E,@Z$K%$%s%9%H!<%k$5$l$k$H!"(B $B$=$N8e$K5/F0$5$l$kA4$F$N%W%m%0%i%`$O!"(B $B<+F0E*$K$=$N?7$7$$6&M-%i%$%V%i%j$r;H$&$3$H$K$J$j$^$9!#(B $B<B:]$K$O!"$3$l0J>e$K$O$k$+$K=@Fp$G@vN}$5$l$F$$$^$9!#$H$$$&$N$O!"(B Linux $B$K$h$k%"%W%m!<%A$O<!$N$3$H$r2DG=$K$9$k$+$i$G$9!=!=(B <P ></P ><UL ><LI ><P >$B%i%$%V%i%j$r99?7$7$J$,$i$b!"(B $B$=$N%i%$%V%i%j$N8E$/$F8eJ}8_49@-$N$J$$%P!<%8%g%s$r;H$$$?$$$H$$$&%W%m%0%i%`$r!"(B $B0MA3$H$7$F%5%]!<%H$G$-$k(B</P ></LI ><LI ><P >$BFCJL$J%W%m%0%i%`$r<B9T$9$k$H$-!"FCDj$N%i%$%V%i%j!"(B $B$b$7$/$O%i%$%V%i%jFb$NFCDj$N4X?t$G$5$(%*!<%P!<%i%$%I$G$-$k(B</P ></LI ><LI ><P >$B4{$KB8:_$7$F$$$k%i%$%V%i%j$r;HMQ$7$F%W%m%0%i%`$,(B $BF0$$$F$$$k4V$K$b!"$3$NA4$F$r$*$3$J$&$3$H$,$G$-$k(B</P ></LI ></UL ></P ><DIV CLASS="SECT2" ><H2 CLASS="SECT2" ><A NAME="AEN55" >3.1. $BLsB+$4$H(B</A ></H2 ><P >$B$3$l$i$NK>$^$7$$FC@-$9$Y$F$r6&M-%i%$%V%i%j$,%5%]!<%H$9$k$?$a$K$O!"(B $BB?$/$N47=,$H;X?K$K=>$o$J$1$l$P$J$j$^$;$s!#%i%$%V%i%j$NL>A0!"(B $BFC$K(B ``soname'' $B$H(B ``real name'' $B$N0c$$$K$D$$$F(B ($B5Z$S$=$l$i$,$I$N$h$&$KAj8_:nMQ$9$k$+$K$D$$$F(B) $BM}2r$9$kI,MW$,$"$j$^$9!#(B $B$^$?!"$=$l$i$,%U%!%$%k%7%9%F%`Fb$N$I$N>l=j$KCV$+$l$k$Y$-$G$"$k$+$K$D$$$F$b!"(B $BM}2r$9$kI,MW$,$"$j$^$9!#(B</P ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="AEN58" >3.1.1. $B6&M-%i%$%V%i%jL>(B</A ></H3 ><P >$BA4$F$N6&M-%i%$%V%i%j$O!"(B``soname'' $B$H8F$P$l$kFCJL$JL>A0$r;}$C$F$$$^$9!#(B soname $B$O(B ``lib'' $B$H$$$&%W%j%U%#%C%/%9!"%i%$%V%i%j$NL>A0!"(B``.so'' $B$H$$$&6g$r;}$A!"%T%j%*%I$H!"(B $B%$%s%?!<%U%'!<%9$,JQ99$5$l$k$H$-$K$OI,$:A}$d$5$l$k%P!<%8%g%sHV9f$,8e$KB3$-$^$9(B ($BFCJL$JNc30$H$7$F!":GDc%l%Y%k$N(B C $B%i%$%V%i%j$O(B ``lib'' $B$G$O;O$^$j$^$;$s(B) $B!#(B $B40A4$K5-=R$5$l$?(B soname $B$O!"(B $B$=$N%i%$%V%i%j<+?H$,4^$^$l$k%G%#%l%/%H%j$r%W%j%U%#%C%/%9$H$7$F4^$s$G$$$^$9!#(B $B<B:]$N%7%9%F%`$G$O!"40A4$K5-=R$5$l$?(B soname $B$O!"6&M-%i%$%V%i%j$N(B ``real name'' $B$X$NC1$J$k%7%s%\%j%C%/%j%s%/$K$J$C$F$$$^$9!#(B</P ><P >$BA4$F$N6&M-%i%$%V%i%j$O!"(B``real name'' $B!=!=<B:]$N%i%$%V%i%j%3!<%I$r4^$`%U%!%$%kL>!=!=$b;}$C$F$$$^$9!#(Breal name $B$O!"(B soname $B$K!"%T%j%*%I!"%^%$%J!<HV9f!"$b$&0l$D%T%j%*%I!"%j%j!<%9HV9f!"(B $B$r2C$($?$b$N$G$9!#(B $B:G8e$N%T%j%*%I$H%j%j!<%9HV9f$O$J$/$F$b$+$^$$$^$;$s!#(B $B%^%$%J!<HV9f$H%j%j!<%9HV9f$O!"(B $B$I$N%P!<%8%g%s$N%i%$%V%i%j$,%$%s%9%H!<%k$5$l$F$$$k$+$r@53N$K<($7!"(B $B@_Dj4IM}$N=u$1$H$J$j$^$9!#$3$l$i$NHV9f$O!"(B $B!=!=$=$N$h$&$K$9$l$PJ*;v$r$h$jC1=c2=$G$-$k$K$b$+$+$o$i$:!=!=(B $B%I%-%e%a%s%H$NCf$G%i%$%V%i%j$r@bL@$9$k$N$KMQ$$$i$l$F$$$kHV9f(B $B$HF1$8$G$O$J$$$+$b$7$l$J$$!"$H$$$&$3$H$KCm0U$7$F$/$@$5$$!#(B</P ><P >$B2C$($F!"%i%$%V%i%jMW5a;~$K%3%s%Q%$%i$,;HMQ$9$kL>A0$H$$$&$b$N$b$"$j$^$9(B (``linker name'' $B$H8F$\$&$H;W$$$^$9(B) $B!#$=$l$O!"C1$K!"(B $B0l@Z$N%P!<%8%g%sHV9f$r<h$j=|$$$?(B soname $B$G$9!#(B</P ><P >$B6&M-%i%$%V%i%j$r4IM}$9$k80$H$J$k$N$O!"$3$l$i$NL>A0$N;H$$J,$1$G$9!#(B $BI,MW$H$J$k6&M-%i%$%V%i%j$N0lMwI=$rFbIt$K:n@.$9$k$H$-$K$O!"(B $B%W%m%0%i%`$O!"I,MW$H$J$k(B soname $B$r%j%9%H%"%C%W$9$k$N$_$H$7$^$9!#(B $B5U$K!"6&M-%i%$%V%i%j$r:n@.$9$k$H$-$K$O!"(B($B$h$j>\:Y$J%P!<%8%g%s>pJs$r;}$D(B) $BFCDj$N%U%!%$%kL>$G%i%$%V%i%j$r:n@.$9$k$N$_$H$7$^$9!#(B $B?7$7$$%P!<%8%g%s$N%i%$%V%i%j$r%$%s%9%H!<%k$9$k$H$-$K$O!"(B $BFs!";0$NFCJL$J%G%#%l%/%H%j$N$&$A$N0l$D$K$=$l$r%$%s%9%H!<%k$7!"$=$l$+$i(B ldconfig(8) $B%W%m%0%i%`$r<B9T$7$^$9!#(Bldconfig $B$O!"(B $B4{$KB8:_$9$k%U%!%$%k$rD4$Y!"(Breal name $B$X$N%7%s%\%j%C%/%j%s%/$H$7$F!"(B soname $B$r:n@.$7$^$9!#F1MM$K$7$F!"%-%c%C%7%e%U%!%$%k(B /etc/ld.so.cache $B$b@_Dj$7$^$9(B ($B$9$0$K@bL@$7$^$9(B)$B!#(B</P ><P >ldconfig $B$O(B linker name $B$r@_Dj$7$^$;$s!#E57?E*$K$O!"(B $B$3$N@_Dj$O%i%$%V%i%j%$%s%9%H!<%k;~$K$*$3$J$o$l!"(B``$B:G?7$N(B'' soname $B$b$7$/$O:G?7$N(B realname $B$X$NC1$J$k%7%s%\%j%C%/%j%s%/$H$7$F!"(Blinker name $B$,:n@.$5$l$^$9!#$[$H$s$I$N>l9g$K$*$$$F!"%i%$%V%i%j$r99?7$7$?$i!"(B $B%j%s%/;~$K$=$l$r<+F0E*$K;HMQ$7$?$$$H;W$&$G$7$g$&$+$i!"(Bsoname $B$X$N%7%s%\%j%C%/%j%s%/$H$7$F(B linker name $B$r:n$C$F$*$/$3$H$r(B $B$*4+$a$7$^$9!#;d$O!"$J$<(B ldconfig $B$O<+F0E*$K(B linker name $B$r@_Dj$7$J$$$N$+$r!"(BH. J. Lu $B$K?R$M$^$7$?!#H`$N@bL@$O!"4pK\E*$K$O!"(B $B!V%i%$%V%i%j$N:G?7%P!<%8%g%s$r;H$C$F%3!<%I$r<B9T$7$?$$(B $B$H;W$o$l$k$+$bCN$l$^$;$s$,!"$=$&$G$O$J$/!"(B($B$*$=$i$/8_49@-$N$J$$(B) $B8E$$%i%$%V%i%j$K%j%s%/$9$k(B<EM >$B3+H/(B</EM > $B$rK>$s$G$$$k$H$$$&$3$H$b$"$j$&$k$N$G$9!W!"(B $B$H$$$&$b$N$G$7$?!#$=$N$?$a!"(Bldconfig $B$O!"(B $B$"$J$?$,$I$N%i%$%V%i%j$K%W%m%0%i%`$r%j%s%/$5$;$?$$$N$+(B $B$H$$$&$3$H$K$D$$$F$O!"2?$N2>Dj$b$*$3$J$$$^$;$s!#$G$9$N$G!"(B $B%j%s%+$,%i%$%V%i%j$K;H$&$b$N$r99?7$9$k$?$a$K$O!"(B $B%$%s%9%H!<%i$,%7%s%\%j%C%/%j%s%/$rL@3N$KJQ99$7$J$1$l$P$J$i$J$$$N$G$9!#(B</P ><P >$BNc$($P!"(B<TT CLASS="FILENAME" >/usr/lib/libreadline.so.3</TT > $B$O40A4$K5-=R$5$l$?(B soname $B$G$"$j!"(Bldconfig $B$,(B <TT CLASS="FILENAME" >/usr/lib/libreadline.so.3.0</TT > $B$H$$$&$h$&$J2?$i$+$N(B real name $B$KBP$9$k%7%s%\%j%C%/%j%s%/$H$7$F@_Dj$9$k$b$N$G$9!#(B <TT CLASS="FILENAME" >/usr/lib/libreadline.so</TT > $B$H$$$&(B linker name $B$bB8:_$9$k$Y$-$G!"$=$l$O!"(B <TT CLASS="FILENAME" >/usr/lib/libreadline.so.3</TT > $B$r;2>H$9$k%7%s%\%j%C%/%j%s%/$K$J$k$3$H$G$7$g$&!#(B</P ></DIV ><DIV CLASS="SECT3" ><H3 CLASS="SECT3" ><A NAME="AEN71" >3.1.2. $B%U%!%$%k%7%9%F%`G[CV(B</A ></H3 ><P >$B6&M-%i%$%V%i%j$O%U%!%$%k%7%9%F%`$N$I$3$+$KG[CV$5$l$J$1$l$P$J$j$^$;$s!#(B $B$[$H$s$I$N%*!<%W%s%=!<%9%=%U%H%&%'%"$O!"(BGNU $B5,=`$K=>$&798~$,$"$j$^$9(B $B!=!=>\:Y$O(B <A HREF="info:standards#Directory_Variables" TARGET="_top" >info:standards#Directory_Variables</A > $B$K$"$k(B info $B%U%!%$%k%I%-%e%a%s%H$r8+$F$/$@$5$$!#(B GNU $B5,=`$O!"%=!<%9%3!<%I$rG[I[$9$k$H$-!"%G%U%)%k%H$G$O(B $BA4$F$N%i%$%V%i%j$r(B /usr/local/lib $B$K%$%s%9%H!<%k$9$k$3$H$r?d>)$7$F$$$^$9(B ($BA4$F$N%3%^%s%I$,(B /usr/local/bin $B$KF~$k$Y$-$@$H$b4+$a$F$$$^$9(B) $B!#(B $B$^$?!"$3$l$i$N%G%U%)%k%H$r%*!<%P!<%i%$%I$7$?$j!"(B $B%$%s%9%H!<%k%k!<%A%s$r8F$S=P$7$?$j$9$k$?$a$N47=,$r$O$C$-$j=R$Y$F$$$^$9!#(B</P ><P >$B%U%!%$%k%7%9%F%`3,AX5,=`(B (Filesystem Hierarchy Starndard; FHS) $B$O!"(B $B%G%#%9%H%j%S%e!<%7%g%s$K$*$$$F2?$,$I$3$K%$%s%9%H!<%k$5$l$k$Y$-$+$rO@$8$F$$$^$9(B (<A HREF="http://www.pathname.com/fhs" TARGET="_top" >http://www.pathname.com/fhs</A > $B$r8+$F$/$@$5$$(B) $B!#(B FHS $B$K=>$($P!"$[$H$s$I$N%i%$%V%i%j$O(B /usr/lib $B$K%$%s%9%H!<%k$5$l$k$Y$-$G$9$,!"5/F0$KI,MW$H$5$l$k%i%$%V%i%j$O(B /lib $B$K!"(B $B$=$7$F%7%9%F%`$N0lIt$K$J$C$F$O$$$J$$%i%$%V%i%j$O(B /usr/local/lib $B$K%$%s%9%H!<%k$5$l$k$Y$-$G$9!#(B</P ><P >$B<B:]$K$O!"$3$l$iFs$D$NJ8=q4V$KL7=b$O$"$j$^$;$s!#(BGNU $B5,=`$O!"(B $B%=!<%9%3!<%I3+H/<T$N$?$a$N%G%U%)%k%H$r?d>)$7$F$$$k$N$G$"$j!"(B $B0lJ}$G(B FHS $B$O!"%G%#%9%H%j%S%e!<%?(B ($BDL>o!"%7%9%F%`%Q%C%1!<%84IM}%7%9%F%`$r(B $BDL$7$F%=!<%9%3!<%I$N%G%U%)%k%H$rA*BrE*$K%*!<%P!<%i%$%I$9$k?M!9(B) $B$N$?$a$N%G%U%)%k%H$r?d>)$7$F$$$k$N$G$9!#(B $B<B:]$K$3$l$O$&$^$/5!G=$7$F$$$^$9!#(B $B$"$J$?$,%@%&%s%m!<%I$7$?(B ``$B:G?7$N(B'' ($B$*$=$i$/%P%0$@$i$1$N(B!) $B%=!<%9%3!<%I$O!"<+F0E*$K<+J,<+?H$r(B ``$B%m!<%+%k$J(B'' $B%G%#%l%/%H%j(B (<TT CLASS="FILENAME" >/usr/local/</TT >) $B$K%$%s%9%H!<%k$7$^$9!#(B $B$=$7$F%3!<%I$,@.=O$7$F$-$?$i!"%Q%C%1!<%84IM}%D!<%k$O!"(B $B%G%#%9%H%j%S%e!<%7%g%sMQ$NI8=`E*$J0LCV$K%3!<%I$rG[CV$9$k$?$a$K(B $B%G%U%)%k%H$rC1$K%*!<%P!<%i%$%I$G$-$^$9!#(B $B$"$J$?$N%i%$%V%i%j$,!"%i%$%V%i%j7PM3$G$7$+8F$S=P$5$l$k$3$H$N$J$$(B $B%W%m%0%i%`$r8F$S=P$7$F$$$k$N$J$i$P!"$=$l$i$N%W%m%0%i%`$r(B /usr/local/libexec ($B$"$k%G%#%9%H%j%S%e!<%7%g%s$G$O(B /usr/libexec $B$K$J$j$^$9(B) $B$KG[CV$9$k$Y$-$G$9!#(B $B0l$D;vBV$rJ#;($K$7$F$$$k$3$H$,$"$C$F!"$=$l$O!"(B Red Hat $B$+$iGI@8$7$?%7%9%F%`$,%G%U%)%k%H$G$O(B /usr/local/lib $B$r%i%$%V%i%j8!:wBP>]$K4^$a$F$$$J$$$H$$$&$3$H$G$9!#(B /etc/ld.so.conf $B$K4X$9$k2<5-$N5DO@$r8+$F$/$@$5$$!#(B $BB>$NI8=`E*$J%i%$%V%i%j%m%1!<%7%g%s$H$7$F$O!"(BX Window System $BMQ$N(B /usr/X11R6/lib $B$,4^$^$l$^$9!#(B /lib/security $B$O(B PAM $B%b%8%e!<%kMQ$K;H$o$l$^$9$,!"(B $B$=$l$i$ODL>o(B DL $B%i%$%V%i%j(B ($B$3$l$b$"$H$G@bL@$7$^$9(B) $B$H$7$F%m!<%I$5$l$k!"$H$$$&$3$H$KCm0U$7$F$/$@$5$$!#(B</P ></DIV ></DIV ><DIV CLASS="SECT2" ><H2 CLASS="SECT2" ><A NAME="AEN79" >3.2. $B%i%$%V%i%j$O$I$N$h$&$K;H$o$l$k$+(B</A ></H2 ><P >GNU glibc $B%Y!<%9$N%7%9%F%`!=!=A4$F$N(B Linux $B%7%9%F%`$r4^$_$^$9!=!=(B $B$G$O!"(BELF $B%P%$%J%j<B9T%U%!%$%k$r5/F0$5$;$k$H!"(B $B<+F0E*$K%W%m%0%i%`%m!<%@$,%m!<%I$5$l!"<B9T$5$l$^$9!#(B Linux $B%7%9%F%`>e$G$O!"$3$N%m!<%@$O(B /lib/ld-linux.so.X (X $B$K$O%P!<%8%g%sHV9f$,F~$j$^$9(B) $B$H$$$&L>A0$G$9!#$3$N%m!<%@$O!"(B $B%W%m%0%i%`$K$h$C$F;HMQ$5$l$k$=$NB>$NA4$F$N6&M-%i%$%V%i%j$r=g<!C5$7=P$7!"(B $B%m!<%I$7$^$9!#(B</P ><P >$B8!:wBP>]$H$J$k%G%#%l%/%H%j$N%j%9%H$O!"(B/etc/ld.so.conf $B%U%!%$%kFb$K=q$+$l$F$$$^$9!#(BRed Hat $B$+$iGI@8$7$F$$$k%G%#%9%H%j%S%e!<%7%g%s$NB?$/$O!"(B $BDL>o(B /etc/ld.so.conf $B%U%!%$%kFb$K(B /usr/local/lib $B$r4^$a$F$$$^$;$s!#(B $B;d$O$3$l$r%P%0$@$H9M$($F$*$j!"$^$?!"(B/usr/local/lib $B$r(B /etc/ld.so.conf $B$KDI2C$9$k$3$H$O!"(B Red Hat $B$+$iGI@8$7$F$$$k%7%9%F%`>e$G(B $BB?$/$N%W%m%0%i%`$rAv$i$;$k$?$a$KI,MW$H$5$l$k!"6&DL$N(B ``$B=$@5(B'' $B$@$H;W$C$F$$$^$9!#(B</P ><P >$B%i%$%V%i%jFb$N4v$D$+$N4X?t$r%*!<%P!<%i%$%I$7$?$$$@$1$G!"(B $B;D$j$O$=$N$^$^$K$7$F$*$-$?$$$J$i$P!"%*!<%P!<%i%$%I$9$k%i%$%V%i%j(B (.o $B%U%!%$%k(B) $B$NL>A0$r(B /etc/ld.so.preload $B$KF~$l$k$3$H$,$G$-$^$9!#(B $B$3$l$i$N(B ``$B@h9T$7$F%m!<%I$9$k(B'' $B%i%$%V%i%j$O!"(B $BI8=`%;%C%H$K@h9T$7$^$9!#(B $B$3$N@h9T$7$F%m!<%I$9$k%U%!%$%k$O!"E57?E*$K$O6[5^MQ$N%Q%C%A$H$7$F;H$o$l$^$9!#(B $B%G%#%9%H%j%S%e!<%7%g%s$O!"DL>o!"G[I[$5$l$k:]$K$3$N$h$&$J%U%!%$%k$r(B $B4^$`$3$H$O$J$$$G$7$g$&!#(B</P ><P >$B%W%m%0%i%`5/F0;~$K$3$l$iA4$F$N%G%#%l%/%H%j$r8!:w$9$k$N$O!"(B $B$H$F$bHs8zN(E*$J$N$G!"<B:]$K$O%-%c%C%7%eG[CV$,;H$o$l$^$9!#(B ldconfig(8) $B%W%m%0%i%`$O%G%U%)%k%H$G(B /etc/ld.so.conf $B%U%!%$%k$rFI$_9~$_!"(B $BE,@Z$J%7%s%\%j%C%/%j%s%/$rF0E*%j%s%/%G%#%l%/%H%jFb$K@_Dj$7$^$9(B ($B$=$N$?$a!"I8=`$N47=,$K1h$&$3$H$K$J$j$^$9(B) $B!#(B $B$=$l$+$i!"%-%c%C%7%e$r(B /etc/ld.so.cache $B!=!=$"$H$GB>$N%W%m%0%i%`$K;H$o$l$^$9!=!=(B $B$K=q$-9~$_$^$9!#$3$l$O!"%i%$%V%i%j$X$N%"%/%;%9$rHs>o$KB.$/$7$^$9!#(B $B0EL[E*$K8@$($k$3$H$O!"(BDLL $B$,DI2C$5$l$?$H$-$OI,$:!"$b$7$/$O!"(BDLL $B$,:o=|$5$l$?$j!"(B DLL $B%G%#%l%/%H%j$N%;%C%H$,JQ2=$7$?$H$-$K$O!"(Bldconfig $B$,<B9T$5$l$J$1$l$P$J$i$J$$!"(B $B$H$$$&$3$H$G$9!#(Bldconfig $B$N<B9T$O!"%i%$%V%i%j%$%s%9%H!<%k;~$K(B $B%Q%C%1!<%84IM}%D!<%k$K$h$C$F$*$3$J$o$l$k%9%F%C%W$N0l$D$G$"$k$3$H$,B?$$$G$9!#(B $B$=$l0J9_!"5/F0;~$K$O!"F0E*%m!<%@$O<B:]$K(B /etc/ld.so.cache $B%U%!%$%k$r;H$$!"(B $BI,MW$H$9$k%i%$%V%i%j$r%m!<%I$7$^$9!#(B</P ></DIV ><DIV CLASS="SECT2" ><H2 CLASS="SECT2" ><A NAME="AEN85" >3.3. $B4D6-JQ?t(B</A ></H2 ><P >$BMM!9$J4D6-JQ?t$,$3$N=hM}<j=g$r@)8f$G$-$^$9!#;v<B!"(B $B$3$N=hM}<j=g$r%*!<%P!<%i%$%I$9$k$N$K;H$($k4D6-JQ?t$,B8:_$7$^$9!#(B $BNc$($P!"$3$NFC<l$J<B9T$r!"0l;~E*$KB>$N%i%$%V%i%j$GBeBX$9$k$3$H$,$G$-$^$9!#(B Linux $B$G$O!"4D6-JQ?t(B LD_LIBRARY_PATH $B$O!"I8=`E*$J%G%#%l%/%H%j72$K(B $B@hN)$C$F%i%$%V%i%j$,8!:w$5$l$k$Y$-%G%#%l%/%H%j72$r!"(B $B%3%m%s$G6h@Z$C$FJB$Y$?$b$N$G$9!#(B $B$3$l$O!"?7$7$$%i%$%V%i%j$r%G%P%C%0$7$F$$$k$H$-$d!"(B $BFCJL$JL\E*$N$?$a$KHsI8=`E*$J%i%$%V%i%j$r;HMQ$7$F$$$k$H$-$KJXMx$G$9!#(B $B4D6-JQ?t(B LD_PRELOAD $B$O!"I8=`%;%C%H$r%*!<%P!<%i%$%I$9$k%*%V%8%'%/%H%U%!%$%k$r(B $B4X?t$H6&$K!"$A$g$&$I(B /etc/ld.so.preload $B$G$*$3$J$o$l$F$$$k$h$&$K!"(B $BNs5s$7$^$9!#(B $B$3$l$i$N5!G=$O!"(B/lib/ld-linux.so $B%m!<%@$K$h$j<BAu$5$l$F$$$^$9!#(B LD_LIBRARY_PATH $B$OB?$/$N(B Unix $B%i%$%/$J%7%9%F%`>e$G5!G=$7$^$9$,!"(B $BA4$F$N%7%9%F%`>e$GF0$/$o$1$G$O$J$$$3$H$KCm0U$7$^$7$g$&!#(B $BNc$($P!"(BHP-UX $B$G$bF1$85!G=$,MxMQ$G$-$^$9$,!"$=$l$O(B SHLIB_PATH $B$H$7$F$G$9$7!"(BAIX $B$G$O(B LIBPATH $B$rDL$8$F$H$$$&$3$H$K$J$j$^$9!#(B $B$^$?!"(BLD_LIBRARY_PATH $B$O3+H/$d%F%9%H$K$OJXMx$G$O$"$j$^$9$,!"(B $BDL>o;HMQ$N$?$a$K%$%s%9%H!<%k;~$K=$@5$5$l$k$Y$-$G$O$"$j$^$;$s!#(B $B$3$NM}M3$N@bL@$K$D$$$F$O!"(B <A HREF="http://www.visi.com/~barr/ldpath.html" TARGET="_top" >http://www.visi.com/~barr/ldpath.html</A > $B$N(B ``$B$J$<(B LD_LIBRARY_PATH $B$O$$$1$J$$$N$+(B'' $B$r;2>H$7$F$/$@$5$$!#(B</P ><P >$B<B:]$K$O!"%m!<%G%#%s%0=hM}<j=g$r@)8f$9$k4D6-JQ?t$O(B $B$[$+$K$b$?$/$5$sB8:_$7$^$9!#$=$l$i$NL>A0$O!"(BLD_ $B$d(B RTLD_ $B$G$O$8$^$j$^$9!#$=$l$i$N$[$H$s$I$O!"%m!<%@=hM}$NDc%l%Y%k$J%G%P%C%0$d!"(B $BFC<l2=$5$l$?%1%$%Q%S%j%F%#$r<BAu$9$k$?$a$N$b$N$G$9!#(B $B$[$H$s$I$O!"==J,$K%I%-%e%a%s%H2=$5$l$F$$$^$;$s!#(B $B$=$l$i$K$D$$$FCN$kI,MW$,$"$k$J$i$P!"3X=,$9$k$b$C$H$b$h$$J}K!$O!"(B $B%=!<%9%3!<%I$rFI$`$3$H$G$9!#(B</P ><P >$BFCJL$JBP=h$,$J$5$l$J$$$J$i$P!"F0E*$K%j%s%/$5$l$k%i%$%V%i%j$KBP$9$k(B $B@)8f$r%f!<%6$KG'$a$k$H$$$&$3$H$O!"(Bsetuid/setgid $B%W%m%0%i%`$K$H$C$F$O(B $BHa;4$J$b$N$K$J$k$G$7$g$&!#$=$N$?$a!"(BGNU $B%m!<%@$G$O!"(B $B%W%m%0%i%`$,(B setuid $B$b$7$/$O(B setgid $B$5$l$F$$$k>l9g!"(B $B$3$l$i$NJQ?t(B ($B5Z$SN`;w$NJQ?t(B) $B$OL5;k$5$l$k$+!"$b$7$/$O!"(B $B$=$l$i$,$G$-$k$3$H$OBgI}$K@)8B$5$l$^$9!#(B $B%m!<%@$O!"%W%m%0%i%`$N?.G$>Z(B (credential) $B$rD4$Y$k$3$H$K$h$C$F!"(B $B$=$N%W%m%0%i%`$,(B setuid $B$b$7$/$O(B setgid $B$5$l$F$$$k$+$I$&$+$r3NG'$7$^$9!#(B $B$b$7$b(B uid $B$H(B euid $B$,0[$J$k$+!"$b$7$/$O(B gid $B$H(B egid $B$,0[$J$k$J$i!"(B $B%m!<%@$O$=$N%W%m%0%i%`$,(B setuid/setgid $B$5$l$F$$$k(B ($B$b$7$/$O$=$N$h$&$J%W%m%0%i%`$+$i<B9T$5$l$?(B) $B$H?dDj$7!"(B $B%j%s%/=hM}$r%3%s%H%m!<%k$9$kG=NO$rBgI}$K@)8B$7$^$9!#(B GNU glibc $B%i%$%V%i%j$N%=!<%9%3!<%I$rFI$a$P!"(B $B$3$l$K$D$$$F8+$k$3$H$,$G$-$k$G$7$g$&!#FC$K!"(Belf/rtld.c $B%U%!%$%k$H(B sysdeps/generic/dl-sysdep.c $B%U%!%$%k$r8+$F$/$@$5$$!#(B $B$3$l$O!"(Buid $B$H(B gid $B$r(B euid $B$H(B egid $B$KEy$7$/$7$F$+$i(B $B%W%m%0%i%`$r8F$Y$P$3$l$i$NJQ?t$,40A4$K5!G=$9$k!"(B $B$H$$$&$3$H$r0UL#$7$F$$$^$9!#(B $B$=$NB>$N(B Unix $B%i%$%/$J%7%9%F%`$O!"$3$N>u67$r0[$J$kJ}K!$G07$$$^$9$,!"(B $BF1$8M}M3!=!=(Bsetuid/setgid $B%W%m%0%i%`$O4D6-JQ?t72$K$h$C$F2aEY$K1F6A$r(B $B<u$1$k$Y$-$G$O$J$$$H$$$&M}M3!=!=$K$h$j$^$9!#(B</P ></DIV ><DIV CLASS="SECT2" ><H2 CLASS="SECT2" ><A NAME="AEN91" >3.4. $B6&M-%i%$%V%i%j$N:n@.(B</A ></H2 ><P >$B6&M-%i%$%V%i%j$N:n@.$O4JC1$G$9!#(B $B$^$:$O$8$a$K!"(Bgcc $B$N(B -fPIC $B%U%i%0(B ($B$3$l$O!"6&M-%i%$%V%i%j$KI,MW$H$5$l$k(B ``$B0LCVFHN)%3!<%I(B (position independent code)'' $B$N@8@.$r2DG=$K$7$^$9(B) $B$r;H$C$F!"(B $B6&M-%i%$%V%i%j$KAH$_9~$^$l$k$3$H$K$J$k%*%V%8%'%/%H%U%!%$%k$r:n@.$7$^$9!#(B $B$=$l$+$i!"<!$N7A<0$r;H$C$F6&M-%i%$%V%i%j$r:n@.$7$F$/$@$5$$!=!=(B</P ><TABLE BORDER="0" BGCOLOR="#E0E0E0" WIDTH="100%" ><TR ><TD ><FONT COLOR="#000000" ><PRE CLASS="PROGRAMLISTING" >gcc -shared -Wl,-soname,<TT CLASS="REPLACEABLE" ><I >your_soname</I ></TT > \ -o <TT CLASS="REPLACEABLE" ><I >library_name</I ></TT > <TT CLASS="REPLACEABLE" ><I >file_list</I ></TT > <TT CLASS="REPLACEABLE" ><I >library_list</I ></TT ></PRE ></FONT ></TD ></TR ></TABLE ><P >$BFs$D$N%*%V%8%'%/%H%U%!%$%k(B (a.o $B$H(B b.o) $B$r:n@.$7!"(B $B$3$l$iN>J}$r4^$`6&M-%i%$%V%i%j$r:n@.$9$kNc$r$3$3$K5s$2$^$9!#(B $B%3%s%Q%$%k=hM}$,!"%G%P%C%0>pJs(B (-g) $B$r4^$_!"7Y9p%a%C%;!<%8$r@8@.$9$k(B (-Wall) $B$H$$$&$3$H!=!=$3$l$i$O6&M-%i%$%V%i%j$KI,MW$H$O$5$l$^$;$s$,?d>)$5$l$^$9!=!=(B $B$K$OCm0U$7$F$/$@$5$$!#(B $B%3%s%Q%$%k=hM}$O(B (-c $B$r;H$C$F(B) $B%*%V%8%'%/%H%U%!%$%k$r@8@.$7!"(B $B$=$7$F!"MW5a$5$l$k(B -fPIC $B%*%W%7%g%s$r$O$C$-$j$H4^$`$3$H$K$J$j$^$9!#(B</P ><TABLE BORDER="0" BGCOLOR="#E0E0E0" WIDTH="100%" ><TR ><TD ><FONT COLOR="#000000" ><PRE CLASS="PROGRAMLISTING" >gcc -fPIC -g -c -Wall a.c gcc -fPIC -g -c -Wall b.c gcc -shared -Wl,-soname,libmystuff.so.1 \ -o libmystuff.so.1.0.1 a.o b.o -lc</PRE ></FONT ></TD ></TR ></TABLE ><P >$BCm0U$9$Y$-$3$H$,4v$D$+$"$j$^$9!=!=(B <P ></P ><UL ><LI ><P >$B@8@.$5$l$?%i%$%V%i%j$r(B strip $B$7$J$$$G$/$@$5$$!#$^$?(B $BK\Ev$KI,MW$G$J$$8B$j%3%s%Q%$%i%*%W%7%g%s(B -fomit-frame-pointer $B$r;H$o$J$$$G$/$@$5$$!#@8@.$5$l$?%i%$%V%i%j$O5!G=$9$k$G$7$g$&$,!"(B $B$3$l$i$N:n6H$O!"%G%P%C%,$r$[$H$s$I;H$$J*$K$J$i$J$/$7$F$7$^$$$^$9!#(B</P ></LI ><LI ><P >$B%3!<%I$r@8@.$9$k$K$O!"(B-fpic $B$G$O$J$/!"(B-fPIC $B$r;H$C$F$/$@$5$$(B ($BA0<T$O5!G=$7$J$$$3$H$b$"$j$^$9!#$H$$$&$N$O!"(B $BJ,4t$,Bg5,LO$JG[CVE>49$rI,MW$H$9$k>l9g!"(B-fpic $B$O40A4$J0LCVFHN)%3!<%I$r@8@.$7$J$$$+$b$7$l$J$$$+$i$G$9(B)$B!#(B</P ></LI ></UL ></P ></DIV ><DIV CLASS="SECT2" ><H2 CLASS="SECT2" ><A NAME="AEN107" >3.5. $B6&M-%i%$%V%i%j$N%$%s%9%H!<%k$H;HMQ(B</A ></H2 ><P >$B0lEY6&M-%i%$%V%i%j$r:n@.$7$F$7$^$&$H!"$=$l$r%$%s%9%H!<%k$7$?$/$J$k$3$H$G$7$g$&!#(B $B4JC1$JJ}K!$O!"I8=`E*$J%G%#%l%/%H%j(B ($BNc$($P(B /usr/lib $B$J$I(B) $B$N0l$D$K!"$=$N%i%$%V%i%j$r%3%T!<$7!"(Bldconfig(8) $B$r<B9T$9$k$3$H$G$9!#(B</P ><P >$B$b$7$b$3$l$,$G$-$J$$$J$i$P(B ($BNc$($P!"$"$J$?$,(B /usr/lib $B$rJQ99$9$k8"Mx$r;}$C$F$$$J$$$J$I(B)$B!"(B $B;vBV$r@)8f$9$k$?$a$K4D6-JQ?t$r;HMQ$9$k$3$H$,$G$-$^$9!#(B $B$^$:$O$8$a$K!"$I$3$+$K6&M-%i%$%V%i%j$r:n@.$9$kI,MW$,$"$k$G$7$g$&!#(B $B$=$l$+$i!"I,MW$J%7%s%\%j%C%/%j%s%/!"FC$K(B soname $B$+$i(B real name $B$X$N%7%s%\%j%C%/%j%s%/(B ($BF1MM$K!"%P!<%8%g%sHV9f$r$^$C$?$/;XDj$7$J$$%f!<%6$N$?$a$K!"(B $B%P!<%8%g%sHV9f$N$J$$(B soname $B!"$D$^$j!"(B``.so'' $B$G=*$o$k(B soname $B$+$i$N%7%s%\%j%C%/%j%s%/$b(B) $B@_Dj$9$kI,MW$,$"$k$G$7$g$&!#(B $B$b$C$H$b4JC1$JJ}K!$O!"<!$N%3%^%s%I%i%$%s$r<B9T$9$k$3$H$G$9!=!=(B</P ><TABLE BORDER="0" BGCOLOR="#E0E0E0" WIDTH="100%" ><TR ><TD ><FONT COLOR="#000000" ><PRE CLASS="PROGRAMLISTING" > ldconfig -n <TT CLASS="REPLACEABLE" ><I >directory_with_shared_libraries</I ></TT ></PRE ></FONT ></TD ></TR ></TABLE ><P >$B$=$l$+$i!"(BLD_LIBRARY_PATH $B!=!=$$$D$b$N>l=j$h$j$b@h$K(B $B6&M-%i%$%V%i%j$N8!:wBP>]$H$J$k%G%#%l%/%H%j$N%j%9%H$r%3%m%s$G6h@Z$C$?$b$N!=!=(B $B$r@_Dj$7$^$9!#(Bbash $B$r$*;H$$$G$7$?$i!"<!$NJ}K!$G(B my_program $B$r<B9T$G$-$^$9!#(B</P ><TABLE BORDER="0" BGCOLOR="#E0E0E0" WIDTH="100%" ><TR ><TD ><FONT COLOR="#000000" ><PRE CLASS="PROGRAMLISTING" >LD_LIBRARY_PATH=.:$LD_LIBRARY_PATH my_program</PRE ></FONT ></TD ></TR ></TABLE ><P >$B4v$D$+$NA*Br$5$l$?4X?t$r%*!<%P!<%i%$%I$7$?$$$@$1$J$i$P!"(B $B%*!<%P!<%i%$%I$9$k%*%V%8%'%/%H%U%!%$%k$r:n@.$7$F(B LD_PRELOAD $B$r@_Dj$9$k$@$1$G2DG=$G$9!#$3$N%*%V%8%'%/%H%U%!%$%kFb$N4X?t$O!"(B $BBP>]$H$J$C$F$$$k4X?t$@$1$r%*!<%P!<%i%$%I$7$^$9!#(B</P ><P >$BIaCJ$O!"?4G[$9$kI,MW$b$J$/%i%$%V%i%j$r99?7$G$-$^$9!#$b$7$b(B API $B$NJQ99$,$"$k$J$i$P!"%i%$%V%i%j:n@.<T$O(B soname $B$rJQ99$9$k$G$7$g$&!#(B $B$7$+$7$J$,$i!"$b$7$bF1$8(B soname $B$N$^$^$N%i%$%V%i%j$KBP$9$k99?78D=j$K$*$$$F!"(B $B$"$k%W%m%0%i%`$,CfCG$7$F$7$^$&$h$&$J$i!"(B $B8E$$%i%$%V%i%j$r$I$3$+$K%3%T!<$7!"$=$N%W%m%0%i%`$NL>A0$rJQ99$9$k$3$H$K$h$C$F(B ($B8E$$L>A0$K(B ``.orig'' $B$rIU$1B-$9$J$I(B) $B!"(B $B6/@)E*$K8E$$%i%$%V%i%j%P!<%8%g%s$r;H$&$3$H$,$G$-$^$9!#(B $B;HMQ$9$k%i%$%V%i%j$r:F@_Dj$7!"<B:]$K<B9T$9$k(B ($BL>A0$rJQ99$5$l$?(B) $B%W%m%0%i%`$r8F$S=P$9$?$a$N>.$5$J(B ``$B%i%C%Q!<(B'' $B%9%/%j%W%H$b:n@.$7$F$/$@$5$$!#(B $BHV9fIU$1$N47=,$O!"(B $BF10l%G%#%l%/%H%jFb$KJ#?t$N%P!<%8%g%s$,B8:_$9$k$3$H$r2DG=$K$7$F$$$^$9$,!"(B $B$*K>$_$J$i!"8E$$%i%$%V%i%j$r$=$lFH<+$NFCJL$J>l=j$KCV$/$3$H$b$G$-$^$9!#(B $B%i%C%Q!<%9%/%j%W%H$O!"<!$N$h$&$J$b$N$K$J$k$G$7$g$&!=!=(B <TABLE BORDER="0" BGCOLOR="#E0E0E0" WIDTH="100%" ><TR ><TD ><FONT COLOR="#000000" ><PRE CLASS="PROGRAMLISTING" > #!/bin/sh export LD_LIBRARY_PATH=/usr/local/my_lib:$LD_LIBRARY_PATH exec /usr/bin/my_program.orig $*</PRE ></FONT ></TD ></TR ></TABLE ></P ><P >ldd(1) $B$r;H$($P!"(B $B$"$k%W%m%0%i%`$K$h$C$F;HMQ$5$l$F$$$k6&M-%i%$%V%i%j$N%j%9%H$r(B $BD4$Y$k$3$H$,$G$-$^$9!#(B $BNc$($P!"<!$N$h$&$K%?%$%W$9$l$P!"(B ls $B$K$h$C$F;HMQ$5$l$F$$$k6&M-%i%$%V%i%j$r3NG'$9$k$3$H$,$G$-$^$9!=!=(B <TABLE BORDER="0" BGCOLOR="#E0E0E0" WIDTH="100%" ><TR ><TD ><FONT COLOR="#000000" ><PRE CLASS="PROGRAMLISTING" > ldd /bin/ls</PRE ></FONT ></TD ></TR ></TABLE > $B0lHLE*$K$O!"%W%m%0%i%`$N0MB8$9$k(B soname $B$N%j%9%H$,!"(B $BL>A02r7h8e$N%G%#%l%/%H%jL>$H6&$KF@$i$l$^$9!#<B:]$K$OA4$F$N>l9g$K$*$$$F!"(B $B>/$J$/$H$bFs$D$N0MB8MWAG$r8+$k$3$H$K$J$k$G$7$g$&!=!=(B <P ></P ><UL ><LI ><P >/lib/ld-linux.so.N (N $B$O!"(B1 $B$+$=$l0J>e!#$?$$$F$$$O>/$J$/$H$b(B 2) $B!#(B $B$3$l$O!"B>$NA4$F$N%i%$%V%i%j$r%m!<%I$9$k$?$a$N%i%$%V%i%j$G$9!#(B</P ></LI ><LI ><P >libc.so.N (N $B$O!"(B6 $B$+$=$l0J>e(B) $B!#(B $B$3$l$O(B C $B%i%$%V%i%j$G$9!#B>$N8@8l$G$5$(!"(BC $B%i%$%V%i%j$r;HMQ$9$k798~$,$"$j$^$9(B ($B>/$J$/$H$b$=$l$i<+?H$N%i%$%V%i%j$r<BAu$9$k$?$a$K(B) $B!#$=$N$?$a!"(B $B$[$H$s$I$N%W%m%0%i%`$O>/$J$/$H$b$3$N%i%$%V%i%j$O4^$s$G$$$^$9!#(B</P ></LI ></UL > $BCm0U!=!=?.MQ$G$-$J$$%W%m%0%i%`$KBP$7$F(B ldd $B$r<B9T$7$F$O(B <EM >$B$$$1$^$;$s(B</EM >$B!#$3$l$K$D$$$F$O!"(B ldd(1) $B$N%^%K%e%"%k$GL@3N$K=R$Y$i$l$F$$$^$9!#(B ldd $B$O!"Ev3:%W%m%0%i%`$rD>@\8F$S=P$9$3$H$G5!G=$7$F$$$^$9!#(B $B?.MQ$G$-$J$$%W%m%0%i%`$,M=4|$7$F$$$J$$%3!<%I$r<B9T$7$F$7$^$&$3$H$,$"$j$($^$9!#(B</P ></DIV ><DIV CLASS="SECT2" ><H2 CLASS="SECT2" ><A NAME="AEN126" >3.6. $BHs8_49%i%$%V%i%j(B</A ></H2 ><P >$B?7$7$$%P!<%8%g%s$N%i%$%V%i%j$,8E$$$b$N$H%P%$%J%jHs8_49$G$"$k$H$-$O!"(B soname $B$rJQ99$9$kI,MW$,$"$j$^$9!#(BC $B$K$*$$$F$O!"(B $B%i%$%V%i%j$,%P%$%J%j8_49$G$O$J$/$J$C$F$7$^$&;M$D$N4pK\E*$JM}M3$,$"$j$^$9!#(B <P ></P ><OL TYPE="1" ><LI ><P >$B85$N;EMM$KE,9g$7$J$$$h$&$K4X?t$NF0:n$,JQ99$5$l$F$7$^$&(B</P ></LI ><LI ><P >$B%(%/%9%]!<%H$5$l$k%G!<%?9`L\$,JQ99$5$l$F$7$^$&(B ($BNc30(B $B!=!=9=B$BN$,%i%$%V%i%jFb$G$N$_%"%m%1!<%H$5$l$k>l9g$K8B$j!"(B $B9=B$BN$NKvHx$KG$0U$N9`L\$rDI2C$9$k$N$OLdBj$J$$(B)</P ></LI ><LI ><P >$B%(%/%9%]!<%H$5$l$F$$$k4X?t$,:o=|$5$l$F$7$^$&(B</P ></LI ><LI ><P >$B%(%/%9%]!<%H$5$l$F$$$k4X?t$N%$%s%?!<%U%'!<%9$,JQ99$5$l$F$7$^$&(B</P ></LI ></OL ></P ><P >$B$3$l$i$NM}M3$r2sHr$G$-$k$J$i$P!"%i%$%V%i%j$r%P%$%J%j8_49$KJ]$D$3$H$,$G$-$^$9!#(B $BJL$N8@$$J}$r$9$k$H!"$3$l$i$NJQ99$rHr$1$l$P!"(BApplication Binary Interface (ABI) $B8_49$rJ]$D$3$H$,$G$-$k!"$H$$$&$3$H$G$9!#Nc$($P!"(B $B?7$7$$4X?t$rDI2C$7$?$$$1$l$I$b8E$$4X?t$r:o=|$7$?$/$O$J$$$+$b$7$l$^$;$s!#(B $B9=B$BN$NKvHx$K$N$_%"%$%F%`$rDI2C$7!"(B $B%i%$%V%i%j$K$@$1$=$N9=B$BN$r%"%m%1!<%H$9$k$3$H$r5v2D$7(B ($B%"%W%j%1!<%7%g%s$K$O5v2D$7$J$$(B)$B!"$=$NDI2C$N%"%$%F%`$r%*%W%7%g%s07$$$K$9$k(B ($B$b$7$/$O%i%$%V%i%j$,$=$l$i$rK~$?$9$h$&$K$9$k(B)$B!"(B $B$J$I$NA`:n$r$*$3$J$C$F@8$8$?JQ99$,!"(B $B8E$$%W%m%0%i%`$KBP$7$F1F6A$rM?$($J$$$3$H$r3NG'$G$-$k>l9g$K$N$_!"(B $B%"%$%F%`$rDI2C$9$k$3$H$,$G$-$^$9!#5$$rIU$1$F$/$@$5$$!#(B $B$b$7$b%f!<%6$,9=B$BN$rG[Ns$G;H$C$F$$$k$J$i$P!"$=$N9=B$BN$O3HD%$G$-$^$;$s!#(B</P ><P >C++ ($B$*$h$S!"%3%s%Q%$%k:Q$_AH9~$_%F%s%W%l!<%H3n$D!?Kt$O(B $B%3%s%Q%$%k:Q$_$N%G%#%9%Q%C%A$5$l$k%a%=%C%I$r%5%]!<%H$9$k$=$NB>$N8@8l(B) $B$G$O!">u67$O$h$jJ#;($K$J$j$^$9!#(B $B>e5-$NLdBjE@A4$F$,E,MQ$5$l$k>e!"$5$i$KB?$/$NLdBj$,$"$j$^$9!#(B $BM}M3$O!"4v$D$+$N>pJs$,%3%s%Q%$%k$5$l$?%3!<%IFb$K(B ``$B1#$5$l$?>uBV$G(B'' $B<BAu$5$l$F$$$k$H$$$&$3$H$K$"$k$N$G$9$,!"(B $B$3$N$3$H$,!"(B C++ $B$,0lHLE*$K$I$N$h$&$K<BAu$5$l$F$$$k$+$rCN$i$J$$?M$K$O(B $B$h$/J,$+$i$J$$$h$&$J0MB8LdBj$r0z$-5/$3$7$F$7$^$&$N$G$9!#(B $B@53N$K8@$($P!"$=$l$i$O(B ``$B?7$7$$(B'' $BLdBj$G$O$"$j$^$;$s!#(B $BC1$K!"%3%s%Q%$%k:Q$_$N(B C++ $B$N%3!<%I$,!"$"$J$?$r6C$+$;$k(B $B$3$H$K$J$k$+$b$7$l$J$$J}K!$G$=$l$i$NLdBj$r0z$-5/$3$9$H$$$&$3$H$J$N$G$9!#(B $B<!$N$b$N$O!"%P%$%J%j8_49$r0];}$9$k$?$a$K(B C++ $BFb$G$d$C$F$O$$$1$J$$9`L\$N%j%9%H(B ($B$*$=$i$/IT40A4$G$9$,(B) $B$G$"$j!"(B <A HREF="http://www.trolltech.com/developer/faq/tech.html#bincomp" TARGET="_top" >Troll Tech $B%F%/%K%+%k(B FAQ</A > $B$K$h$jJs9p$5$l$F$$$k$b$N$G$9!#(B <P ></P ><OL TYPE="1" ><LI ><P >$B%a%s%P4X?t$r:F<BAu$7$?$b$N$rDI2C$9$k(B ($B8E$$%P%$%J%j$,85$N<BAu$r8F$S=P$9$N$,0BA4$G$O$J$$>l9g(B)$B!#$H$$$&$N$O!"(B $B%3%s%Q%$%i$O(B SuperClass::virtualFunction() $B8F=P$7$r%3%s%Q%$%k;~$KI>2A$9$k$+$i$G$9(B ($B%j%s%/;~$G$O$"$j$^$;$s(B)$B!#(B</P ></LI ><LI ><P >$B2>A[%a%s%P4X?t$rDI2C$^$?$O:o=|$9$k!#$H$$$&$N$O!"$3$N:n6H$O(B $BA4%5%V%/%i%9$N2>A[4X?t%F!<%V%k$N%5%$%:$HG[CV$rJQ99$9$k$@$m$&$+$i$G$9!#(B</P ></LI ><LI ><P >$B%$%s%i%$%s%a%s%P4X?t7PM3$G%"%/%;%9$5$l$&$k%G!<%?%a%s%P$N%?%$%W$r(B $BJQ99$7$?$j!"$^$?$O$=$l$i$r0\F0$5$;$?$j$9$k!#(B</P ></LI ><LI ><P >$B%/%i%93,AX$rJQ99$9$k!#$?$@$7!"%j!<%U(B ($BLuCm!'2<0L%/%i%9$r;}$?$J$$%/%i%9(B) $B$N?75,DI2C$r=|$/!#(B</P ></LI ><LI ><P >private $B%G!<%?%a%s%P$rDI2C$^$?$O:o=|$9$k!#$H$$$&$N$O!"(B $B$3$N:n6H$OA4%5%V%/%i%9$N%5%$%:$HG[CV$rJQ99$9$k$@$m$&$+$i$G$9!#(B</P ></LI ><LI ><P >public $B$b$7$/$O(B protected $B%a%s%P4X?t$,%$%s%i%$%s4X?t$G$J$$>l9g$K!"(B $B$=$l$i$r:o=|$9$k!#(B</P ></LI ><LI ><P >public $B$b$7$/$O(B protected $B%a%s%P4X?t$r%$%s%i%$%s2=$9$k!#(B</P ></LI ><LI ><P >$B%$%s%i%$%s4X?t$,$*$3$J$C$F$$$?$3$H$rJQ99$9$k!#(B $B$?$@$7!"8E$$%P!<%8%g%s$,F0:n$7B3$1$F$$$k>l9g$r=|$/!#(B</P ></LI ><LI ><P >$B%]!<%?%V%k$J%W%m%0%i%`$N%a%s%P4X?t$N%"%/%;%98"(B ($B$9$J$o$A!"(B public, protected $B$^$?$O(B private) $B$rJQ99$9$k!#$H$$$&$N$O!"(B $B%"%/%;%98"$r4X?tL>$K2!$79~$s$G$7$^$&%3%s%Q%$%i$bB8:_$9$k$+$i$G$9!#(B</P ></LI ></OL ></P ><P >C++ $B%i%$%V%i%j$N3+H/<T$O!"$3$ND9$C$?$i$7$$%j%9%H$r<j$K$7$F!"(B $B%P%$%J%j8_49@-$r$J$/$9$3$H$K$J$C$F$7$^$&;~@^$N99?7:n6H0J>e$N$3$H$r(B $BFC$K9MN8$7$J$1$l$P$J$j$^$;$s!#(B $B9,$$$K$7$F!"(BUnix $B%i%$%/$J%7%9%F%`(B (Linux $B$r4^$_$^$9(B) $B$G$O0l$D$N%i%$%V%i%j$NJ#?t$N%P!<%8%g%s$rF1;~$K%m!<%I$9$k$3$H$,$G$-$k$N$G!"(B $B%G%#%9%/%9%Z!<%9$r<:$&$3$H$K$O$J$j$^$9$,!"(B $B%f!<%6$O8E$$%i%$%V%i%j$rI,MW$H$9$k(B ``$B8E$$(B'' $B%W%m%0%i%`$r$=$N8e$b<B9T$9$k$3$H$,2DG=$G$O$"$j$^$9!#(B</P ></DIV ></DIV ><DIV CLASS="NAVFOOTER" ><HR ALIGN="LEFT" WIDTH="100%"><TABLE WIDTH="100%" BORDER="0" CELLPADDING="0" CELLSPACING="0" ><TR ><TD WIDTH="33%" ALIGN="left" VALIGN="top" ><A HREF="static-libraries.html" >Prev</A ></TD ><TD WIDTH="34%" ALIGN="center" VALIGN="top" ><A HREF="index.html" >Home</A ></TD ><TD WIDTH="33%" ALIGN="right" VALIGN="top" ><A HREF="dl-libraries.html" >Next</A ></TD ></TR ><TR ><TD WIDTH="33%" ALIGN="left" VALIGN="top" >$B@EE*%i%$%V%i%j(B</TD ><TD WIDTH="34%" ALIGN="center" VALIGN="top" > </TD ><TD WIDTH="33%" ALIGN="right" VALIGN="top" >$BF0E*$K%m!<%I$5$l$k(B (Dynamically Loaded; DL) $B%i%$%V%i%j(B</TD ></TR ></TABLE ></DIV ></BODY ></HTML >