From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Date: Sat, 17 Jun 2006 04:09:59 +0400 From: Alexey Tourbin To: devel@lists.altlinux.org Message-ID: <20060617000958.GF25291@localhost.localdomain> Mail-Followup-To: devel@lists.altlinux.org Mime-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="vj77qGokqwYdeLil" Content-Disposition: inline Subject: [devel] lj_udrepper --as-needed libtool moronic idiots X-BeenThere: devel@lists.altlinux.org X-Mailman-Version: 2.1.7 Precedence: list Reply-To: ALT Devel discussion list List-Id: ALT Devel discussion list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 17 Jun 2006 00:09:10 -0000 Archived-At: List-Archive: List-Post: --vj77qGokqwYdeLil Content-Type: text/plain; charset=us-ascii Content-Disposition: inline ----- Forwarded message from rss2mail2 ----- DSO memory waste II at 15-06-2006 08:12:37 http://udrepper.livejournal.com/11056.html [...] The third question/comment was why --as-needed isn't just always used. This is just as stupid as always use hidden symbols visibility via the new gcc options like certain distributions do it now for KDE. Both these methods change the ABI of a program sooner or later. Obviously, default hidden visibility prevents symbols from being exported unless specified otherwise. This means it'll break some code and the appropriate visibility attributes have to be added and then new binaries have to be provided. That's nothing a sane person should do. Similarly for --as-needed. The linked-in DSO form a predictable search scope for symbol lookups. Removing a DSO will change the search scope and some lookups will suddenly find a different definition or will fail. This will only affect symbol lookups performed dynamically via dlsym() but it has happened. Fortunately this is a rare occurrence but nevertheless reason enough to not use --as-needed explicitly. Add the option to the Makefiles in the the right places, it's not hard. I seem to remember that somebody said this would create problems with libtool. Well, too bad. I've said all along the libtool of today is one of the biggest hindrances of development and deployment and shouldn't be used. When we wrote the first libtool version it was only meant to iron over the minor differences between various ELF tools. Since then it has been hijacked by those idiots who wanted to support the moronic dynamic linking methods used on winblowz and hpsux. Ever since that happened libtool is nothing but a problem for sane ELF platforms and should be avoided [1]. So, just avoid using libtool and link normally with the gcc driver. Then using --as-needed is no problem at all. [1] Including the wrappers around dlopen() and dlsym() which are completely unnecessary on Linux and just make programs slow and bloated. ----- End forwarded message ----- --vj77qGokqwYdeLil Content-Type: application/pgp-signature Content-Disposition: inline -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.2.2 (GNU/Linux) iD8DBQFEk0hWfBKgtDjnu0YRAgABAKCDFvHup91Ckqkvvh4UxfILwpA4RgCffTvj KZWuoDcgayxtqc3nn7stCq8= =Zdax -----END PGP SIGNATURE----- --vj77qGokqwYdeLil--