From owner-freebsd-questions@FreeBSD.ORG Sat Oct 17 21:42:45 2009 Return-Path: Delivered-To: freebsd-questions@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 99860106566B for ; Sat, 17 Oct 2009 21:42:45 +0000 (UTC) (envelope-from bf1783@googlemail.com) Received: from mail-ew0-f218.google.com (mail-ew0-f218.google.com [209.85.219.218]) by mx1.freebsd.org (Postfix) with ESMTP id 24E878FC13 for ; Sat, 17 Oct 2009 21:42:44 +0000 (UTC) Received: by ewy18 with SMTP id 18so2815980ewy.43 for ; Sat, 17 Oct 2009 14:42:44 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=gamma; h=domainkey-signature:mime-version:received:in-reply-to:references :date:message-id:subject:from:to:cc:content-type; bh=YTIERAGNomYOEyFQgQaBzSRvnOXsZU4DwOR8Vt8BJDo=; b=oNoqUapjlS/mAkPFnm0puGCYyb4VyEcjNUsdCxPq3HK2zGj2vwQbqz0162qDFmc2MW SVHdAZMHugQrbUBs9N8Vc9f2GGM8Mny5blDjPh8OQxLw3aNbL5nQsMhuuFnVu/8qC1qD JLrrWZLHnC1sWqmPqoaS8egAh0TVim6m2UDBc= DomainKey-Signature: a=rsa-sha1; c=nofws; d=googlemail.com; s=gamma; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; b=sGoIsbH6Ib/4+xWiN3XVGqc9LNGOtkyjDaLHaBJ4kRbvViuprAO9Dv1DutjdQOvvPh W3eW+TAYK4jT784XInVpGt6FwaVnZ84K1YlgrpUz1toDVX0iB1r1iB8SKY1BTJ2VGost HfkkBYCPbt3HcyDtzftcyf/S1NBGcr9mx0ils= MIME-Version: 1.0 Received: by 10.216.90.14 with SMTP id d14mr1133550wef.30.1255815764188; Sat, 17 Oct 2009 14:42:44 -0700 (PDT) In-Reply-To: <4ADA2901.2020901@rawbw.com> References: <4AD9E780.5070604@rawbw.com> <4ADA2901.2020901@rawbw.com> Date: Sat, 17 Oct 2009 21:42:44 +0000 Message-ID: From: "b. f." To: yuri@rawbw.com Content-Type: text/plain; charset=ISO-8859-1 Cc: freebsd-questions@freebsd.org Subject: Re: Why Linux executable googleearth can't find proper libstdc++.so.6 ? 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: Sat, 17 Oct 2009 21:42:45 -0000 On 10/17/09, Yuri wrote: > b. f. wrote: >> >> That entry also says that Fedora 8 can be used, which was the latest >> Linux base port at the time the entry was made, and the skype port >> Makefile says Fedora Core 6 __or later__ can be used. So presumably >> later Linux base ports will also work: try the most recent Linux base >> emulation port that is available for your platform. >> > > With those lines in /etc/make.conf: > OVERRIDE_LINUX_BASE_PORT=f10 > OVERRIDE_LINUX_NONBASE_PORTS=f10 > everything works. But with f8 there were still problems. Yes, I only said that Fedora 8 probably worked for Skype, not that it had the necessary symbols for the new google-earth. :) > > How would people know that they should set f10? > The port maintainer for google-earth should put the necessary statements into the Makefile for that port in order to ensure that a sufficiently new Linux base port is used. Email him and suggest that he do so. If he doesn't respond, file a PR. > Ideally this should be done my portupgrade. Well, not by portupgrade itself, but by the ports infrastructure, so other ports management tools work as well. > Or, at the very least, there should be a corresponding record in > /usr/pots/UPGRADING. > Record 20090831 mentions f10 in connection with some other port, but not > as a general recommendation. > If you look at /usr/ports/Mk/bsd.port.mk, you will see that Fedora 10 is now the default emulation port on new releases of FreeBSD (I don't know why it isn't on earlier versions: you can ask bsam@ why he chose 800076 as the cutoff, and not some other value. There may have been some feature missing from earlier versions of FreeBSD that was necessary to make emulation work well with the newer Linux software.): # Allow the user to specify another linux_base version. . if defined(OVERRIDE_LINUX_BASE_PORT) . if ${USE_LINUX:L} == yes USE_LINUX= ${OVERRIDE_LINUX_BASE_PORT} . endif . endif # NOTE: when you update the default linux_base version (case "yes"), # don't forget to update the Handbook! . if exists(${PORTSDIR}/emulators/linux_base-${USE_LINUX}) LINUX_BASE_PORT= ${LINUXBASE}/bin/sh:${PORTSDIR}/emulators/linux_base-${USE_LINUX} . else . if ${USE_LINUX:L} == "yes" . if ${OSVERSION} < 800076 LINUX_BASE_PORT= ${LINUXBASE}/etc/fedora-release:${PORTSDIR}/emulators/linux_base-fc4 . else LINUX_BASE_PORT= ${LINUXBASE}/etc/fedora-release:${PORTSDIR}/emulators/linux_base-f10 . endif . else IGNORE= cannot be built: there is no emulators/linux_base-${USE_LINUX}, perhaps wrong use of USE_LINUX or OVERRIDE_LINUX_BASE_PORT . endif . endif So most people will automatically avoid this problem on FreeBSD 8.x, and port maintainers should place additional safeguards in their port Makefiles to ensure that users on earlier supported versions of FreeBSD know what Linux base ports are acceptable. In general, when you read entries in /usr/ports/UPDATING, especially older entries, you should consider if anything has changed since those entries were made that may affect the advice they offer, because committers don't always revise older entries, and they may become stale. b.