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)
+ 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