From owner-freebsd-hackers Mon May 26 09:30:14 1997 Return-Path: Received: (from root@localhost) by hub.freebsd.org (8.8.5/8.8.5) id JAA27062 for hackers-outgoing; Mon, 26 May 1997 09:30:14 -0700 (PDT) Received: from austin.polstra.com (austin.polstra.com [206.213.73.10]) by hub.freebsd.org (8.8.5/8.8.5) with ESMTP id JAA27049 for ; Mon, 26 May 1997 09:30:10 -0700 (PDT) Received: from austin.polstra.com (jdp@localhost) by austin.polstra.com (8.8.5/8.8.5) with ESMTP id JAA29016; Mon, 26 May 1997 09:29:40 -0700 (PDT) Message-Id: <199705261629.JAA29016@austin.polstra.com> To: peter@spinner.dialix.com.au Subject: Re: cvs commit: src/release boot_crunch.conf Newsgroups: polstra.freebsd.cvs.committers In-Reply-To: <199705260329.LAA00670@spinner.dialix.com.au> References: <199705260329.LAA00670@spinner.dialix.com.au> Organization: Polstra & Co., Seattle, WA Cc: hackers@freebsd.org Date: Mon, 26 May 1997 09:29:40 -0700 From: John Polstra Sender: owner-hackers@freebsd.org X-Loop: FreeBSD.org Precedence: bulk In article <199705260329.LAA00670@spinner.dialix.com.au>, Peter Wemm wrote: > For dlopen/dlclose/etc to work, it requires that the calling executable is > dynamically linked, linked with libc.so.xx and that /usr/libexec/ld.so is > present. A dynamic libc is important since if libalias makes any libc > calls (memcpy, strcmp, etc) then the symbols have to be dynamically > resolveable. The right way to handle this is to add "-lc" to the linker line when building libalias.so.m.n. E.g.: cc -shared -o libalias.so.1.1 ... -lc Then when you dlopen() libalias, it will pull in libc if that has not already been done. We probably should be building all of our shared libraries with their dependencies specified explicitly in this way. John -- John Polstra jdp@polstra.com John D. Polstra & Co., Inc. Seattle, Washington USA "Self-knowledge is always bad news." -- John Barth