Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 409693 - sys-freebsd/freebsd-cddl-9.0 fails to build due to missing libumem.so
Summary: sys-freebsd/freebsd-cddl-9.0 fails to build due to missing libumem.so
Status: RESOLVED FIXED
Alias: None
Product: Gentoo/Alt
Classification: Unclassified
Component: FreeBSD (show other bugs)
Hardware: x86 FreeBSD
: Normal normal
Assignee: Gentoo/BSD Team
URL:
Whiteboard:
Keywords: REGRESSION
Depends on:
Blocks:
 
Reported: 2012-03-25 20:55 UTC by Richard Yao (RETIRED)
Modified: 2012-03-31 03:57 UTC (History)
0 users

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


Attachments
sys-freebsd/freebsd-cddl-9.0 failure build.log (build.log,433.60 KB, text/plain)
2012-03-25 20:55 UTC, Richard Yao (RETIRED)
Details
Fix for issue on Gentoo/FreeBSD 9 (freebsd-cddl-9.0-libpaths.patch,6.63 KB, patch)
2012-03-30 19:22 UTC, Richard Yao (RETIRED)
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Richard Yao (RETIRED) gentoo-dev 2012-03-25 20:55:15 UTC
Created attachment 306645 [details]
sys-freebsd/freebsd-cddl-9.0 failure build.log

Here is the important part:

/usr/lib/gcc/i686-gentoo-freebsd9.0/4.6.2/../../../../i686-gentoo-freebsd9.0/bin/ld: cannot find -lumem

Examination of ZFS Guru shows that FreeBSD has /usr/lib/libumem, which is not present on Gentoo/FreeBSD 9.

# emerge --info
Portage 2.2.0_alpha93 (default/bsd/fbsd/x86/9.0, gcc-4.6.2, freebsd-lib-9.0, 9.0-RELEASE i386)
=================================================================
System uname: FreeBSD-9.0-RELEASE-i386-32bit-ELF
Timestamp of tree: Wed, 21 Mar 2012 22:00:01 +0000
ccache version 3.1.7 [enabled]
app-shells/bash:         4.2_p24
dev-lang/python:         2.7.2-r3, 3.2.2-r1
dev-util/ccache:         3.1.7
dev-util/pkgconfig:      0.26
sys-apps/baselayout:     2.1
sys-apps/openrc:         0.9.9.3
sys-devel/autoconf:      2.68
sys-devel/automake:      1.9.6-r3, 1.11.3
sys-devel/binutils:      2.20.1-r1
sys-devel/gcc:           4.5.3-r2, 4.6.2
sys-devel/gcc-config:    1.5.1-r1
sys-devel/libtool:       2.4.2
sys-devel/make:          3.82-r3
sys-freebsd/freebsd-lib: 9.0 (virtual/os-headers)
Repositories: gentoo local_overlay
Installed sets: 
ACCEPT_KEYWORDS="x86-fbsd ~x86-fbsd"
ACCEPT_LICENSE="* -@EULA"
CBUILD="i686-gentoo-freebsd9.0"
CFLAGS="-O2 -pipe -march=amdfam10 -mcx16 -msahf -mpopcnt -mabm --param l1-cache-size=64 --param l1-cache-line-size=64 --param l2-cache-size=512 -mtune=amdfam10"
CHOST="i686-gentoo-freebsd9.0"
CONFIG_PROTECT="/etc"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/terminfo"
CXXFLAGS="-O2 -pipe -march=amdfam10 -mcx16 -msahf -mpopcnt -mabm --param l1-cache-size=64 --param l1-cache-line-size=64 --param l2-cache-size=512 -mtune=amdfam10"
DISTDIR="/usr/portage/distfiles"
FEATURES="assume-digests binpkg-logs buildpkg ccache chflags distlocks ebuild-locks fixlafiles news noinfo parallel-fetch parallel-install preserve-libs protect-owned sfperms split-log strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync"
FFLAGS="-O2 -pipe -march=amdfam10 -mcx16 -msahf -mpopcnt -mabm --param l1-cache-size=64 --param l1-cache-line-size=64 --param l2-cache-size=512 -mtune=amdfam10"
GENTOO_MIRRORS="http://distfiles.gentoo.org"
LDFLAGS="-Wl,-O1 -Wl,--as-needed -Wl,--sort-common"
MAKEOPTS="-j7"
PKGDIR="/usr/portage/packages"
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"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="3dnow 3dnowext acl berkdb cli cracklib crypt cups cxx dri gdbm iconv ipv6 java5 java6 modules ncurses nls nptlonly oss pam pcre perl python readline session sse3 sse4a ssl sysfs tcpd unicode x86-fbsd xorg zfs zlib" 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 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 stage tables krita karbon braindump" CAMERAS="ptp2" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" ELIBC="FreeBSD" 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" KERNEL="FreeBSD" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" PHP_TARGETS="php5-3" RUBY_TARGETS="ruby18" USERLAND="BSD" VIDEO_CARDS="apm ark chips cirrus cyrix dummy i128 intel mach64 mga neomagic nv r128 radeon rendition s3 s3virge savage siliconmotion sis tga trident tseng vmware fbdev" 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, INSTALL_MASK, LANG, LC_ALL, LINGUAS, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS
Comment 1 Richard Yao (RETIRED) gentoo-dev 2012-03-27 01:46:46 UTC
It seems that sys-freebsd/freebsd-cddl-9.0 depends on itself already being merged in order to succeed. This can be worked around by this sequence of commands:

