sys-libs/readline-6.0 fails to build on gfbsd Reproducible: Always Actual Results: gmake[1]: Leaving directory `/var/tmp/portage/sys-libs/readline-6.0/work/readline-6.0/examples' mv /var/tmp/portage/sys-libs/readline-6.0/image//usr/lib/libreadline.a /var/tmp/portage/sys-libs/readline-6.0/image//usr/lib/libreadline.old mv: rename /var/tmp/portage/sys-libs/readline-6.0/image//usr/lib/libreadline.a to /var/tmp/portage/sys-libs/readline-6.0/image//usr/lib/libreadline.old: No such file or directory gmake: [install-static] Error 1 (ignored) /usr/bin/install -c -m 644 libreadline.a /var/tmp/portage/sys-libs/readline-6.0/image//usr/lib/libreadline.a test -n "i686-gentoo-freebsd7.1-ranlib" && i686-gentoo-freebsd7.1-ranlib /var/tmp/portage/sys-libs/readline-6.0/image//usr/lib/libreadline.a mv /var/tmp/portage/sys-libs/readline-6.0/image//usr/lib/libhistory.a /var/tmp/portage/sys-libs/readline-6.0/image//usr/lib/libhistory.old mv: rename /var/tmp/portage/sys-libs/readline-6.0/image//usr/lib/libhistory.a to /var/tmp/portage/sys-libs/readline-6.0/image//usr/lib/libhistory.old: No such file or directory gmake: [install-static] Error 1 (ignored) /usr/bin/install -c -m 644 libhistory.a /var/tmp/portage/sys-libs/readline-6.0/image//usr/lib/libhistory.a test -n "i686-gentoo-freebsd7.1-ranlib" && i686-gentoo-freebsd7.1-ranlib /var/tmp/portage/sys-libs/readline-6.0/image//usr/lib/libhistory.a ( cd shlib ; gmake DESTDIR=/var/tmp/portage/sys-libs/readline-6.0/image/ install ) gmake[1]: Entering directory `/var/tmp/portage/sys-libs/readline-6.0/work/readline-6.0/shlib' /bin/sh ../support/mkdirs /var/tmp/portage/sys-libs/readline-6.0/image//usr/lib /bin/sh ../support/shlib-install -O freebsd7.1 -d /var/tmp/portage/sys-libs/readline-6.0/image//usr/lib -b /var/tmp/portage/sys-libs/readline-6.0/image//usr/bin -i "/usr/bin/install -c -m 644" libhistory.so.6.0 /bin/sh ../support/shlib-install -O freebsd7.1 -d /var/tmp/portage/sys-libs/readline-6.0/image//usr/lib -b /var/tmp/portage/sys-libs/readline-6.0/image//usr/bin -i "/usr/bin/install -c -m 644" libreadline.so.6.0 install: you may need to run ldconfig gmake[1]: Leaving directory `/var/tmp/portage/sys-libs/readline-6.0/work/readline-6.0/shlib' * * ERROR: sys-libs/readline-6.0 failed. * Call stack: * ebuild.sh, line 49: Called src_install * environment, line 2895: Called gen_usr_ldscript '-a' 'readline' 'history' * environment, line 1878: Called die * The specific snippet of code: * [[ -z ${tlib} ]] && die "unable to read SONAME from ${lib}"; * The die message: * unable to read SONAME from libreadline.so
Same problem here : gmake[1]: Leaving directory `/var/tmp/portage/sys-libs/readline-6.0/work/readline-6.0/examples' mv /var/tmp/portage/sys-libs/readline-6.0/image//usr/lib/libreadline.a /var/tmp/portage/sys-libs/readline-6.0/image//usr/lib/libreadline.old mv: rename /var/tmp/portage/sys-libs/readline-6.0/image//usr/lib/libreadline.a to /var/tmp/portage/sys-libs/readline-6.0/image//usr/lib/libreadline.old: No such file or directory gmake: [install-static] Error 1 (ignored) /usr/bin/install -c -m 644 libreadline.a /var/tmp/portage/sys-libs/readline-6.0/image//usr/lib/libreadline.a test -n "i686-gentoo-freebsd7.1-ranlib" && i686-gentoo-freebsd7.1-ranlib /var/tmp/portage/sys-libs/readline-6.0/image//usr/lib/libreadline.a install: you may need to run ldconfig gmake[1]: Leaving directory `/var/tmp/portage/sys-libs/readline-6.0/work/readline-6.0/shlib' mv /var/tmp/portage/sys-libs/readline-6.0/image//usr/lib/libhistory.a /var/tmp/portage/sys-libs/readline-6.0/image//usr/lib/libhistory.old mv: rename /var/tmp/portage/sys-libs/readline-6.0/image//usr/lib/libhistory.a to /var/tmp/portage/sys-libs/readline-6.0/image//usr/lib/libhistory.old: No such file or directory gmake: [install-static] Error 1 (ignored) /usr/bin/install -c -m 644 libhistory.a /var/tmp/portage/sys-libs/readline-6.0/image//usr/lib/libhistory.a test -n "i686-gentoo-freebsd7.1-ranlib" && i686-gentoo-freebsd7.1-ranlib /var/tmp/portage/sys-libs/readline-6.0/image//usr/lib/libhistory.a * * ERROR: sys-libs/readline-6.0 failed. * Call stack: * ebuild.sh, line 49: Called src_install * environment, line 2901: Called gen_usr_ldscript '-a' 'readline' 'history' * environment, line 1882: Called die * The specific snippet of code: * [[ -z ${tlib} ]] && die "unable to read SONAME from ${lib}"; * The die message: * unable to read SONAME from libreadline.so * * If you need support, post the topmost build error, and the call stack if relevant. * A complete build log is located at '/var/tmp/portage/sys-libs/readline-6.0/temp/build.log'. * The ebuild environment file is located at '/var/tmp/portage/sys-libs/readline-6.0/temp/environment'. * >>> Failed to emerge sys-libs/readline-6.0, Log file: >>> '/var/tmp/portage/sys-libs/readline-6.0/temp/build.log' ################# Portage 2.2_rc23 (default/bsd/fbsd/x86/7.1, gcc-4.3.3, freebsd-lib-7.1-r0, 7.1-RELEASE i386) ================================================================= System uname: FreeBSD-7.1-RELEASE-i386-32bit-ELF Timestamp of tree: Tue, 24 Feb 2009 14:45:01 +0000 app-shells/bash: 3.2_p48-r1 dev-lang/python: 2.5.4-r2 sys-apps/baselayout: 2.0.0 sys-apps/openrc: 0.4.2 sys-apps/sandbox: 1.3.8 sys-devel/autoconf: 2.63 sys-devel/automake: 1.10.2 sys-devel/binutils: 2.19.1 sys-devel/gcc-config: 1.4.1 sys-devel/libtool: 2.2.6a virtual/os-headers: 7.1 ACCEPT_KEYWORDS="x86-fbsd ~x86-fbsd" 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 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" ARCH="x86-fbsd" AUTOCLEAN="yes" CBUILD="i686-gentoo-freebsd7.1" CFLAGS="-O2 -pipe" CHOST="i686-gentoo-freebsd7.1" CLEAN_DELAY="5" CLICOLOR="1" COLLISION_IGNORE="/lib/modules" CONFIG_PROTECT="/etc" CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/gconf /etc/gentoo-release /etc/sandbox.d /etc/terminfo" CVS_RSH="ssh" CXXFLAGS="-O2 -pipe" DISTDIR="/usr/portage/distfiles" EDITOR="/bin/nano" ELIBC="FreeBSD" EMERGE_DEFAULT_OPTS="-tDv --with-bdeps y" EMERGE_WARNING_DELAY="10" FEATURES="collision-protect distlocks fixpackages parallel-fetch preserve-libs protect-owned sandbox sfperms strict unmerge-orphans" FETCHCOMMAND="/usr/bin/wget -t 5 -T 60 --passive-ftp -O "${DISTDIR}/${FILE}" "${URI}"" GCC_SPECS="" GENTOO_MIRRORS="http://mirror.switch.ch/ftp/mirror/gentoo/ http://distfiles.gentoo.org" HOME="/root" INFOPATH="/usr/share/info:/usr/share/binutils-data/i686-gentoo-freebsd7.1/2.19.1/info:/usr/share/gcc-data/i686-gentoo-freebsd7.1/4.3.3/info" INPUT_DEVICES="keyboard mouse" KERNEL="FreeBSD" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LDFLAGS="" LESS="-R -M --shift 5" LESSOPEN="|lesspipe.sh %s" LOGNAME="root" MAIL="/var/mail/root" MAKE="gmake" MAKEOPTS="-j2" MANPATH="/usr/local/share/man:/usr/share/man:/usr/share/binutils-data/i686-gentoo-freebsd7.1/2.19.1/man:/usr/share/gcc-data/i686-gentoo-freebsd7.1/4.3.3/man" NETBEANS="apisupport cnd groovy gsf harness ide identity j2ee java mobility nb php profiler soa visualweb webcommon websvccommon xml" PAGER="/usr/bin/less" PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/opt/bin:/usr/i686-gentoo-freebsd7.1/gcc-bin/4.3.3" PKGDIR="/usr/portage/packages" PORTAGE_ARCHLIST="ppc s390 amd64 x86 ppc64 x86-fbsd m68k arm sparc sh mips ia64 alpha hppa sparc-fbsd" PORTAGE_BINHOST_CHUNKSIZE="3000" PORTAGE_BIN_PATH="/usr/lib/portage/bin" PORTAGE_COMPRESS_EXCLUDE_SUFFIXES="css gif htm[l]? jp[e]?g js pdf png" PORTAGE_CONFIGROOT="/" PORTAGE_COUNTER_HASH="e56d041fe8a2a9ea7adb4da74e4cc148" PORTAGE_DEBUG="0" PORTAGE_DEPCACHEDIR="/var/cache/edb/dep" PORTAGE_ELOG_CLASSES="warn error log" PORTAGE_ELOG_MAILFROM="portage@localhost" PORTAGE_ELOG_MAILSUBJECT="[portage] ebuild log for ${PACKAGE} on ${HOST}" PORTAGE_ELOG_MAILURI="root" PORTAGE_ELOG_SYSTEM="save" PORTAGE_FETCH_CHECKSUM_TRY_MIRRORS="5" PORTAGE_FETCH_RESUME_MIN_SIZE="350K" PORTAGE_GID="250" PORTAGE_INST_GID="0" PORTAGE_INST_UID="0" PORTAGE_PYM_PATH="/usr/lib/portage/pym" PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages" PORTAGE_RSYNC_RETRIES="3" PORTAGE_TMPDIR="/var/tmp" PORTAGE_VERBOSE="1" PORTAGE_WORKDIR_MODE="0700" PORTDIR="/usr/portage" PROFILE_ONLY_VARIABLES="ARCH ELIBC KERNEL USERLAND" PWD="/" RESUMECOMMAND="/usr/bin/wget -c -t 5 -T 60 --passive-ftp -O "${DISTDIR}/${FILE}" "${URI}"" ROOT="/" ROOTPATH="/opt/bin:/usr/i686-gentoo-freebsd7.1/gcc-bin/4.3.3" RPMDIR="/usr/portage/rpm" SHELL="/bin/bash" SHLVL="2" SSH_CLIENT="10.175.88.197 36954 22" SSH_CONNECTION="10.175.88.197 36954 10.175.90.180 22" SSH_TTY="/dev/ttyp0" SYNC="rsync://10.175.90.175/gentoo-portage" TERM="xterm" USE="acl cli cracklib crypt cups dri iconv java5 java6 midi ncurses nls nptlonly oss pam pcre perl ppds python readline reflection session spl ssl unicode x86-fbsd xorg 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 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" ELIBC="FreeBSD" INPUT_DEVICES="keyboard mouse" KERNEL="FreeBSD" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" USERLAND="BSD" VIDEO_CARDS="apm ark chips cirrus cyrix dummy i128 i810 intel mach64 mga neomagic nv r128 radeon rendition s3 s3virge savage siliconmotion sis sisusb tga trident tseng vga via vmware" USER="root" USERLAND="BSD" USE_EXPAND="ALSA_CARDS ALSA_PCM_PLUGINS APACHE2_MODULES APACHE2_MPMS CAMERAS CROSSCOMPILE_OPTS DVB_CARDS ELIBC FCDSL_CARDS FOO2ZJS_DEVICES FRITZCAPI_CARDS INPUT_DEVICES KERNEL LCD_DEVICES LINGUAS LIRC_DEVICES MISDN_CARDS NETBEANS_MODULES USERLAND VIDEO_CARDS" USE_EXPAND_HIDDEN="CROSSCOMPILE_OPTS ELIBC KERNEL USERLAND" USE_ORDER="env:pkg:conf:defaults:pkginternal:env.d" VIDEO_CARDS="apm ark chips cirrus cyrix dummy i128 i810 intel mach64 mga neomagic nv r128 radeon rendition s3 s3virge savage siliconmotion sis sisusb tga trident tseng vga via vmware" _="/usr/bin/emerge"
There is a bug in shobj-conf so on FreeBSD7+, readline (all versions!) is compiled WITHOUT soname. This is very bad. I made a simple patch to fix that bug (i will report upstream later). Please apply as soon as possibile (you don't require to revbump since it is a compilation-only issue)
Created attachment 183241 [details, diff] files/readline-6.0-freebsd7-elf.patch
Created attachment 183244 [details, diff] files/readline-6.0-gfreebsd-soname.patch Gentoo/FreeBSD patch. We have some different things than vanilla FreeBSD (library names)
i dont think the patch is appropriate for upstream since Gentoo/FreeBSD uses a different SONAME convention from upstream FreeBSD you should change it so that only freebsd targets with "gentoo" in the vendor field uses linux soname versioning
Yes, I know. I have another patch to send upstream. I don't think they would apply a patch only for Gentoo/FreeBSD, so I decide to make 2 patches. One for Gentoo/FreeBSD and one for vanilla FreeBSD (that I want to send upstream). Tell me if you prefer that I make only a one patch
maybe upstream would accept the patch ... wont know until you ask
Created attachment 183285 [details, diff] files/readline-6.0-freebsd-and-gentoo-freebsd.patch
Patch changed and sent upstream. Can you apply the patch?
looks good ... if upstream takes it, then feel free to commit otherwise, go with the simpler hack ... comment it either way http://dev.gentoo.org/~vapier/clean-patches
I've hacked it for the time being (with a much less intrusive sed line!), but I admit I would prefer not to have to deal with readline upstream. Mike do you think we can consider this closed for now?
fine by me
Closing then ;)