Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 357857 - eselect opengl set does not work if /usr/lib64 is a symlink
Summary: eselect opengl set does not work if /usr/lib64 is a symlink
Status: RESOLVED WONTFIX
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: AMD64 Linux
: Normal minor (vote)
Assignee: Gentoo X packagers
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2011-03-07 23:16 UTC by Andreas Plesch
Modified: 2018-06-08 05:43 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Andreas Plesch 2011-03-07 23:16:04 UTC
On my system /usr/lib64 is a symlink to /disk/fels/d3/usr/lib64 which is on the mounted disk. eselect opengl set nvidia stopped working after putting the symlink in place. It does not create the proper libGL.so* symlinks anymore in /usr/lib, without providing an error message.

I can make it work by using the --prefix option, eg. 
eselect opengl set nvidia --prefix=/disk/fels/d3/usr/lib64

Reproducible: Always

Steps to Reproduce:
1.make /usr/lib64 a symlink to the real directory.
2.try to use eselect opengl set
3.observe how symlinks in  /usr/lib are not created.
Actual Results:  
 symlinks in  /usr/lib are not created.

Expected Results:  
 symlinks in  /usr/lib are created.

Portage 2.1.9.25 (default/linux/amd64/10.0/desktop, gcc-4.3.4, glibc-2.11.3-r0, 2.6.36-gentoo-r5 x86_64)
=================================================================
System uname: Linux-2.6.36-gentoo-r5-x86_64-AMD_Opteron-tm-_Processor_256-with-gentoo-1.12.14
Timestamp of tree: Mon, 07 Mar 2011 13:00:01 +0000
app-shells/bash:     4.1_p9
dev-java/java-config: 1.3.7-r1, 2.1.11-r3
dev-lang/python:     2.4.6, 2.5.4-r3, 2.6.6-r2, 3.1.3-r1
dev-util/cmake:      2.8.1-r2
sys-apps/baselayout: 1.12.14-r1
sys-apps/sandbox:    2.4
sys-devel/autoconf:  2.13, 2.65-r1
sys-devel/automake:  1.4_p6::<unknown repository>, 1.5::<unknown repository>, 1.6.3::<unknown repository>, 1.7.9-r2, 1.8.5-r3::<unknown repository>, 1.9.6-r2::<unknown repository>, 1.10.3, 1.11.1
sys-devel/binutils:  2.20.1-r1
sys-devel/gcc:       3.4.6-r2::<unknown repository>, 4.1.2, 4.3.4, 4.4.5
sys-devel/gcc-config: 1.4.1
sys-devel/libtool:   2.2.10
sys-devel/make:      3.81-r2
virtual/os-headers:  2.6.36.1 (sys-kernel/linux-headers)
ACCEPT_KEYWORDS="amd64"
ACCEPT_LICENSE="* -@EULA dlj-1.1 skype-eula PUEL @EULA"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-march=opteron -O2 -pipe -msse3"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/share/config /usr/share/gnupg/qualified.txt"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/env.d/java/ /etc/eselect/postgresql /etc/fonts/fonts.conf /etc/gconf /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo /etc/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d /etc/texmf/web2c"
CXXFLAGS="-march=opteron -O2 -pipe -msse3"
DISTDIR="/usr/portage/distfiles"
FEATURES="assume-digests binpkg-logs distlocks fail-clean fixlafiles fixpackages news parallel-fetch protect-owned sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch"
GENTOO_MIRRORS="http://mirrors.med.harvard.edu/gentoo ftp://mirror.datapipe.net/gentoo http://gentoo.mirrors.tds.net/gentoo http://gentoo.cites.uiuc.edu/pub/gentoo/"
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
MAKEOPTS="-j3"
PKGDIR="/usr/portage/packages"
PORTAGE_CONFIGROOT="/"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/var/lib/layman/enlightenment /var/lib/layman/science /var/lib/layman/sage-on-gentoo /usr/local/portage"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="X a52 aac acl acpi alsa amd64 arts berkdb bluetooth branding bzip2 cairo cdr cli consolekit cpudetection cracklib crypt cups cxx dbus dri dts dv dvd dvdr dvdread emacs emboss encode exif fam firefox flac flash font-server fortran gd gdbm gdu gif gpm gtk iconv ieee1394 imap ipv6 jpeg kde lcms ldap libnotify live mad mikmod mjpeg mmx mng modules mp3 mp4 mpeg mudflap multilib ncurses nls nptl nptlonly odbc ogg opengl openmp pam pango pcre pdf perl plotutils png policykit postgres ppds pppd python qt qt3support qt4 readline samba sdl semantic-desktop session smp spell sse sse2 ssl startup-notification svg sysfs tcpd threads tiff truetype udev unicode usb v4l v4l2 vorbis wmf x264 xcb xinerama xml xorg xulrunner xv xvid zlib" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mmap_emul mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" CAMERAS="ptp2" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf superstar2 timing tsip tripmate tnt ubx" INPUT_DEVICES="mouse keyboard evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" PHP_TARGETS="php5-3" RUBY_TARGETS="ruby18" USERLAND="GNU" VIDEO_CARDS="nv nvidia vesa fbdev" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account" 
Unset:  CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, FFLAGS, INSTALL_MASK, LANG, LC_ALL, LINGUAS, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS
Comment 1 Chí-Thanh Christopher Nguyễn gentoo-dev 2011-03-08 22:25:31 UTC
Do we want to support such a configuration?

Reporter: Is there a reason you use symlinks instead of bind-mounts?
Comment 2 Tomáš Chvátal (RETIRED) gentoo-dev 2011-03-08 22:48:55 UTC
Dunno I never thought of this usage really.

We could support it tho...

@Mgorny: what do you think?
Comment 3 Michał Górny archtester Gentoo Infrastructure gentoo-dev Security 2011-03-09 04:52:21 UTC
(In reply to comment #2)
> Dunno I never thought of this usage really.
> 
> We could support it tho...
> 
> @Mgorny: what do you think?

We'd have to either don't check for symlinks at all (thus doing our stuff twice for multilib amd64) or providing a complex check for libdirs symlinked one to another. Possible but I think it should eventually go to multilib.bash.
Comment 4 Andreas Plesch 2011-03-09 13:26:30 UTC
(In reply to comment #1)
> Do we want to support such a configuration?
> 
> Reporter: Is there a reason you use symlinks instead of bind-mounts?

The underlying reason for putting /usr/lib64 contents in a non-standard place is that I installed a solid state drive (now that they are more reasonably priced) and wanted to be selective on how I use it.

symlinks were just the obvious (to me) way to do it, and they are easily recognized. Is there a way to specify bind-mounts in /etc/fstab ? Where would I put the bind-mounts in the boot sequence ?
Comment 5 Matt Turner gentoo-dev 2017-01-29 18:29:55 UTC

*** This bug has been marked as a duplicate of bug 330769 ***