From mboxrd@z Thu Jan 1 00:00:00 1970 Path: main.gmane.org!not-for-mail From: Rob Browning Newsgroups: gmane.lisp.guile.devel Subject: Re: libguile-ltdl Date: Thu, 07 Oct 2004 10:11:32 -0500 Sender: guile-devel-bounces+guile-devel=m.gmane.org@gnu.org Message-ID: <87acuyy34r.fsf@trouble.defaultvalue.org> References: <16729.59272.304160.381196@byrd.xs4all.nl> <87zn3admwt.fsf@trouble.defaultvalue.org> <16740.30007.983868.166131@byrd.xs4all.nl> <871xgb1fga.fsf@trouble.defaultvalue.org> <16740.62645.775190.377226@byrd.xs4all.nl> NNTP-Posting-Host: deer.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: sea.gmane.org 1097162026 30935 80.91.229.6 (7 Oct 2004 15:13:46 GMT) X-Complaints-To: usenet@sea.gmane.org NNTP-Posting-Date: Thu, 7 Oct 2004 15:13:46 +0000 (UTC) Cc: guile-devel@gnu.org Original-X-From: guile-devel-bounces+guile-devel=m.gmane.org@gnu.org Thu Oct 07 17:13:36 2004 Return-path: Original-Received: from lists.gnu.org ([199.232.76.165]) by deer.gmane.org with esmtp (Exim 3.35 #1 (Debian)) id 1CFZxY-00036Z-00 for ; Thu, 07 Oct 2004 17:13:36 +0200 Original-Received: from localhost ([127.0.0.1] helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.33) id 1CFa4I-0005YL-Ix for guile-devel@m.gmane.org; Thu, 07 Oct 2004 11:20:34 -0400 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.33) id 1CFa4B-0005YA-3b for guile-devel@gnu.org; Thu, 07 Oct 2004 11:20:27 -0400 Original-Received: from exim by lists.gnu.org with spam-scanned (Exim 4.33) id 1CFa49-0005Xk-Ti for guile-devel@gnu.org; Thu, 07 Oct 2004 11:20:26 -0400 Original-Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.33) id 1CFa49-0005Xh-Px for guile-devel@gnu.org; Thu, 07 Oct 2004 11:20:25 -0400 Original-Received: from [66.93.216.237] (helo=defaultvalue.org) by monty-python.gnu.org with esmtp (Exim 4.34) id 1CFZww-00053C-33 for guile-devel@gnu.org; Thu, 07 Oct 2004 11:12:58 -0400 Original-Received: from trouble.defaultvalue.org (omen.defaultvalue.org [192.168.1.1]) by defaultvalue.org (Postfix) with ESMTP id 44E293FC9; Thu, 7 Oct 2004 10:12:56 -0500 (CDT) Original-Received: by trouble.defaultvalue.org (Postfix, from userid 1000) id 08244410A8; Thu, 7 Oct 2004 10:11:33 -0500 (CDT) Original-To: hanwen@xs4all.nl In-Reply-To: <16740.62645.775190.377226@byrd.xs4all.nl> (Han-Wen Nienhuys's message of "Thu, 7 Oct 2004 09:48:05 +0200") User-Agent: Gnus/5.1006 (Gnus v5.10.6) Emacs/21.3 (gnu/linux) X-BeenThere: guile-devel@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "Developers list for Guile, the GNU extensibility library" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guile-devel-bounces+guile-devel=m.gmane.org@gnu.org Xref: main.gmane.org gmane.lisp.guile.devel:4226 X-Report-Spam: http://spam.gmane.org/gmane.lisp.guile.devel:4226 Han-Wen Nienhuys writes: > what is versioned dlopen The idea would be to add a function that would let you specify the soname ("interface number") of the library you want to open, and that function would then use the same algorithm that ld.so does when trying to find a suitable library. With the current dlopen, you can't do that. If you say dlopen("libfoo"), you have no control over whether you might get libfoo.so.4, libfoo.so.12, or something else. So you have to resort to other means, like putting the version in the library name, i.e. libfoo4 (or libguile-srfi-srfi-4-v-1). Then you can say dlopen("libfoo4") and make sure you get libfoo "version" 4, but this isn't as flexible as saying dlopen_ext("libfoo", 4), which ideally would find the most recent version of libfoo satisfying interface 4 (just as ld.so does). Of course we haven't gotten to the point of seeing what would be involved here, especially cross-platform. The most basic approach (for at least linux/elf) would probably involve a search based on the expected libtool soname. > and for which GUILE release is it desired? No particular release in mind yet, though in the past we had talked about it for 1.8. However, now that we've worked around the issue by putting the soname/version in the name for all of the libs that we expect to dlopen, it's not as urgent, though it might be nice for other projects that don't want to have to mangle their library names. -- Rob Browning rlb @defaultvalue.org and @debian.org; previously @cs.utexas.edu GPG starting 2002-11-03 = 14DD 432F AE39 534D B592 F9A0 25C8 D377 8C7E 73A4 _______________________________________________ Guile-devel mailing list Guile-devel@gnu.org http://lists.gnu.org/mailman/listinfo/guile-devel