Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 196267 - sys-cluster/heartbeat links to libxml2, but doesn't depend on it
Summary: sys-cluster/heartbeat links to libxml2, but doesn't depend on it
Status: RESOLVED WONTFIX
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: New packages (show other bugs)
Hardware: All Linux
: High normal (vote)
Assignee: Gentoo Cluster Team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2007-10-18 09:18 UTC by Mike Williams
Modified: 2011-10-18 17:29 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 Mike Williams 2007-10-18 09:18:07 UTC
Hi,

In sharing out binary packages between multiple machines I came across the issue of heartbeat linking against libxml2, but without a dependency to it, causing broken dynamic linking.

For example:
# ldd /usr/bin/cl_status
        libhbclient.so.1 => /usr/lib/libhbclient.so.1 (0x0000392582fa8000)
        libplumb.so.1 => /usr/lib/libplumb.so.1 (0x00003925830b4000)
        libpils.so.1 => /usr/lib/libpils.so.1 (0x00003925831e5000)
        libglib-2.0.so.0 => /usr/lib/libglib-2.0.so.0 (0x00003925832f0000)
        libbz2.so.1 => /lib/libbz2.so.1 (0x00003925834a3000)
        libxml2.so.2 => /usr/lib/libxml2.so.2 (0x00003925835b3000)
        libz.so.1 => /lib/libz.so.1 (0x0000392583826000)
        libm.so.6 => /lib/libm.so.6 (0x000039258393c000)
        libc.so.6 => /lib/libc.so.6 (0x0000392583a94000)
        libuuid.so.1 => /lib/libuuid.so.1 (0x0000392583cd1000)
        librt.so.1 => /lib/librt.so.1 (0x0000392583dd5000)
        libltdl.so.3 => /usr/lib/libltdl.so.3 (0x0000392583ede000)
        libdl.so.2 => /lib/libdl.so.2 (0x0000392583fe8000)
        /lib64/ld-linux-x86-64.so.2 (0x0000094453b5d000)
        libpthread.so.0 => /lib/libpthread.so.0 (0x00003925840ec000)
# equery belongs libxml2.so.2
[ Searching for file(s) libxml2.so.2 in *... ]
dev-libs/libxml2-2.6.28 (/usr/lib64/libxml2.so.2 -> libxml2.so.2.6.28)

Then on machineOne:
machineOne # equery depends -D dev-libs/libxml2
[ Searching for packages depending on dev-libs/libxml2... ]
dev-db/postgresql-8.2.4-r1 (xml? dev-libs/libxml2)
  app-admin/ulogd-1.23-r1 (postgres? dev-db/postgresql)
  net-analyzer/snort-2.6.1.3-r1 (postgres? dev-db/postgresql)
dev-libs/libxslt-1.1.20-r1 (>=dev-libs/libxml2-2.6.27)
  dev-db/postgresql-8.2.4-r1 (xml? dev-libs/libxslt)
net-misc/neon-0.26.3 (!expat? dev-libs/libxml2)
  dev-util/subversion-1.3.2-r4 (!nowebdav? >=net-misc/neon-0.26)

Whereas machineTwo:
machineTwo # equery depends -D libxml2
[ Searching for packages depending on libxml2... ]
net-misc/neon-0.26.3 (!expat? dev-libs/libxml2)
  dev-util/subversion-1.3.2-r4 (!nowebdav? >=net-misc/neon-0.26)

I have the expat and xml USE flags set.
machineTwo doesn't have postgresql installed (or ulogd, or snort) so I've had to put dev-libs/libxml2 in world to stop it being removed.


machineOne # emerge --info
Portage 2.1.3.9 (hardened/amd64/multilib, gcc-3.4.6, glibc-2.5-r4, 2.6.20-hardened-r10 x86_64)
=================================================================
System uname: 2.6.20-hardened-r10 x86_64 AMD Opteron(tm) Processor 246
Timestamp of tree: Sun, 07 Oct 2007 22:00:01 +0000
app-shells/bash:     3.2_p17
dev-lang/python:     2.4.4-r5
dev-python/pycrypto: 2.0.1-r6
sys-apps/baselayout: 1.12.9-r2
sys-apps/sandbox:    1.2.17
sys-devel/autoconf:  2.61-r1
sys-devel/automake:  1.9.6-r2, 1.10
sys-devel/binutils:  2.17-r1
sys-devel/gcc-config: 1.3.16
sys-devel/libtool:   1.5.24
virtual/os-headers:  2.6.21
ACCEPT_KEYWORDS="amd64"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-march=opteron -O2 -pipe"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc"
CONFIG_PROTECT_MASK="/etc/env.d /etc/gconf /etc/revdep-rebuild /etc/terminfo"
CXXFLAGS="-march=opteron -O2 -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoconfig buildpkg distlocks metadata-transfer parallel-fetch sandbox sfperms strict unmerge-orphans userfetch"
GENTOO_MIRRORS="http://distfiles.gentoo.org http://distro.ibiblio.org/pub/linux/distributions/gentoo"
PKGDIR="/usr/portage/packages/opteron"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --delete-after --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages --filter=H_**/files/digest-*"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="amd64 apache2 bash-completion berkdb cgi cjk cli cracklib crypt ctype curl expat extensions extraengine fastbuild fastcgi force-cgi-redirect ftp gd gdbm gencertdaily gpm hardened hardenedphp hash hpn iconv idn imap ioemu iproute2 ipv6 jpeg justify memlimit midi mpm-worker mysql mysqli ncurses nls noauthcram nptl nptlonly pam pcre pdo perl pic png posix postgres pygrub python readline reflection ruby screen session simplexml snmp soap sockets spell spl sqlite sse sse2 ssl status tcpd threads tidy tokenizer truetype unicode urandom xml xmlreader xmlrpc xmlwriter xorg xsl zip zlib" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mulaw multi null plug rate route share shm softvol" ELIBC="glibc" INPUT_DEVICES="mouse keyboard" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" USERLAND="GNU"
Unset:  CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LANG, LC_ALL, LDFLAGS, LINGUAS, MAKEOPTS, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, PORTDIR_OVERLAY


