From owner-freebsd-hackers Mon May 26 01:04:10 1997 Return-Path: Received: (from root@localhost) by hub.freebsd.org (8.8.5/8.8.5) id BAA05978 for hackers-outgoing; Mon, 26 May 1997 01:04:10 -0700 (PDT) Received: from nlsystems.com (nlsys.demon.co.uk [158.152.125.33]) by hub.freebsd.org (8.8.5/8.8.5) with ESMTP id BAA05973; Mon, 26 May 1997 01:04:04 -0700 (PDT) Received: from herring.nlsystems.com (herring.nlsystems.com [10.0.0.2]) by nlsystems.com (8.8.5/8.8.5) with SMTP id JAA04066; Mon, 26 May 1997 09:03:40 +0100 (BST) Date: Mon, 26 May 1997 09:03:40 +0100 (BST) From: Doug Rabson To: Peter Wemm cc: Eivind Eklund , "Jordan K. Hubbard" , jkh@freebsd.org, cvs-committers@freebsd.org, cvs-all@freebsd.org, cvs-release@freebsd.org, hackers@freebsd.org Subject: Re: cvs commit: src/release boot_crunch.conf In-Reply-To: <199705260749.PAA06710@spinner.dialix.com.au> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-hackers@freebsd.org X-Loop: FreeBSD.org Precedence: bulk On Mon, 26 May 1997, Peter Wemm wrote: > Doug Rabson wrote: > > > > I recently changed ld so that you can link a dynamic executable even if it > > doesn't use any dynamic libs. This means that the symbol table is > > generated and the program can load new libraries but it is itself static. > > Use the -Bforcedynamic flag to ld instead of -Bdynamic. > > I suspect the catch would be that if the dynamic object wanted to use > memmove() and the calling -Bforcedynamic program hadn't caused memmove to > be linked in from libc.a, then it might fail. Anyway, it's something to > watch out for.. The trick there would be to dlopen("libc.so.??.??") before loading anything you don't have symbols for. All the symbols in libc which you have pulled in statically should be redirected to the static versions by ld.so. -- Doug Rabson Mail: dfr@nlsystems.com Nonlinear Systems Ltd. Phone: +44 181 951 1891 Fax: +44 181 381 1039