Why Linux executable googleearth can't find proper libstdc++.so.6 ?

b. f. bf1783 at googlemail.com
Sat Oct 17 21:42:45 UTC 2009

On 10/17/09, Yuri <yuri at rawbw.com> 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:
> 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
.               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})
.       else
.               if ${USE_LINUX:L} == "yes"
.                       if ${OSVERSION} < 800076
.                       else
.                       endif
.               else
IGNORE=         cannot be built: there is no
emulators/linux_base-${USE_LINUX}, perhaps wrong use of USE_LINUX or
.               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


More information about the freebsd-questions mailing list