machineTwo # emerge --info
Portage 2.1.3.9 (hardened/amd64/multilib, gcc-3.4.6, glibc-2.5-r4, 2.6.18-xen x86_64)
=================================================================
System uname: 2.6.18-xen x86_64 Dual-Core AMD Opteron(tm) Processor 2214
Timestamp of tree: Sun, 07 Oct 2007 22:00:01 +0000
app-shells/bash:     3.2_p17
dev-lang/python:     2.4.4-r4
dev-python/pycrypto: 2.0.1-r6
sys-apps/baselayout: 1.12.9-r2
sys-apps/sandbox:    1.2.17
sys-devel/autoconf:  2.61
sys-devel/automake:  1.9.6-r2, 1.10
sys-devel/binutils:  2.17-r1
sys-devel/gcc-config: 1.3.16
sys-devel/libtool:   1.5.24
virtual/os-headers:  2.6.21
ACCEPT_KEYWORDS="amd64"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-march=opteron -O2 -pipe"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc"
CONFIG_PROTECT_MASK="/etc/env.d /etc/gconf /etc/revdep-rebuild /etc/terminfo"
CXXFLAGS="-march=opteron -O2 -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoconfig buildpkg distlocks metadata-transfer parallel-fetch sandbox sfperms strict unmerge-orphans userfetch"
GENTOO_MIRRORS="http://distfiles.gentoo.org http://distro.ibiblio.org/pub/linux/distributions/gentoo"
PKGDIR="/usr/portage/packages/opteron"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --delete-after --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages --filter=H_**/files/digest-*"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/portage"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="amd64 apache2 bash-completion berkdb cgi cjk cli cracklib crypt ctype curl expat extraengine fastbuild fastcgi force-cgi-redirect ftp gd gdbm gencertdaily gpm hardened hardenedphp hash hpn iconv idn imap ioemu iproute2 ipv6 jpeg justify memlimit midi mpm-worker mysql mysqli ncurses nls noauthcram nptl nptlonly pam pcre pdo perl pic png posix postgres pygrub python readline reflection ruby screen session simplexml snmp soap sockets spell spl sqlite sse sse2 ssl status tcpd threads tidy tokenizer truetype unicode urandom xml xmlreader xmlrpc xmlwriter xorg xsl zip zlib" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mulaw multi null plug rate route share shm softvol" ELIBC="glibc" INPUT_DEVICES="mouse keyboard" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" USERLAND="GNU"
Unset:  CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LANG, LC_ALL, LDFLAGS, LINGUAS, MAKEOPTS, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS

# emerge heartbeat -pvk

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

Calculating dependencies... done!
[binary   R   ] sys-cluster/heartbeat-2.0.7-r2  USE="snmp -doc -ldirectord -management"

Total: 1 package (1 reinstall), Size of downloads: 0 kB

# grep heartbeat /etc/portage/*
/etc/portage/package.keywords:sys-cluster/heartbeat     x86

(besides the dependency issue it works perfectly for my V1 usage, and has done for months)
Comment 1 Kacper Kowalik (Xarthisius) (RETIRED) gentoo-dev 2011-10-18 17:29:25 UTC
+  18 Oct 2011; Kacper Kowalik <xarthisius@gentoo.org> -heartbeat-1.2.5.ebuild,
+  -heartbeat-1.2.5-r1.ebuild, -heartbeat-2.0.7-r2.ebuild,
+  -files/heartbeat-2.0.7-update-resources-failcount.patch,
+  -heartbeat-2.0.8.ebuild, -files/heartbeat-2.0.8-asneeded.patch,
+  -files/heartbeat-2.0.8-crm-assert.patch,
+  -files/heartbeat-2.0.8-crm-leaks.patch, -files/heartbeat-2.0.8-delay.patch,
+  -files/heartbeat-2.0.8-glibc.patch, -files/heartbeat-2.0.8-install_fix.patch,
+  -heartbeat-3.0.4-r1.ebuild:
+  Drop ancient and unusable versions of heartbeat-{1,2} since we have
+  heartbeat-3 stable