ebuild `equery which sys-freebsd/freebsd-cddl` install
cp /var/tmp/portage/sys-freebsd/freebsd-cddl-9.0/work/cddl/lib/libumem/libumem.so* /usr/lib/
ebuild `equery which sys-freebsd/freebsd-cddl` install
cp /var/tmp/portage/sys-freebsd/freebsd-cddl-9.0/work/cddl/lib/libuutil/libuutil.so* /usr/lib/
ebuild `equery which sys-freebsd/freebsd-cddl` install
cp /var/tmp/portage/sys-freebsd/freebsd-cddl-9.0/work/cddl/lib/libnvpair/libnvpair.so* /usr/lib/
ebuild `equery which sys-freebsd/freebsd-cddl` install
cp /var/tmp/portage/sys-freebsd/freebsd-cddl-9.0/work/cddl/lib/libavl/libavl.so* /usr/lib/
ebuild `equery which sys-freebsd/freebsd-cddl` install
cp /var/tmp/portage/sys-freebsd/freebsd-cddl-9.0/work/cddl/lib/libzfs/libzfs.so* /usr/lib/
ebuild `equery which sys-freebsd/freebsd-cddl` install
cp /var/tmp/portage/sys-freebsd/freebsd-cddl-9.0/work/cddl/lib/libctf/libctf.so* /usr/lib/
ebuild `equery which sys-freebsd/freebsd-cddl` install
cp /var/tmp/portage/sys-freebsd/freebsd-cddl-9.0/work/cddl/lib/libzpool/libzpool.so* /usr/lib/
ebuild `equery which sys-freebsd/freebsd-cddl` install
cp /var/tmp/portage/sys-freebsd/freebsd-cddl-9.0/work/cddl/lib/libdtrace/libdtrace.so* /usr/lib/
ebuild `equery which sys-freebsd/freebsd-cddl-9.0` merge

We need some way to make the dynamic linker look in these directories during the build to prevent things from breaking.
Comment 2 Naohiro Aota gentoo-dev 2012-03-30 09:15:14 UTC
This should be fixed by patching the code to add library search path properly.

I've fixed things in the CVS. Thanks.

+  30 Mar 2012; Naohiro Aota <naota@gentoo.org> freebsd-cddl-9.0.ebuild:
+  Apply patch to add library search path. #409693; Install library proper place
+  according to requesting binaries' (such as /sbin/zfs) path.
+
Comment 3 Richard Yao (RETIRED) gentoo-dev 2012-03-30 19:22:04 UTC
Created attachment 307233 [details, diff]
Fix for issue on Gentoo/FreeBSD 9

(In reply to comment #2)
> This should be fixed by patching the code to add library search path
> properly.
> 
> I've fixed things in the CVS. Thanks.
> 
> +  30 Mar 2012; Naohiro Aota <naota@gentoo.org> freebsd-cddl-9.0.ebuild:
> +  Apply patch to add library search path. #409693; Install library proper
> place
> +  according to requesting binaries' (such as /sbin/zfs) path.
> +

This is still an issue on Gentoo/FreeBSD 9, despite the changes in CVS.

I am attaching a patch to fix this.
Comment 4 Naohiro Aota gentoo-dev 2012-03-31 03:57:35 UTC
+  31 Mar 2012; Naohiro Aota <naota@gentoo.org>
+  +files/freebsd-cddl-9.0-libpaths.patch, freebsd-cddl-9.0.ebuild:
+  Add patch to fix libpath for 9.0