Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 327171 - media-gfx/exact-image-0.8.1 install fails with USE="swig" due to hardcoded python version
Summary: media-gfx/exact-image-0.8.1 install fails with USE="swig" due to hardcoded py...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: High normal (vote)
Assignee: Markos Chandras (RETIRED)
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2010-07-06 15:36 UTC by Arttu Valo
Modified: 2010-07-08 21:20 UTC (History)
3 users (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 Arttu Valo 2010-07-06 15:36:16 UTC
media-gfx/exact-image-0.8.1 has hardcoded python2.5 in the mkdir'ed install path in api/python/Makefile.

Thus the install will fail with later python versions, as the wrong directory has been created; for example, below the hardcoded python2.5/site-packages has been created by the install script, but install is attempted to python2.6/site-packages as it is the active python version:

INSTALL PERL module objdir/api/perl/ExactImage.so
INSTALL PYTHON module objdir/api/python/_ExactImage.so
install: target `/var/tmp/portage/media-gfx/exact-image-0.8.1/image//usr/lib64/python2.6/site-packages/' is not a directory: No such file or directory
make: *** [install] Error 1
 * ERROR: media-gfx/exact-image-0.8.1 failed:
 *   (no error message)
 * 
 * Call stack:
 *     ebuild.sh, line  48:  Called src_install
 *   environment, line 4498:  Called die
 * The specific snippet of code:
 *       emake DESTDIR="${D}" install || die;

# ls -dl /var/tmp/portage/media-gfx/exact-image-0.8.1/image/usr/lib/python2.5/site-packages
drwxr-xr-x 2 root root 4096  6.7. 18:30 /var/tmp/portage/media-gfx/exact-image-0.8.1/image/usr/lib/python2.5/site-packages
# eselect python list
Available Python interpreters:
  [1]   python2.6 *
  [2]   python3.1
#
Comment 1 Arttu Valo 2010-07-06 16:02:10 UTC
Ok, it's not even simply just the hardcoded python2.5 part which goes wrong. The $(libdir) on the same line before it also gets libdir wrong somewhere earlier, and results in lib when in reality it should give lib64 on this multilib amd64 system.

I'm speaking about this line (second from end in api/python/Makefile):

        $(Q)mkdir -p $(DESTDIR)$(libdir)/python2.5/site-packages/
Comment 2 Thomas Kahle (RETIRED) gentoo-dev 2010-07-06 21:56:41 UTC
I can not reproduce this here. Could you please post your emerge --info, and in particular the values of the USE variable with which you are trying to install?
Comment 3 Arttu Valo 2010-07-07 12:51:42 UTC
~ # emerge --info
Portage 2.2_rc67 (default/linux/amd64/10.0, gcc-4.4.4, glibc-2.11.2-r0, 2.6.33-gentoo-r2 x86_64)
=================================================================
                        System Settings
=================================================================
System uname: Linux-2.6.33-gentoo-r2-x86_64-AMD_Athlon-tm-_64_Processor_3500+-with-gentoo-1.12.13
Timestamp of tree: Mon, 05 Jul 2010 11:45:02 +0000
distcc 3.1 x86_64-pc-linux-gnu [disabled]
ccache version 2.4 [enabled]
app-shells/bash:     4.0_p37
dev-java/java-config: 2.1.11
dev-lang/python:     2.6.5-r2, 3.1.2-r3
dev-util/ccache:     2.4-r7
dev-util/cmake:      2.8.1-r2
sys-apps/baselayout: 1.12.13
sys-apps/sandbox:    2.2
sys-devel/autoconf:  2.13, 2.65
sys-devel/automake:  1.8.5-r4, 1.9.6-r3, 1.10.3, 1.11.1
sys-devel/binutils:  2.20.1-r1
sys-devel/gcc:       4.4.4-r1
sys-devel/gcc-config: 1.4.1
sys-devel/libtool:   2.2.6b
virtual/os-headers:  2.6.30-r1
ACCEPT_KEYWORDS="amd64"
ACCEPT_LICENSE="* -@EULA"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-O2 -march=k8-sse3 -mmmx -m3dnow -msse -msse2 -msse3 -mfpmath=sse -pipe"                                                                          
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/share/X11/xkb /usr/share/config /var/lib/hsqldb"
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="-O2 -march=k8-sse3 -mmmx -m3dnow -msse -msse2 -msse3 -mfpmath=sse -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="assume-digests ccache collision-protect distlocks fixpackages multilib-strict news parallel-fetch preserve-libs protect-owned sandbox sfperms strict unmerge-logs unmerge-orphans userfetch"
GENTOO_MIRRORS="http://trumpetti.atm.tut.fi/gentoo/"
LANG="en_US.utf8"
LDFLAGS="-Wl,-O1"
LINGUAS="en fi"
MAKEOPTS="-j2" 
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/java-overlay /var/lib/layman/science /var/lib/layman/qting-edge /var/lib/layman/kde /home/luser/devel/ownportage"
SYNC="rsync://192.168.0.1/gentoo-portage"
USE="3dnow 3dnowext R X X509 a52 aac aalib abiword accessibility acl acpi ada agg akode akonadi alsa amd64 amd64codecs amr animgif ao aotuv apache2 apm assistant atmo audiofile avahi bazaar berkdb bidi bittorrent bl blas bluetooth bonjour boost bzip2 cairo caps cdaudio cdda cdio cdparanoia cdr chm clearcase cli clucene consolekit corba cpudetection cracklib crypt css cuda cups curl cvs cxx daap darcs dbus dga dia dirac directfb djvu docbook dot dri dts dv dvb dvd dvdr dvdread dvi ebook eds elf emf emovix enca encode exif expat faac faad fam fame ffmpeg fftw firefox flac fluidsynth fontconfig fontforge fortran fpx ftp fuse gadu galago gcrypt gd gdbm geoip ggi gif gimp git glib glitz gmm gmp gnome-keyring gnuplot gnutls gphoto2 gpm gps graphviz groupwise gs gsf gsm gstreamer gtk guile gzip h224 h281 h323 hal haskell hdri html ical icecast iconv icu id3tag idn ieee1394 ilbc imagemagick imap imlib imlib2 iodbc ipv6 irc irda jabber jack jai java java6 javascript jbig jimi jingle joystick jpeg jpeg2k kate kde kerberos keyring kipi kpathsea ladspa lame lapack lasi latex lcms ldap libass libcaca libnotify libproxy libsamplerate libtiger libv4l2 libwww lm_sensors log4j logrotate loop-aes lua luatex lyx lzma lzo mad madwifi matroska mbrola md5sum meanwhile mercurial midi mikmod mime mjpeg mmap mmx mmxext mng modplug modules mono moonlight mozdevelop mp2 mp3 mp4 mpeg mplayer msn mtp mudflap multilib multimedia musepack mysql mzscheme nas ncurses nemesi netjack netmeeting netpbm networkmanager nfs nls nntp nptl nptlonly nsplugin nut nuv objc objc++ objc-gc ocaml octave odbc ogg okular openal opencl openct openexr opengl openmp openxml oscar oss otr pam pango pascal pcre pda pdf perforce perl phonon pkcs11 plasma plotutils png pnm policykit pop portaudio postgres postscript povray pppd ps pvr python q32 qalculate qq qt3 qt3support qt4 quicktime qwt radio radius rar raw rcs rdesktop rdp readline redland reflection reports rle rss rtf ruby samba sametime sasl scanner schroedinger scim sdl sdl-image seamonkey semantic-desktop servletapi session shout silc sip skype slang slp smartcard smi sms sndfile soap socks5 sound speex spell spl sql sqlite sqlite3 sse sse2 sse3 ssh ssl stream subversion svg swig sysfs syslog szip taglib tcl tcpd teletext tetex tga theora threads tiff timezone timidity tk transmitter truetype twolame udev unicode upnp usb v4l v4l2 vaapi vcd vcdinfo vcdx vdpau vdr vga video vnc vorbis vorbis-psy wav wavpack webdav webkit wifi winpopup wlm wma wmf wordperfect wpd wpg x264 xanim xforms xine xml xmlpatterns xmp xorg xpm xprint xrandr xscreensaver xsl xslt xulrunner xv xvid xvmc yahoo yv12 zephyr zeroconf zip zlib zoran zvbi" ALSA_CARDS="hda-intel" 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 auth_digest authn_anon authn_dbd authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache dav dav_fs dav_lock dbd deflate dir disk_cache env expires ext_filter file_cache filter headers ident imagemap include info log_config logio mem_cache mime mime_magic negotiation proxy proxy_ajp proxy_balancer proxy_connect proxy_http rewrite setenvif so speling status unique_id userdir usertrack vhost_alias" ELIBC="glibc" INPUT_DEVICES="evdev joystick keyboard mouse virtualbox vmmouse" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="en fi" LIRC_DEVICES="all" RUBY_TARGETS="ruby18" USERLAND="GNU" VIDEO_CARDS="dummy intel nv nvidia v4l vesa virtualbox" 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, LC_ALL, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS
~ #


~ # ACCEPT_KEYWORDS="~amd64" emerge -pv1 exact-image

These are the packages that would be merged, in order:

Calculating dependencies ... done!
[ebuild  N    ] media-gfx/exact-image-0.8.1  USE="X expat jpeg jpeg2k lcms lua openexr perl png python ruby swig tiff truetype -php" 0 kB

Total: 1 package (1 new), Size of downloads: 0 kB
firstown ~ #
Comment 4 Arttu Valo 2010-07-07 12:59:28 UTC
I've also tried with slightly less aggressive and explicit C/CXXFLAGS (-O2 -march=k8 -pipe), with the last missing USE-flag (USE="php") enabled, and with ccache disabled, and with MAKE_OPTS="-j1". None have any effect.

But still I'd imagine it all has to do with the path, which is clearly not created right.

Furthermore, this is a rather old system (4+ years), which has had python versions starting from around 2.4. Perhaps things have not been getting properly cleaned between python versions over the years? Or perhaps the current python identification only works for and assumes a python version from 2.6+?
Comment 5 Thomas Kahle (RETIRED) gentoo-dev 2010-07-07 14:47:04 UTC
The problem is triggered by USE="swig". I can reproduce it now. Assigning.
Comment 6 Markos Chandras (RETIRED) gentoo-dev 2010-07-08 21:20:16 UTC
Fixed