From owner-freebsd-questions@FreeBSD.ORG Mon Jul 17 21:17:11 2006 Return-Path: X-Original-To: freebsd-questions@freebsd.org Delivered-To: freebsd-questions@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 3529616A4E2 for ; Mon, 17 Jul 2006 21:17:11 +0000 (UTC) (envelope-from bob@tania.servebbs.org) Received: from mail2.panix.com (mail2.panix.com [166.84.1.73]) by mx1.FreeBSD.org (Postfix) with ESMTP id 0730C43D64 for ; Mon, 17 Jul 2006 21:17:06 +0000 (GMT) (envelope-from bob@tania.servebbs.org) Received: from mailspool3.panix.com (mailspool3.panix.com [166.84.1.78]) by mail2.panix.com (Postfix) with ESMTP id 733979D841; Mon, 17 Jul 2006 17:17:06 -0400 (EDT) Received: from [192.168.1.100] (pool-71-247-67-41.nycmny.east.verizon.net [71.247.67.41]) by mailspool3.panix.com (Postfix) with ESMTP id 1FD10AF0261; Mon, 17 Jul 2006 17:17:01 -0400 (EDT) Message-ID: <44BBFE49.4080602@tania.servebbs.org> Date: Mon, 17 Jul 2006 17:16:57 -0400 From: Bob User-Agent: Thunderbird 1.5 (X11/20060628) MIME-Version: 1.0 To: Mike Meyer References: <44BA98A9.9040903@tamara-b.org> <17594.43423.928991.591165@bhuda.mired.org> <44BACE63.9030800@tania.servebbs.org> <17595.42791.720165.478108@bhuda.mired.org> In-Reply-To: <17595.42791.720165.478108@bhuda.mired.org> X-Enigmail-Version: 0.94.0.0 OpenPGP: id=B2BF9879 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Cc: freebsd-questions@freebsd.org Subject: Re: LinkLib Issues In freebsd Lazarus X-BeenThere: freebsd-questions@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: User questions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 17 Jul 2006 21:17:11 -0000 Mike Meyer wrote: > > It's *really* unusual for a port to install a binary tarball if the > source is available. Most ports that install binaries are for > commercial products for which source isn't available. > In this case, the unusual rules. Here are the contents of the "ports" binary.i386-freebsd.tar demo.tar.gz doc-pdf.tar.gz install.sh > > A port is basically a Makefile plus at least some text files. The > ports tree includes a lot of make machinery to > fetch/extract/patch/build/etc. based on that. See the porters handbook > at http://www.freebsd.org/doc/en_US.ISO8859-1/books/porters-handbook/index.html >> for details. Thanks Mike. I have been involved in a parallel discussion on the fpc-devel list, and have discovered a few facts which will impact the manufacture of a freepascal Lazarus port. In fact, what I have learned will impact the usability of FPC on freepascal itself. The "problem" which initiated this thread was the "wrong naming" of some libraries. Well, it turns out that this renaming was done mid-stream by the freebsd development team, and not by the freepascal folks. It seems that from freebsd 6.0 to freebsd 6.1 (the one I am using) library names were arbitrarily changed. The ones I ran into were libgdk, libgtk, and libglib. In all previous versions (prior to 6.1) of freebsd, the lib versions 1.2 were named libgdk12, libgtk12, and libglib12 they were changed in 6.1 to libgdk-12, libgtk-12, and libglib-12 respectively. I wonder how many more library names were changed? This is a real blow to any third party software developer, who's software will likely start to bomb on freebsd6.1, where it ran just fine on 6.0 BIG problem! If I compile a program on my 6.1 system, which makes any dynamic calls to these libraries (and possibly others as yet unknown), that executable will ONLY run on freebsd 6.1, and bomb on all prior versions. My "fix" of patching the freepascal 2.0.2, or your method of sym-linking, while fixing the local problem of compiling Lazarus, breaks all portability to previous freebsd installs. This is a bad thing the freebsd folks have done! There are some dirty work-arounds, and according to the fpc developers, they will be implementing some new tools to deal with this in fpc-2.0.4, who's rc2 has just been released. I can see making these kinds of changes from a 5.x version to a 6.x version, as bad as even that would be, but to make such a change from within the 6.x branch is pretty inconsiderate IMHO. Given the above, it would be senseless to create a "port" of lazarus, which would require a "port" of the "patched" fpc sources, (as a dependency), and then have a development system which was tied to a particular version of freebsd. Bob