From owner-FreeBSD-users-jp@jp.freebsd.org  Mon Dec  6 14:42:37 1999
Received: (from daemon@localhost)
	by castle.jp.freebsd.org (8.9.3+3.2W/8.7.3) id OAA88255;
	Mon, 6 Dec 1999 14:42:37 +0900 (JST)
	(envelope-from owner-FreeBSD-users-jp@jp.FreeBSD.org)
Received: from mail.sfc.keio.ac.jp (mail.sfc.keio.ac.jp [133.27.4.120])
	by castle.jp.freebsd.org (8.9.3+3.2W/8.7.3) with ESMTP id OAA88250
	for <freebsd-users-jp@jp.freebsd.org>; Mon, 6 Dec 1999 14:42:37 +0900 (JST)
	(envelope-from s96023ja@sfc.keio.ac.jp)
Received: from ccz03.sfc.keio.ac.jp (ccz03 [133.27.4.213])
	by mail.sfc.keio.ac.jp (8.9.3/3.7W-SFC) with ESMTP id OAA05647;
	Mon, 6 Dec 1999 14:42:36 +0900 (JST)
Received: from sfc.keio.ac.jp (localhost [127.0.0.1]) by ccz03.sfc.keio.ac.jp (8.8.8/3.5Wpl7-SFC-LOCAL) with ESMTP id OAA20617; Mon, 6 Dec 1999 14:42:36 +0900 (JST)
Message-Id: <199912060542.OAA20617@ccz03.sfc.keio.ac.jp>
To: freebsd-users-jp@jp.freebsd.org
X-Mailer: Mew version 1.70 on Emacs 19.28.1 / Mule 2.3
Mime-Version: 1.0
Content-Type: Text/Plain; charset=iso-2022-jp
Content-Transfer-Encoding: 7bit
Date: Mon, 06 Dec 1999 14:42:36 +0900
From: Jin Arai <s96023ja@sfc.keio.ac.jp>
Reply-To: FreeBSD-users-jp@jp.freebsd.org
Precedence: list
X-Distribute: distribute version 2.1 (Alpha) patchlevel 24e+990727
X-Sequence: FreeBSD-users-jp 47987
Subject: [FreeBSD-users-jp 47987] How to make shared library on FreeBSD3.x
Errors-To: owner-FreeBSD-users-jp@jp.freebsd.org
Sender: owner-FreeBSD-users-jp@jp.freebsd.org
X-Originator: s96023ja@sfc.keio.ac.jp

$B$3$s$K$A$O!#7DXfBg3X$N?70f$H?=$7$^$9!#(B

FreeBSD-3.2$B>e$G!"$"$k3+H/$r$7$F$$$k$N$G$9$,!"(Bshared library $B$N:n$jJ}$,(B
$B$o$+$i$J$/$F:$$C$F$$$^$9!#(B

$B1v:j$5$s$N%Z!<%8(B:
http://hawk.ise.chuo-u.ac.jp/student/person/tshiozak/study/freebsd-at-random/shlib1/

$B$r;29M$K$7$F!"(B2.2.x$B$HF1$8J}K!$G$d$C$F$_$?$H$3$m!"(B
shared library $B$rMQ$$$F$$$k%W%m%0%i%`$r%3%s%Q%$%k$9$kCJ3,$G(B

/usr/libexec/elf/ld: cannot open -lhello: No such file or directory

$B$H$$$&%(%i!<$,=P$F$7$^$$$^$9!#(B


$B6qBNE*$J%=!<%9$O0J2<$N$h$&$K$J$C$F$*$j!"(B
----- $B$3$3$+$i(B ----- $B$3$3$+$i(B ----- $B$3$3$+$i(B ----- $B$3$3$+$i(B -----
--hello.c--
#include <stdio.h>

main(){ printf("hello world\n"); }

--main.c--
($B6u$N%U%!%$%k(B)
----- $B$3$3$^$G(B ----- $B$3$3$^$G(B ----- $B$3$3$^$G(B ----- $B$3$3$^$G(B -----


gcc$B$*$h$S(Bld$B$N%3%^%s%I%i%$%s$O0J2<$N$h$&$K$7$F$*$j$^$9!#(B
----- $B$3$3$+$i(B ----- $B$3$3$+$i(B ----- $B$3$3$+$i(B ----- $B$3$3$+$i(B -----
% gcc -c -fpic hello.c
% ld -Bshareable -olibhello.so.1.0 hello.o
% gcc -ohello main.c -L. -lhello(*)
----- $B$3$3$^$G(B ----- $B$3$3$^$G(B ----- $B$3$3$^$G(B ----- $B$3$3$^$G(B -----

$B$3$N!"(B(*)$B$NCJ3,$G>e5-%(%i!<$,=P$^$9!#(B
$B$A$J$_$K!"(B-lxxx$B$N$H$3$m$r!"%$%s%9%H!<%k:Q$_$N%i%$%V%i%j(B($BNc$($P(Bcrypt)$B$K(B
$B$9$k$H!"$"$?$j$^$($G$9$,(B
/usr/lib/crt1.0(.text:0x69): undefined reference to `main' 

$B$H$$$&%(%i!<$K$J$j$^$9!#$3$N%(%i!<$N0c$$$O!"2?$r0UL#$9$k$N$G$7$g$&$+!)(B


$B$J$K$V$s(B 3.x $B$K4X$9$k;qNA$,>/$J$/!"(Bweb$B>e$G$N8!:w$b;n$_$?$N$G$9$,!"$$$$(B
$B$b$N$,8+$D$+$j$^$;$s$G$7$?!#$_$J$5$^$NCN<1$r$*<Z$j$7$?$/;W$$$^$9!#(B

$B$I$&$>$h$m$7$/$*4j$$$7$^$9!#(B

--
$B$"$i$$$8$s(B
arajin@ht.sfc.keio.ac.jp



