Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 286272 - pycups-1.9.46 fails with: '/usr/bin/python' isn't valid symlink
Summary: pycups-1.9.46 fails with: '/usr/bin/python' isn't valid symlink
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Unspecified (show other bugs)
Hardware: x86 Linux
: High normal (vote)
Assignee: Gentoo Linux bug wranglers
Depends on:
Reported: 2009-09-24 17:34 UTC by qeldroma
Modified: 2009-11-21 23:44 UTC (History)
2 users (show)

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


Note You need to log in before you can comment on or make changes to this bug.
Description qeldroma 2009-09-24 17:34:55 UTC
Emerging v1.9.45 works, but this one, unfortunately a direct dependency for kde-4.3.1-printing is not compiling.

Perhaps i'll have to mention that i am trying to build a bleeding edge kde-4.3.1-system with a lot of unmasked ebuilds..

I checked the symlink, it's ok:
# ls -l /usr/bin/python*
lrwxrwxrwx 1 root root    9 24. Sep 18:51 /usr/bin/python -> python2.6
lrwxrwxrwx 1 root root    9 24. Sep 12:17 /usr/bin/python2 -> python2.6
-rwxr-xr-x 1 root root 5352 24. Sep 10:10 /usr/bin/python2.6
lrwxrwxrwx 1 root root   17 24. Sep 12:17 /usr/bin/python-config -> python-config-2.6
-rwxr-xr-x 1 root root 1200 24. Sep 10:10 /usr/bin/python-config-2.6
-rwxr-xr-x 1 root root 9520 24. Sep 10:09 /usr/bin/python-wrapper

Reproducible: Always

Steps to Reproduce:
emerge it

Actual Results:  

Expected Results:  
emerge works ;)

 # emerge pycups
Calculating dependencies... done!

>>> Verifying ebuild manifests

>>> Emerging (1 of 1) dev-python/pycups-1.9.46
 * pycups-1.9.46.tar.bz2 RMD160 SHA1 SHA256 size ;-) ...                                                                                [ ok ]
 * checking ebuild checksums ;-) ...                                                                                                    [ ok ]
 * checking auxfile checksums ;-) ...                                                                                                   [ ok ]
 * checking miscfile checksums ;-) ...                                                                                                  [ ok ]
>>> Unpacking source...
>>> Unpacking pycups-1.9.46.tar.bz2 to /var/tmp/portage/dev-python/pycups-1.9.46/work
>>> Source unpacked in /var/tmp/portage/dev-python/pycups-1.9.46/work
>>> Preparing source in /var/tmp/portage/dev-python/pycups-1.9.46/work/pycups-1.9.46 ...
>>> Source prepared.
>>> Configuring source in /var/tmp/portage/dev-python/pycups-1.9.46/work/pycups-1.9.46 ...
>>> Source configured.
>>> Compiling source in /var/tmp/portage/dev-python/pycups-1.9.46/work/pycups-1.9.46 ...
 * ERROR: dev-python/pycups-1.9.46 failed.
 * Call stack:
 *     , line   49:  Called src_compile
 *             environment, line 3285:  Called distutils_src_compile
 *             environment, line  817:  Called python_execute_function 'building'
 *             environment, line 2816:  Called validate_PYTHON_ABIS
 *             environment, line 3943:  Called die
 * The specific snippet of code:
 *           die "'/usr/bin/python' isn't valid symlink";
 *  The die message:
 *   '/usr/bin/python' isn't valid symlink
 * If you need support, post the topmost build error, and the call stack if relevant.
 * A complete build log is located at '/var/tmp/portage/dev-python/pycups-1.9.46/temp/build.log'.
 * The ebuild environment file is located at '/var/tmp/portage/dev-python/pycups-1.9.46/temp/environment'.

>>> Failed to emerge dev-python/pycups-1.9.46, Log file:

>>>  '/var/tmp/portage/dev-python/pycups-1.9.46/temp/build.log'

# emerge --info
Portage (default/linux/x86/2008.0, gcc-4.3.2, glibc-2.9_p20081201-r2, 2.6.28-gentoo-r5_core2duo i686)
System uname: Linux-2.6.28-gentoo-r5_core2duo-i686-Intel-R-_Core-TM-2_Duo_CPU_E7300_@_2.66GHz-with-gentoo-
Timestamp of tree: Thu, 24 Sep 2009 07:00:02 +0000
distcc 3.1 i686-pc-linux-gnu [disabled]
app-shells/bash:     4.0_p28
dev-java/java-config: 2.1.8-r1
dev-lang/python:     2.6.2-r1
dev-util/cmake:      2.6.4
sys-apps/sandbox:    1.6-r2
sys-devel/autoconf:  2.13, 2.63-r1
sys-devel/automake:  1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10.2
sys-devel/binutils:  2.18-r3
sys-devel/gcc-config: 1.4.1
sys-devel/libtool:   2.2.6a
virtual/os-headers:  2.6.27-r2
CFLAGS="-O2 -march=i686 -pipe"
CONFIG_PROTECT="/etc /usr/kde/3.5/env /usr/kde/3.5/share/config /usr/kde/3.5/shutdown /usr/share/config"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/revdep-rebuild /etc/sandbox.d /etc/splash /etc/terminfo /etc/udev/rules.d"
CXXFLAGS="-O2 -march=i686 -pipe"
FEATURES="distlocks fixpackages parallel-fetch protect-owned sandbox sfperms strict unmerge-orphans userfetch"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"
Comment 1 Arfrever Frehtes Taifersar Arahesis (RETIRED) gentoo-dev 2009-09-24 18:23:20 UTC
(In reply to comment #0)
> I checked the symlink, it's ok:
> # ls -l /usr/bin/python*
> lrwxrwxrwx 1 root root    9 24. Sep 18:51 /usr/bin/python -> python2.6

It's obviously incorrect. /usr/bin/python must be a symlink to python-wrapper.
You should run e.g.: eselect python set python2.6
Comment 2 zvasylvv 2009-10-15 08:19:34 UTC
I got same error ('/usr/bin/python' isn't valid symlink) while tried to update a setuptools. IMHO this error does not depend on package. I guess it happens after user updated a python (ie 2.5->2.6). After emerge has been finished, some amount of recommendation is shown. One of them says that run of python-updater is highly required. Its sets /usr/bin/python symlink to /usr/bin/python2.6, while correct value is python-wrapper.

Could maintainers of python check this test case?
Comment 3 edoceo 2009-10-25 15:57:32 UTC
I saw this issue today as well, while upgrading a dev-python/pycrypto.
I wish the error message was more, clear and maybe pointed me to `eselect`

However, when I ran `eselect python list` it showed I had 2.6 selected
lithium / # eselect python list
Available python interpreters:
  [1]   python2.4
  [2]   python2.6 *

As a symlink to 2.6 not to python-wrapper
lithium / # stat /usr/bin/python
  File: `/usr/bin/python' -> `python2.6'

Then I simply re-selected 2.6 and all was well
lithium / # eselect python set python2.6
lithium / # stat /usr/bin/python
  File: `/usr/bin/python' -> `python-wrapper'

None of the updates (for python, pycrypto or eselect) told me to do this in their emerge/ebuild outputs.
Comment 4 Decibels 2009-11-21 23:44:25 UTC
reselecting python 2.6 worked for me even though already had it selected and was the only one to select. Was emerging 'sip' when got this error.