Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 481174 - sys-libs/tevent-0.9.18 with sys-libs/talloc-2.0.7 - file collisions in /usr/include/pytalloc.h /usr/share/man/man3/talloc.3.bz2 /usr/lib/python2.7/site-packages/talloc.so
Summary: sys-libs/tevent-0.9.18 with sys-libs/talloc-2.0.7 - file collisions in /usr/i...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Library (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Patrick Lauer
URL:
Whiteboard:
Keywords:
: 483404 (view as bug list)
Depends on:
Blocks:
 
Reported: 2013-08-15 14:25 UTC by Jeroen Roovers (RETIRED)
Modified: 2016-01-11 21:51 UTC (History)
5 users (show)

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


Attachments
build.log (delete_this_file,58.13 KB, text/plain)
2013-12-15 06:08 UTC, vice
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Jeroen Roovers (RETIRED) gentoo-dev 2013-08-15 14:25:07 UTC
Raising the dep to sys-libs/talloc-2.0.8 apparently fixes this. Or was this already fixed elsewhere and did I get lucky by upgrading talloc?
Comment 1 Patrick Lauer gentoo-dev 2013-08-16 03:09:19 UTC
I cannot reproduce with these versions in stable amd64 chroot.
Comment 2 Jeroen Roovers (RETIRED) gentoo-dev 2013-09-02 17:57:30 UTC
*** Bug 483404 has been marked as a duplicate of this bug. ***
Comment 3 Joe Breuer 2013-09-06 07:05:16 UTC
I *do* experience this issue with sys-libs/talloc-2.0.8 in conjunction with sys-libs/tevent-0.9.19:

# equery f talloc
 * Searching for talloc ...
 * Contents of sys-libs/talloc-2.0.8:
/usr
/usr/include
/usr/include/pytalloc.h
/usr/include/talloc.h

## tevent file list from ebuild package phase ##
./
./usr/
./usr/share/
./usr/share/man/
./usr/share/man/man3/
./usr/share/man/man3/talloc.3.bz2
./usr/lib64/
./usr/lib64/libpytalloc-util.so.2.0.8
./usr/lib64/libtevent.so
./usr/lib64/libpytalloc-util.so.2
./usr/lib64/libtevent.so.0
./usr/lib64/python2.7/
./usr/lib64/python2.7/site-packages/
./usr/lib64/python2.7/site-packages/talloc.so
./usr/lib64/python2.7/site-packages/tevent.py
./usr/lib64/python2.7/site-packages/tevent.pyo
./usr/lib64/python2.7/site-packages/_tevent.so
./usr/lib64/python2.7/site-packages/tevent.pyc
./usr/lib64/libtalloc.so.2.0.8
./usr/lib64/libtevent.so.0.9.19
./usr/lib64/libtalloc.so.2
./usr/lib64/pkgconfig/
./usr/lib64/pkgconfig/tevent.pc
./usr/include/
./usr/include/tevent.h
./usr/include/pytalloc.h


As suggested in bug 483404 I've tried with sys-libs/talloc-2.0.8-r1, this only installs /usr/include/talloc.h, not /usr/include/pytalloc.h. => the conflict is resolved.


It looks to me like tevent-0.9.19 should block against talloc-2.0.8 and require >=talloc-2.0.8-r1, this in turn requires talloc-2.0.8-r1 to be stabilized.

I'm on amd64 (stable).
Comment 4 Joe Breuer 2013-09-06 07:13:06 UTC
forgot to mention: both sys-libs/talloc-2.0.8 and sys-libs/tevent-0.9.19 were built during the same emerge @world with a tree as of this morning.

# emerge --info
Portage 2.1.12.2 (default/linux/amd64/13.0/desktop/kde, gcc-4.6.3, glibc-2.15-r3, 3.8.13-gentoo x86_64)
=================================================================
System uname: Linux-3.8.13-gentoo-x86_64-Intel-R-_Core-TM-_i7_CPU_970_@_3.20GHz-with-gentoo-2.2
KiB Mem:    12300304 total,   4854580 free
KiB Swap:   16777212 total,  16777212 free
Timestamp of tree: Fri, 06 Sep 2013 05:15:01 +0000
ld GNU ld (GNU Binutils) 2.23.1
distcc 3.1 x86_64-pc-linux-gnu [enabled]
ccache version 3.1.9 [disabled]
app-shells/bash:          4.2_p45
dev-java/java-config:     2.1.12-r1
dev-lang/python:          2.7.5-r2, 3.2.5-r2
dev-util/ccache:          3.1.9
dev-util/cmake:           2.8.10.2-r2
dev-util/pkgconfig:       0.28
sys-apps/baselayout:      2.2
sys-apps/openrc:          0.11.8
sys-apps/sandbox:         2.6-r1
sys-devel/autoconf:       2.13, 2.69
sys-devel/automake:       1.10.3, 1.11.6, 1.12.6, 1.13.4
sys-devel/binutils:       2.23.1
sys-devel/gcc:            4.6.3
sys-devel/gcc-config:     1.7.3
sys-devel/libtool:        2.4-r1
sys-devel/make:           3.82-r4
sys-kernel/linux-headers: 3.9 (virtual/os-headers)
sys-libs/glibc:           2.15-r3
Repositories: gentoo LOCAL jmbreuer steam-overlay
ACCEPT_KEYWORDS="amd64"
ACCEPT_LICENSE="* -@EULA"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-march=corei7 -mtune=corei7 -O2 -pipe -momit-leaf-frame-pointer"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/share/config /usr/share/gnupg/qualified.txt /var/lib/hsqldb"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /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 /usr/share/X11/xkb"
CXXFLAGS="-march=corei7 -mtune=corei7 -O2 -pipe -momit-leaf-frame-pointer"
DISTDIR="/storage/portage/distfiles"
EMERGE_DEFAULT_OPTS="--with-bdeps y --jobs=64 --load-average=16"
FCFLAGS="-O2 -pipe"
FEATURES="assume-digests binpkg-logs buildpkg collision-protect config-protect-if-modified distcc distlocks ebuild-locks fixlafiles merge-sync news parallel-fetch preserve-libs protect-owned sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox"
FFLAGS="-O2 -pipe"
GENTOO_MIRRORS="http://de-mirror.org/distro/gentoo/ http://gentoo.mneisen.org/ http://gentoo.wheel.sk/ http://gentoo.mirror.pw.edu.pl/"
LANG="en_US.UTF-8"
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
MAKEOPTS="--jobs=64 --load-average=18"
PKGDIR="/storage/portage/packages/x64cd"
PORTAGE_CONFIGROOT="/"
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_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/portage /var/lib/layman/jmbreuer /var/lib/layman/steam"
SYNC="rsync://rsync.de.gentoo.org/gentoo-portage"
USE="X Xaw3d a52 aac acl acpi alsa amd64 berkdb bluetooth bluray branding bzip2 cairo cdda cdr chardet cjk cli consolekit cracklib crypt css cups curl cxx dbus declarative dga dri dts dv dvd dvdr embedded emboss encode exif expat fam fame fastcgi ffmpeg firefox flac flash fluidsynth fontconfig foomaticdb fortran gcj gd gdbm gif gimp glitz glut gnutls gphoto2 gpm gstreamer gtk gtk3 iconv icu ieee1394 imap imlib innodb iphone ipod ipv6 java jce jpeg kde kerberos kipi kpathsea lame lastfm lcms ldap leim libgda libnotify libsamplerate lm_sensors lzo mad mbox mikmod mjpeg mms mmx mmxext mng modplug modules mono mp3 mp4 mpeg mtp mudflap mule multilib ncurses network network-cron nis nls nptl nsplugin nspluginwrapper nvidia offensive ogg openexr opengl openmp opus pam pango pcap pcre pda pdf phonon plasma plotutils png policykit postscript ppds qt3support qt4 rdesktop readline real rtc samba sasl scanner sdk sdl semantic-desktop session shout slang slp smp sndfile socks5 sound sox spell sqlite sse sse2 ssl ssse3 startup-notification subversion svg tcpd theora threads tiff tk truetype trusted udev udisks unicode upower usb vdpau vim-syntax vnc vorbis webdav wma wmf wxwidgets x264 xanim xcb xcomposite xiph xml xscreensaver xv xvid xvmc zlib" ABI_X86="64" 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" APACHE2_MODULES="authn_core authz_core socache_shmcb unixd 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 author" 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="keyboard mouse wacom evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" LINGUAS="en de" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php5-5" PYTHON_SINGLE_TARGET="python2_7" PYTHON_TARGETS="python2_7 python3_2" RUBY_TARGETS="ruby19 ruby18" SANE_BACKENDS="net" USERLAND="GNU" VIDEO_CARDS="nvidia" 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, INSTALL_MASK, LC_ALL, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, USE_PYTHON
Comment 5 Joe Breuer 2013-09-06 07:40:18 UTC
Sorry, was a bit too quick up there :-(


Now it's getting weird.

Output of emerge -bvt -1 -j1 =sys-libs/talloc-2.0.8-r1:
...
>>> Installing (1 of 1) sys-libs/talloc-2.0.8-r1
 * checking 1 files for package collisions
>>> Merging sys-libs/talloc-2.0.8-r1 to /
--- /usr/
--- /usr/include/
>>> /usr/include/talloc.h
>>> Safely unmerging already-installed instance...
No package files given... Grabbing a set.
--- replaced obj /usr/include/talloc.h
<<<          obj /usr/include/pytalloc.h
--- replaced dir /usr/include
--- replaced dir /usr
>>> Regenerating /etc/ld.so.cache...
>>> Original instance of package unmerged safely.
>>> sys-libs/talloc-2.0.8-r1 merged.
...

BUT: equery f talloc:
 * Searching for talloc ...
 * Contents of sys-libs/talloc-2.0.8-r1:
/usr
/usr/include
/usr/include/pytalloc.h
/usr/include/talloc.h


... and the conflict is still present.


I've proceeded to temporarily uninstall talloc altogether (emerge -Ca talloc).

After this, talloc-2.0.8-r1 DOES install both files:

>>> Installing (1 of 1) sys-libs/talloc-2.0.8-r1
 * checking 2 files for package collisions
>>> Merging sys-libs/talloc-2.0.8-r1 to /
--- /usr/
--- /usr/include/
>>> /usr/include/pytalloc.h
>>> /usr/include/talloc.h
>>> sys-libs/talloc-2.0.8-r1 merged.

 * Contents of sys-libs/talloc-2.0.8-r1:
/usr
/usr/include
/usr/include/pytalloc.h
/usr/include/talloc.h


On a hunch, I tried to emerge talloc with USE="-python"; *this* causes talloc to only install talloc.h (not pytalloc.h).

... ah. But tevent requires talloc with +python (so it got rebuilt between the 'only one file installed' and 'other file in the way' described above). I'm not sure how to proceed from here; I do not see a configurative way to get talloc/tevent to install.

Both talloc and tevent are non-optional dependencies of net-fs/samba-3.6.16 here. I'll have to mask it for now and leave samba-3.6.12 installed.


I'll look at whether samba-3.6.12 can be rebuilt and whether it works at all after the world update is through. As far as I can see, libtalloc.so is missing from my system now.
Comment 6 Joe Breuer 2013-09-06 09:58:16 UTC
Hm. None of the binaries or libraries of samba-3.6.12 directly use libtalloc.so (as determined with ldd), perhaps only the header is required.

smbclient at least still works normally; as does smb:// browsing with dolphin.

samba-3.6.12 also rebuilds and the client runs correctly on my system, which now only has talloc-2.0.8 installing both header files [but nothing else].


During the samba build, I noticed that it builds static versions of talloc and tevent for its use.

Why does it depend on the talloc/tevent packages at all?
Comment 7 Joe Breuer 2013-10-08 07:53:46 UTC
I'm still bitten by this with current amd64 stable samba-3.6.19, talloc-2.0.8, tevent-0.9.19.


(In reply to Patrick Lauer from comment #1)
> I cannot reproduce with these versions in stable amd64 chroot.

Could you please post the exact versions and USE flags of talloc, tevent and samba from the system where this is not a problem?

Also, please post the file lists for those talloc and tevent versions.
Comment 8 Mirko Guenther 2013-12-13 17:54:20 UTC
I've the same problem observed on two different machines:

* This package will overwrite one or more files that may belong to other
 * packages (see list below).
 * 
 * Detected file collision(s):
 * 
 * 	/usr/include/pytalloc.h
 * 	/usr/share/man/man3/talloc.3.bz2
 * 	/usr/lib64/python2.7/site-packages/talloc.so
 * 
 * Searching all installed packages for file collisions...
 * 
 * Press Ctrl-C to Stop
 * 
 * sys-libs/talloc-2.0.8-r1:0::gentoo
 * 	/usr/include/pytalloc.h
 * 	/usr/lib64/python2.7/site-packages/talloc.so
 * 	/usr/share/man/man3/talloc.3.bz2
 * 
 * Package 'sys-libs/tevent-0.9.20' NOT merged due to file collisions. If
 * necessary, refer to your elog messages for the whole content of the
 * above message.

equery f sys-libs/talloc
 * Searching for talloc in sys-libs ...
 * Contents of sys-libs/talloc-2.0.8-r1:
/usr
/usr/include
/usr/include/pytalloc.h
/usr/include/talloc.h
/usr/lib64
/usr/lib64/libpytalloc-util.so -> libpytalloc-util.so.2.0.8
/usr/lib64/libpytalloc-util.so.2 -> libpytalloc-util.so.2.0.8
/usr/lib64/libpytalloc-util.so.2.0.8
/usr/lib64/libtalloc.so -> libtalloc.so.2.0.8
/usr/lib64/libtalloc.so.2 -> libtalloc.so.2.0.8
/usr/lib64/libtalloc.so.2.0.8
/usr/lib64/pkgconfig
/usr/lib64/pkgconfig/pytalloc-util.pc
/usr/lib64/pkgconfig/talloc.pc
/usr/lib64/python2.7
/usr/lib64/python2.7/site-packages
/usr/lib64/python2.7/site-packages/talloc.so
/usr/share
/usr/share/man
/usr/share/man/man3
/usr/share/man/man3/talloc.3.bz2

equery u sys-libs/talloc
[ Legend : U - final flag setting for installation]
[        : I - package is installed with flag     ]
[ Colors : set, unset                             ]
 * Found these USE flags for sys-libs/talloc-2.0.8-r1:
 U I
 - - compat                         : Enable extra compatibility stuff
 + + python                         : Add optional support/bindings for the Python language
 - - python_single_target_python2_6 : Build for Python 2.6 only
 + + python_single_target_python2_7 : Build for Python 2.7 only
 - - python_targets_python2_6       : Build with Python 2.6
 + + python_targets_python2_7       : Build with Python 2.7
Comment 9 Forza 2013-12-14 16:44:10 UTC
I get the exact same file collisions with sys-libs/tevent-0.9.20 and sys-libs/talloc-2.0.8 or 2.1.0. 

Just a note, /usr/include/pytalloc.h is of different size between the two packages.
Comment 10 vice 2013-12-15 06:08:31 UTC
Created attachment 365376 [details]
build.log

Here ist the complete build.log:

Feel free to delete this log if its too long.
Comment 11 vice 2013-12-15 06:26:18 UTC
emerging tevent-0.9.20 and talloc-2.0.8 or talloc-2.0.8-r1 failed.
Please see log above.
emerging tevent-0.9.20 and talloc-2.1.0 worked for me!
Comment 12 Nik Warburton 2013-12-15 20:54:31 UTC
(In reply to vice from comment #11)
> emerging tevent-0.9.20 and talloc-2.0.8 or talloc-2.0.8-r1 failed.
> Please see log above.
> emerging tevent-0.9.20 and talloc-2.1.0 worked for me!

I just came across this problem (amd64 system). Like you said, tevent-0.9.20 wouldn't install with talloc-2.0.8 but after installing talloc-2.1.0, tevent-0.9.20 installed without any issues.
Comment 13 Lars Wendler (Polynomial-C) (RETIRED) gentoo-dev 2013-12-16 08:47:32 UTC
+  16 Dec 2013; Lars Wendler <polynomial-c@gentoo.org> tevent-0.9.20.ebuild:
+  Raised dependency on sys-libs/talloc to version 2.1.0 for bug #494394.
+

So can anyone please confirm that installing >=tevent-0.9.19 together with =talloc-2.1.0 is sufficient to get rid of this problem?
If yes I gonna open a stabilization bug for =talloc-2.1.0
Comment 14 Lars Wendler (Polynomial-C) (RETIRED) gentoo-dev 2013-12-16 08:57:49 UTC
Ah sorry, I added the wrong bug # in the changelog. Fixed that ;)
Comment 15 Jeroen Roovers (RETIRED) gentoo-dev 2013-12-16 19:37:56 UTC
(In reply to vice from comment #10)
> Feel free to delete this log if its too long.

That's not how bugzilla works.
Comment 16 Lars Wendler (Polynomial-C) (RETIRED) gentoo-dev 2014-01-17 20:13:55 UTC
Still waiting for some comment wether this bug is fixed now or not...
Comment 17 Joe Breuer 2014-01-24 05:48:24 UTC
Sorry, this got stuck in my browser from a couple of days ago :-(


Allright, I just tested both ways on one of my systems that was affected by the original report.

* Building sys-libs/tevent-0.9.19 and (unmasked) sys-libs/talloc-2.1.0 works correctly. [talloc-2.1.0 has parallel build issues, but that's another matter.]

* Building sys-libs/tevent-0.9.19 and sys-libs/talloc-2.0.8 (both current stable) leads to the collision of /usr/include/pytalloc.h as originally reported.

* Building sys-libs/tevent-0.9.19 and (unmasked) sys-libs/talloc-2.1.0 again to revert to a consistent system works correctly.


Also, I noticed that talloc-2.0.8 only installs two header files (one of them the one causing the conflict) - see the file list in comment #3; whereas talloc-2.1.0 installs a lot more:

 * Contents of sys-libs/talloc-2.1.0:
/usr
/usr/include
/usr/include/pytalloc.h
/usr/include/talloc.h
/usr/lib64
/usr/lib64/libpytalloc-util.so -> libpytalloc-util.so.2.1.0
/usr/lib64/libpytalloc-util.so.2 -> libpytalloc-util.so.2.1.0
/usr/lib64/libpytalloc-util.so.2.1.0
/usr/lib64/libtalloc.so -> libtalloc.so.2.1.0
/usr/lib64/libtalloc.so.2 -> libtalloc.so.2.1.0
/usr/lib64/libtalloc.so.2.1.0
/usr/lib64/pkgconfig
/usr/lib64/pkgconfig/pytalloc-util.pc
/usr/lib64/pkgconfig/talloc.pc
/usr/lib64/python2.7
/usr/lib64/python2.7/site-packages
/usr/lib64/python2.7/site-packages/talloc.so
/usr/share
/usr/share/man
/usr/share/man/man3
/usr/share/man/man3/talloc.3.bz2


In conclusion: The conflict which is the topic of this report is fixed (here) by unmasking talloc-2.1.0.
But talloc-2.1.0 installs significantly more files than talloc-2.0.8, so perhaps there is another issue that should be addressed.
Comment 18 Víctor Ostorga (RETIRED) gentoo-dev 2016-01-11 21:51:55 UTC
As of sys-libs/tevent-0.9.26 with sys-libs/talloc-2.1.5  , this is no longer an issue