Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 432962 - Upgrading php slot breaks /usr/lib64/apache2/modules/libphp5.so symlink after removing the old slot
Summary: Upgrading php slot breaks /usr/lib64/apache2/modules/libphp5.so symlink after...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: AMD64 Linux
: Normal minor (vote)
Assignee: PHP Bugs
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2012-08-27 12:09 UTC by Sergey S. Starikoff
Modified: 2016-01-28 14:52 UTC (History)
1 user (show)

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 Sergey S. Starikoff 2012-08-27 12:09:00 UTC
During today's system update I've seen the php update (from 5.3.8 to 5.4.6).
After update complete, I've tryed to make a check of my sites with new php.
And find, that:
# /etc/init.d/apache2 restart
 * apache2 has detected an error in your setup:
apache2: Syntax error on line 155 of /etc/apache2/httpd.conf: Syntax error on line 4 of /etc/apache2/modules.d/70_mod_php5.conf: Cannot load /usr/lib64/apache2/modules/libphp5.so into server: /usr/lib64/apache2/modules/libphp5.so: cannot open shared object file: No such file or directory
 * ERROR: apache2 failed to stop

Following analyse showed, that:
# file /usr/lib64/apache2/modules/libphp5.so
/usr/lib64/apache2/modules/libphp5.so: broken symbolic link to `/usr/lib64/php5.3/apache2/libphp5.so'

# emerge -1 dev-lang/php

solved the issue.

$ emerge --info
Portage 2.1.11.9 (default/linux/amd64/10.0, gcc-4.5.4, glibc-2.15-r2, 3.3.8-gentoo x86_64)
=================================================================
System uname: Linux-3.3.8-gentoo-x86_64-AMD_Athlon-tm-_II_X2_250_Processor-with-gentoo-2.1
Timestamp of tree: Mon, 27 Aug 2012 04:15:01 +0000
app-shells/bash:          4.2_p37
dev-java/java-config:     2.1.11-r3
dev-lang/python:          2.7.3-r2, 3.2.3
dev-util/cmake:           2.8.7-r5
dev-util/pkgconfig:       0.27
sys-apps/baselayout:      2.1-r1
sys-apps/openrc:          0.9.8.4
sys-apps/sandbox:         2.5
sys-devel/autoconf:       2.13, 2.68
sys-devel/automake:       1.9.6-r3, 1.11.6
sys-devel/binutils:       2.22-r1
sys-devel/gcc:            4.5.4
sys-devel/gcc-config:     1.7.3
sys-devel/libtool:        2.4-r1
sys-devel/make:           3.82-r3
sys-kernel/linux-headers: 3.4-r2 (virtual/os-headers)
sys-libs/glibc:           2.15-r2
Repositories:

gentoo
    location: /usr/portage
    sync: rsync://gw-1.caotus.ru/gentoo-portage/
    priority: -1000

x-portage
    location: /usr/local/portage
    masters: gentoo
    priority: 0

ABI="amd64"
ACCEPT_KEYWORDS="amd64"
ACCEPT_LICENSE="* -@EULA"
ACCEPT_PROPERTIES="*"
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"
ARCH="amd64"
AUTOCLEAN="yes"
BOOTSTRAP_USE="cxx unicode multilib"
CALLIGRA_FEATURES="kexi words flow plan sheets stage tables krita karbon braindump"
CAMERAS="ptp2"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-march=native -O2 -pipe"
CFLAGS_amd64="-m64"
CFLAGS_x32="-mx32"
CFLAGS_x86="-m32"
CHOST="x86_64-pc-linux-gnu"
CHOST_amd64="x86_64-pc-linux-gnu"
CHOST_x32="x86_64-pc-linux-gnux32"
CHOST_x86="i686-pc-linux-gnu"
CLEAN_DELAY="5"
COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog"
COLLISION_IGNORE="/lib/modules/* *.py[co]"
COLORTERM="Terminal"
CONFIG_PROTECT="/etc /usr/share/gnupg/qualified.txt /var/bind"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/php/apache2-php5.3/ext-active/ /etc/php/apache2-php5.4/ext-active/ /etc/php/cgi-php5.3/ext-active/ /etc/php/cgi-php5.4/ext-active/ /etc/php/cli-php5.3/ext-active/ /etc/php/cli-php5.4/ext-active/ /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=native -O2 -pipe"
C_INCLUDE_PATH="/usr/lib64/oracle/10.2.0.3/client/include"
DBUS_SESSION_BUS_ADDRESS="unix:abstract=/tmp/dbus-QdFkwcayNp,guid=a7a579f34dbe49b938dfb72a503afe1b"
DEFAULT_ABI="amd64"
DESKTOP_SESSION="xfce"
DISPLAY=":0.0"
DISTDIR="/usr/portage/distfiles"
EDITOR="/usr/bin/vi"
ELIBC="glibc"
EMERGE_DEFAULT_OPTS="--ask --verbose --autounmask=n"
EMERGE_WARNING_DELAY="10"
EPREFIX=""
EROOT="/"
FCFLAGS="-O2 -pipe"
FEATURES="assume-digests binpkg-logs buildsyspkg config-protect-if-modified distlocks ebuild-locks fixlafiles news parallel-fetch parse-eapi-ebuild-head protect-owned sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch"
FETCHCOMMAND="wget -t 3 -T 60 --passive-ftp -O "${DISTDIR}/${FILE}" "${URI}""
FETCHCOMMAND_RSYNC="rsync -avP "${URI}" "${DISTDIR}/${FILE}""
FETCHCOMMAND_SFTP="bash -c "x=\${2#sftp://} ; host=\${x%%/*} ; port=\${host##*:} ; host=\${host%:*} ; [[ \${host} = \${port} ]] && port=22 ; exec sftp -P \${port} \"\${host}:/\${x#*/}\" \"\$1\"" sftp "${DISTDIR}/${FILE}" "${URI}""
FETCHCOMMAND_SSH="bash -c "x=\${2#ssh://} ; host=\${x%%/*} ; port=\${host##*:} ; host=\${host%:*} ; [[ \${host} = \${port} ]] && port=22 ; exec rsync --rsh=\"ssh -p\${port}\" -avP \"\${host}:/\${x#*/}\" \"\$1\"" rsync "${DISTDIR}/${FILE}" "${URI}""
FFLAGS="-O2 -pipe"
GCC_SPECS=""
GDK_USE_XFT="1"
GENTOO_MIRRORS="http://mirror.yandex.ru/gentoo-distfiles/                 ftp://mirror.yandex.ru/gentoo-distfiles/                 http://ftp.chg.ru/pub/Linux/distributions/gentoo/                 ftp://ftp.chg.ru/pub/Linux/distributions/gentoo/                 http://ftp.corbina.net/pub/Linux/gentoo/                 ftp://ftp.corbina.net/pub/Linux/gentoo/"
GLADE_CATALOG_PATH=":"
GLADE_MODULE_PATH=":"
GLADE_PIXMAP_PATH=":"
GPG_AGENT_INFO="/tmp/gpg-ZIApnu/S.gpg-agent:2298:1"
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"
GRUB_PLATFORMS=""
GSETTINGS_BACKEND="gconf"
HOME="/home/ftn"
INFOPATH="/usr/share/info:/usr/share/gcc-data/x86_64-pc-linux-gnu/4.5.3/info:/usr/share/binutils-data/x86_64-pc-linux-gnu/2.22/info"
INPUT_DEVICES="evdev"
JAVAC="/etc/java-config-2/current-system-vm/bin/javac"
JAVA_HOME="/etc/java-config-2/current-system-vm"
JDK_HOME="/etc/java-config-2/current-system-vm"
KERNEL="linux"
LANG="ru_RU.UTF8"
LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text"
LC_ALL=""
LC_NUMERIC="C"
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
LDFLAGS_amd64="-m elf_x86_64"
LDFLAGS_x32="-m elf32_x86_64"
LDFLAGS_x86="-m elf_i386"
LESS="-R -M --shift 5"
LESSOPEN="|lesspipe %s"
LIBDIR_amd64="lib64"
LIBDIR_amd64_fbsd="lib64"
LIBDIR_n32="lib32"
LIBDIR_n64="lib64"
LIBDIR_o32="lib"
LIBDIR_ppc="lib32"
LIBDIR_ppc64="lib64"
LIBDIR_s390="lib32"
LIBDIR_s390x="lib64"
LIBDIR_sparc32="lib32"
LIBDIR_sparc64="lib64"
LIBDIR_x32="libx32"
LIBDIR_x86="lib32"
LIBDIR_x86_fbsd="lib32"
LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer"
LINGUAS="ru"
LOGNAME="ftn"
LS_COLORS="rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=01;05;37;41:mi=01;05;37;41:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arj=01;31:*.taz=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.zip=01;31:*.z=01;31:*.Z=01;31:*.dz=01;31:*.gz=01;31:*.lz=01;31:*.xz=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.jpg=01;35:*.jpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.axv=01;35:*.anx=01;35:*.ogv=01;35:*.ogx=01;35:*.pdf=00;32:*.ps=00;32:*.txt=00;32:*.patch=00;32:*.diff=00;32:*.log=00;32:*.tex=00;32:*.doc=00;32:*.aac=00;36:*.au=00;36:*.flac=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.axa=00;36:*.oga=00;36:*.spx=00;36:*.xspf=00;36:"
MAIL="/var/mail/ftn"
MAKEOPTS="-j2"
MANPATH="/etc/java-config-2/current-system-vm/man:/usr/local/share/man:/usr/share/man:/usr/share/gcc-data/x86_64-pc-linux-gnu/4.5.3/man:/usr/share/binutils-data/x86_64-pc-linux-gnu/2.22/man:/etc/java-config/system-vm/man/:/usr/lib64/php5.3/man/"
MULTILIB_ABIS="amd64 x86"
MULTILIB_STRICT_DENY="64-bit.*shared object"
MULTILIB_STRICT_DIRS="/lib32 /lib /usr/lib32 /usr/lib /usr/kde/*/lib32 /usr/kde/*/lib /usr/qt/*/lib32 /usr/qt/*/lib /usr/X11R6/lib32 /usr/X11R6/lib"
MULTILIB_STRICT_EXEMPT="(perl5|gcc|gcc-lib|binutils|eclipse-3|debug|portage|udev)"
NETBEANS="apisupport cnd groovy gsf harness ide identity j2ee java mobility nb php profiler soa visualweb webcommon websvccommon xml"
NLS_LANG="russian_cis.cl8iso8859p5"
OLDPWD="/home/ftn/work/Телефония/adressbook"
OPENGL_PROFILE="xorg-x11"
ORACLE_HOME="/usr/lib64/oracle/10.2.0.3/client"
PAGER="/usr/bin/less"
PATH="/usr/local/bin:/usr/bin:/bin:/opt/bin:/usr/x86_64-pc-linux-gnu/gcc-bin/4.5.3:~/bin"
PHP_TARGETS="php5-3"
PKGDIR="/usr/portage/packages"
PORTAGE_ARCHLIST="ppc sparc64-freebsd ppc-openbsd x86-openbsd ppc64 x86-winnt x86-fbsd ppc-aix alpha arm x86-freebsd s390 amd64 arm-linux x86-macos x64-openbsd ia64-hpux hppa x86-netbsd ppc64-linux x86-cygwin amd64-linux ia64-linux x86 sparc-solaris x64-freebsd sparc64-solaris x86-linux x64-macos sparc m68k-mint ia64 mips ppc-macos x86-interix hppa-hpux amd64-fbsd x64-solaris m68k sh x86-solaris sparc-fbsd"
PORTAGE_BINHOST_CHUNKSIZE="3000"
PORTAGE_BIN_PATH="/usr/lib64/portage/bin"
PORTAGE_COMPRESS_EXCLUDE_SUFFIXES="css gif htm[l]? jp[e]?g js pdf png"
PORTAGE_CONFIGROOT="/"
PORTAGE_DEBUG="0"
PORTAGE_DEPCACHEDIR="/var/cache/edb/dep"
PORTAGE_ELOG_CLASSES="log warn error"
PORTAGE_ELOG_MAILFROM="portage@localhost"
PORTAGE_ELOG_MAILSUBJECT="[portage] ebuild log for ${PACKAGE} on ${HOST}"
PORTAGE_ELOG_MAILURI="root"
PORTAGE_ELOG_SYSTEM="save_summary echo"
PORTAGE_FETCH_CHECKSUM_TRY_MIRRORS="5"
PORTAGE_FETCH_RESUME_MIN_SIZE="350K"
PORTAGE_GID="250"
PORTAGE_GPG_SIGNING_COMMAND="gpg --sign --digest-algo SHA256 --clearsign --yes --default-key "${PORTAGE_GPG_KEY}" --homedir "${PORTAGE_GPG_DIR}" "${FILE}""
PORTAGE_INST_GID="0"
PORTAGE_INST_UID="0"
PORTAGE_OVERRIDE_EPREFIX=""
PORTAGE_PYM_PATH="/usr/lib64/portage/pym"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"
PORTAGE_RSYNC_RETRIES="-1"
PORTAGE_SYNC_STALE="30"
PORTAGE_TMPDIR="/var/tmp"
PORTAGE_VERBOSE="1"
PORTAGE_WORKDIR_MODE="0700"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/portage"
PORT_LOGDIR_CLEAN="find "${PORT_LOGDIR}" -type f ! -name "summary.log*" -mtime +7 -delete"
PRELINK_PATH_MASK="/usr/lib64/libfreebl3.so:/usr/lib64/libnssdbm3.so:/usr/lib64/libsoftokn3.so"
PROFILE_ONLY_VARIABLES="ARCH ELIBC KERNEL USERLAND"
PWD="/home/ftn"
PYTHONDONTWRITEBYTECODE="1"
PYTHON_TARGETS="python3_2 python2_7"
QT_GRAPHICSSYSTEM="raster"
RESUMECOMMAND="wget -c -t 3 -T 60 --passive-ftp -O "${DISTDIR}/${FILE}" "${URI}""
RESUMECOMMAND_RSYNC="rsync -avP "${URI}" "${DISTDIR}/${FILE}""
RESUMECOMMAND_SSH="bash -c "x=\${2#ssh://} ; host=\${x%%/*} ; port=\${host##*:} ; host=\${host%:*} ; [[ \${host} = \${port} ]] && port=22 ; exec rsync --rsh=\"ssh -p\${port}\" -avP \"\${host}:/\${x#*/}\" \"\$1\"" rsync "${DISTDIR}/${FILE}" "${URI}""
ROOT="/"
ROOTPATH="/opt/bin:/usr/x86_64-pc-linux-gnu/gcc-bin/4.5.4"
RPMDIR="/usr/portage/rpm"
RUBYOPT="-rauto_gem"
RUBY_TARGETS="ruby18 ruby19"
SESSION_MANAGER="local/ftn.caotus.ru:@/tmp/.ICE-unix/2293,unix/ftn.caotus.ru:/tmp/.ICE-unix/2293"
SHELL="/bin/bash"
SHLVL="3"
SSH_AGENT_PID="2298"
SSH_AUTH_SOCK="/tmp/gpg-STpHtf/S.gpg-agent.ssh"
SYMLINK_LIB="yes"
SYNC="rsync://gw-1.caotus.ru/gentoo-portage/"
TERM="xterm"
TNS_ADMIN="/etc/oracle/"
UNINSTALL_IGNORE="/lib/modules/*"
USE="X a52 ac3 acl alsa amd64 avi berkdb bold bzip2 cdr cli consolekit cracklib crypt cups cxx dbus djvu dri dvd flac fortran gdbm gif gtk iconv jpeg jpeg2k lock mmx modules mp3 mudflap multilib ncurses nls nptl ogg openmp pam pcre pdf png policykit pppd qt3support readline session sse sse2 ssl tcpd thunar tiff udev unicode utf8 vorbis xcb xulrunner 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" CALLIGRA_FEATURES="kexi words flow plan sheets stage tables krita karbon braindump" 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="evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" LINGUAS="ru" PHP_TARGETS="php5-3" PYTHON_TARGETS="python3_2 python2_7" RUBY_TARGETS="ruby18 ruby19" USERLAND="GNU" VIDEO_CARDS="radeon" 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"
USER="ftn"
USERLAND="GNU"
USE_EXPAND="ALSA_CARDS ALSA_PCM_PLUGINS APACHE2_MODULES APACHE2_MPMS CALLIGRA_FEATURES CAMERAS COLLECTD_PLUGINS CROSSCOMPILE_OPTS CURL_SSL DRACUT_MODULES DVB_CARDS ELIBC FCDSL_CARDS FFTOOLS FOO2ZJS_DEVICES FRITZCAPI_CARDS GPSD_PROTOCOLS GRUB_PLATFORMS INPUT_DEVICES KERNEL LCD_DEVICES LIBREOFFICE_EXTENSIONS LINGUAS LIRC_DEVICES MISDN_CARDS NETBEANS_MODULES NGINX_MODULES_HTTP NGINX_MODULES_MAIL OFED_DRIVERS OPENMPI_FABRICS OPENMPI_OFED_FEATURES OPENMPI_RM PHP_TARGETS PYTHON_TARGETS QEMU_SOFTMMU_TARGETS QEMU_USER_TARGETS RUBY_TARGETS SANE_BACKENDS USERLAND VIDEO_CARDS VOICEMAIL_STORAGE XFCE_PLUGINS XTABLES_ADDONS"
USE_EXPAND_HIDDEN="CROSSCOMPILE_OPTS ELIBC KERNEL USERLAND"
USE_ORDER="env:pkg:conf:defaults:pkginternal:repo:env.d"
VBOX_APP_HOME="/usr/lib64/virtualbox"
VIDEO_CARDS="radeon"
WINDOWID="54525956"
XAUTHORITY="/home/ftn/.Xauthority"
XDG_CONFIG_DIRS="/etc/xdg:/etc/xdg"
XDG_DATA_DIRS="/usr/local/share:/usr/share:/usr/share"
XDG_MENU_PREFIX="xfce-"
XDG_SESSION_COOKIE="61b16b728b2c2559e6cf4af600003741-1346043418.459796-108351076"
XSESSION="Xfce4"
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"
_="/usr/bin/emerge"
Comment 1 Ole Markus With (RETIRED) gentoo-dev 2012-08-27 15:12:50 UTC
Are you sure you installed both with apache2 USE flag?

eselect php should be able to fix the symlinks.
Comment 2 Sergey S. Starikoff 2012-08-28 06:13:55 UTC
(In reply to comment #1)
> Are you sure you installed both with apache2 USE flag?
Yes, I'm sure.
apache2 USE flag was turned on and wasn't changed.

> eselect php should be able to fix the symlinks.
Because my world list contains not slotted, but general dev-lang/php (so, after installation php-5.4 previous version php-5.3 is uninstalled) symlink is to be updated after installation of php-5.4.
Comment 3 Ole Markus With (RETIRED) gentoo-dev 2012-08-28 07:43:05 UTC
(In reply to comment #2)
> (In reply to comment #1)
> > eselect php should be able to fix the symlinks.
> Because my world list contains not slotted, but general dev-lang/php (so,
> after installation php-5.4 previous version php-5.3 is uninstalled) symlink
> is to be updated after installation of php-5.4.

So you unmerged php:5.3 or ran --depclean?

There is no magic that considers if you installed php or php:slot. You need to take care of your symlinks using eselect just like with any other similar package. 

Automagically fixing the symlinks is also not the way to go since it would change config without the user explicitly asking for it.

What I could do is add a warning that the unmerge breaks the symlink, but I would not put a high pri on such a feature.
Comment 4 Sergey S. Starikoff 2012-08-28 09:05:48 UTC
(In reply to comment #3)
> What I could do is add a warning that the unmerge breaks the symlink, but I
> would not put a high pri on such a feature.

Adding some warning to elog message about broken symlink on unmerge looks to be a solution.
Comment 5 Ole Markus With (RETIRED) gentoo-dev 2012-08-29 13:13:03 UTC
(In reply to comment #4)
> (In reply to comment #3)
> > What I could do is add a warning that the unmerge breaks the symlink, but I
> > would not put a high pri on such a feature.
> 
> Adding some warning to elog message about broken symlink on unmerge looks to
> be a solution.

Committed a revbump that should warn about these issues.
Comment 6 Sergey S. Starikoff 2012-08-31 05:33:45 UTC
(In reply to comment #5)
> Committed a revbump that should warn about these issues.
I've thought for a time.
It's just workaround and not a good solution.

I've reproduced issue.

Start point:

# grep "dev-lang/php" /var/lib/portage/world
dev-lang/php
# eselect php list apache2
  [1]   php5.3 *
  [2]   php5.4

Note active version of php.

Action:

emerge --depclean
...
>>> These are the packages that would be unmerged:

 dev-lang/php
    selected: 5.3.15 
   protected: none 
     omitted: 5.4.6 

Done so.

Result:
# eselect php list apache2
  [1]   php5.4

No active php-interpreter apache2 module.
php now is is broken.

To my mind correct solution of this issue is to add --depclean checking about deleteing of active versions of eselect-managed applications.
Similiarly like it is done for dev-lang/python (some time after stabilization of 3.2 slot I've used 3.1 as active one, emerge --depclean find it as omitted and not protected, but it wasn't ordered for uninstall because of result of additional check (matching value on result of eselect python list)).

Correct portage's behaviour is to skip uninstalling of active verisions of applications (in case of reported issue prior to uninstalling of php:5.3 by --depclean user must switch on new version of php interpreter).
Comment 7 Ole Markus With (RETIRED) gentoo-dev 2012-09-03 11:35:11 UTC
(In reply to comment #6)
> (In reply to comment #5)
> > Committed a revbump that should warn about these issues.
> I've thought for a time.
> It's just workaround and not a good solution.
> 
> I've reproduced issue.
> 
> No active php-interpreter apache2 module.
> php now is is broken.
> 

Well. In my opinion, you broke it. You should really know that php 5.3 is still active and during the depclean list review, you should spot that it is about to be removed.

And you can also avoid this problem by adding the 5.3 slot to @world

> To my mind correct solution of this issue is to add --depclean checking
> about deleteing of active versions of eselect-managed applications.
> Similiarly like it is done for dev-lang/python (some time after
> stabilization of 3.2 slot I've used 3.1 as active one, emerge --depclean
> find it as omitted and not protected, but it wasn't ordered for uninstall
> because of result of additional check (matching value on result of eselect
> python list)).
> 

Have you seen actual code for this? Or are you assuming?
Python is a bad example because Portage has checks explicitly for the current python interpreter [1]

> Correct portage's behaviour is to skip uninstalling of active verisions of
> applications (in case of reported issue prior to uninstalling of php:5.3 by
> --depclean user must switch on new version of php interpreter).

File a feature bug about this to the Portage guys.

[1] http://git.overlays.gentoo.org/gitweb/?p=proj/portage.git;a=blob;f=pym/_emerge/unmerge.py;h=b46b89cb8bcaea57f756c192ee36d6fce077e64e;hb=HEAD#l331
Comment 8 Michael Weber (RETIRED) gentoo-dev 2013-08-19 09:09:30 UTC
This is not fixed.

workaround: eselect php cleanup
Comment 9 Martin 2013-08-25 20:57:03 UTC
I've just suffered this today for upgrading php5.4 -> php5.5 and running a depclean.

Apache2 failed with the symlink /usr/lib64/apache2/modules/libphp5.so pointing to a no longer existing /usr/lib64/php5.4/apache2/libphp5.so

The dumb fix was to correct the symlink.

"depclean" did the right thing in removing the old php5.4. Without any user intervention:

eselect php list apache2
  [1]   php5.5 *


So... The symlink is overlooked?...

Regards,
Martin
Comment 10 Michael Orlitzky gentoo-dev 2016-01-28 14:52:37 UTC
This should be fixed in the latest 5.6 and 7.0 ebuilds:

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ef0386227889557b516d86fd395417b20aa5c4a1

Now, when you depclean the old slot, we run `eselect php cleanup` in its pkg_postrm() phase. That notices that the old symlink is dead and will attempt to "upgrade" the symlink to a working slot.