From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 13013 invoked from network); 29 Jun 2007 10:42:54 -0000 X-Spam-Checker-Version: SpamAssassin 3.2.1 (2007-05-02) on f.primenet.com.au X-Spam-Level: X-Spam-Status: No, score=-2.6 required=5.0 tests=BAYES_00 autolearn=ham version=3.2.1 Received: from news.dotsrc.org (HELO a.mx.sunsite.dk) (130.225.247.88) by ns1.primenet.com.au with SMTP; 29 Jun 2007 10:42:54 -0000 Received-SPF: none (ns1.primenet.com.au: domain at sunsite.dk does not designate permitted sender hosts) Received: (qmail 97933 invoked from network); 29 Jun 2007 10:42:48 -0000 Received: from sunsite.dk (130.225.247.90) by a.mx.sunsite.dk with SMTP; 29 Jun 2007 10:42:48 -0000 Received: (qmail 27409 invoked by alias); 29 Jun 2007 10:42:46 -0000 Mailing-List: contact zsh-workers-help@sunsite.dk; run by ezmlm Precedence: bulk X-No-Archive: yes X-Seq: 23620 Received: (qmail 27399 invoked from network); 29 Jun 2007 10:42:45 -0000 Received: from news.dotsrc.org (HELO a.mx.sunsite.dk) (130.225.247.88) by sunsite.dk with SMTP; 29 Jun 2007 10:42:45 -0000 Received: (qmail 97630 invoked from network); 29 Jun 2007 10:42:45 -0000 Received: from smtp004.mail.ukl.yahoo.com (217.12.11.35) by a.mx.sunsite.dk with SMTP; 29 Jun 2007 10:42:38 -0000 Received: (qmail 8203 invoked from network); 29 Jun 2007 10:42:35 -0000 DomainKey-Signature: a=rsa-sha1; q=dns; c=nofws; s=s1024; d=yahoo.co.uk; h=Received:X-YMail-OSG:Received:In-reply-to:From:References:To:Subject:Date:Message-ID; b=wpakprvQHf6TF84TNLVvLeaDGvfInOuEznikrwSdcHUsuQ2+xfh0EB8tgxqEWtPN39exlZI3/rPx/Cv7CtrJv/yNW06LrWhIUXaT83zWOQwNJR4LyuX3iubD0wYcr4Qn3lrig+fT7tDA9+6T2/6Qy4p0bgKigRGQ4lqANs9lNq4= ; Received: from unknown (HELO thecus) (okiddle@89.60.213.236 with plain) by smtp004.mail.ukl.yahoo.com with SMTP; 29 Jun 2007 10:42:35 -0000 X-YMail-OSG: 6lgJBWQVM1lMLZj15nN0ds_sPEj7W_syk1mIGYT8s9kCyhpMFRODZ1VqOYgkFPLENRExwTil3XoOdaQkLeSylxyKpZlbXNz969o3i2sDGb2k57y1 Received: from opk (helo=thecus) by thecus with local-esmtp (Exim 4.63) (envelope-from ) id 1I4Dw1-0004P0-Lc for zsh-workers@sunsite.dk; Fri, 29 Jun 2007 11:42:41 +0100 In-reply-to: <200706281621.l5SGLHKR015636@news01.csr.com> From: Oliver Kiddle References: <15204.1183047166@thecus> <200706281621.l5SGLHKR015636@news01.csr.com> To: Zsh workers Subject: Re: PATCH: ldd and LD_DEBUG completions Date: Fri, 29 Jun 2007 11:42:41 +0100 Message-ID: <16925.1183113761@thecus> Peter wrote: > Oliver Kiddle wrote: > > The zsh libraries are not especially cleanly linked by the way. Run ldd > > -ur (preferably on Solaris) on them to see what I mean. > > I'm getting this: > unused object=/usr/lib/libsocket.so.1 > Mostly that doesn't look unreasonable. Not unreasonable but you get curses in there too for a lot of libraries. (I wonder whether curses dependent things could be moved to zle.so so that a non-interactive zsh didn't need it). > That's a fairly cosmetic problem requiring a rewrite of the build system that's It's not entirely cosmetic. Removing unused dependencies can reduce startup times. Optimising this made a very noticeably difference to some other software a colleague of mine was working on (though admittedly that was pulling in a lot more stuff from libraries). And while I agree that rewriting the build system for this issue would be excessive, it is closely related to the issue of modules having extra dependencies. Didn't Clint put in some hack so that only the cap module depends on libcap.so. As pointed out by Danek, using -z ignore for compiler's that support it could be an easy fix. At the very least, Debian etc packages could do this (Hello Clint). In some cases Sun's -z lazyload would also be useful (e.g. iconv). Note: ldd -u -r also lists a lot of "symbol not found" errors. I think these may be the symbols from the main zsh binary (or libzsh) so they aren't an issue. With most software, they indicate that your library needs to be linked against other libraries (the same information comes from the compile option -z defs). Oliver