Hello to the gentoo-macos team ! When emerging glib-2.4.6 on MacOSX, the emerge operation fails at configure and I get this: Anthracite:/usr/portage/net-analyzer/netselect root# emerge gaim Calculating dependencies ...done! >>> emerge (1 of 18) dev-libs/glib-2.4.6 to / >>> md5 src_uri ;-) glib-2.4.6.tar.bz2 >>> Checking glib-2.4.6.tar.bz2's mtime... >>> WORKDIR is up-to-date, keeping... macos glibtoolize: `config.guess' exists: use `--force' to overwrite glibtoolize: `config.sub' exists: use `--force' to overwrite glibtoolize: `ltmain.sh' exists: use `--force' to overwrite configure: WARNING: If you wanted to set the --build type, don't use --host. If a cross compiler is detected then cross compile mode will be used. checking for a BSD-compatible install... /usr/bin/install -c checking whether build environment is sane... yes checking for gawk... no checking for mawk... no checking for nawk... no checking for awk... awk checking whether make sets $(MAKE)... yes checking for powerpc-apple-darwin-strip... no checking for strip... strip checking whether to enable maintainer-specific portions of Makefiles... no checking build system type... powerpc-apple-darwin7.5.0 checking host system type... powerpc-apple-darwin checking for the BeOS... no checking for Win32... no checking whether to enable garbage collector friendliness... no checking whether to disable memory pools... no checking for powerpc-apple-darwin-gcc... no checking for gcc... gcc checking for C compiler default output file name... a.out checking whether the C compiler works... yes checking whether we are cross compiling... no checking for suffix of executables... checking for suffix of object files... o checking whether we are using the GNU C compiler... yes checking whether gcc accepts -g... yes checking for gcc option to accept ANSI C... none needed checking for style of include used by make... GNU checking dependency style of gcc... gcc3 checking for c++... c++ checking for powerpc-apple-darwin-g++... (cached) c++ checking whether we are using the GNU C++ compiler... yes checking whether c++ accepts -g... yes checking dependency style of c++... gcc3 checking for gcc option to accept ANSI C... none needed checking for a BSD-compatible install... /usr/bin/install -c checking for special C compiler options needed for large files... no checking for _FILE_OFFSET_BITS value needed for large files... no checking for _LARGE_FILES value needed for large files... no checking for pkg-config... /usr/bin/pkg-config checking for gawk... (cached) awk checking for perl5... no checking for perl... perl checking for indent... indent checking for perl... /usr/bin/perl checking for iconv_open... no checking for libiconv_open in -liconv... yes checking how to run the C preprocessor... gcc -E checking for egrep... grep -E checking for ANSI C header files... yes checking for sys/types.h... yes checking for sys/stat.h... yes checking for stdlib.h... yes checking for string.h... yes checking for memory.h... yes checking for strings.h... yes checking for inttypes.h... yes checking for stdint.h... yes checking for unistd.h... yes checking locale.h usability... yes checking locale.h presence... yes checking for locale.h... yes checking for LC_MESSAGES... yes checking libintl.h usability... no checking libintl.h presence... no checking for libintl.h... no configure: error: *** You must have either have gettext support in your C library, or use the *** GNU gettext library. (http://www.gnu.org/software/gettext/gettext.html !!! ERROR: dev-libs/glib-2.4.6 failed. !!! Function econf, Line 425, Exitcode 1 !!! econf failed !!! If you need support, post the topmost build error, NOT this status message. Of course, I installed gettext-0.12.1-r1 with emerge and it compiled without any problem. Reproducible: Always Steps to Reproduce: 1. emerge gettext-0.12.1-r1 2. emerge glib-2.4.6 3. Actual Results: glib-2.4.6 doesn't configure itself correctly. Expected Results: Installation of glib. Anthracite:/ root# emerge info !!! Using `which gcc` to gcc locate version, this may break !!! DISTCC, installing gcc-config and setting your current gcc !!! profile will fix this Portage 20040726 (default-macos-10.3, gcc-3.3, unavailable, 7.5.0 Power Macintosh powerpc) =============================================================== == System uname: 7.5.0 Power Macintosh powerpc macos-20040726 distcc 2.0.1-zeroconf powerpc-apple-darwin7.0 (protocol 1) (default port 3632) [disabled] Autoconf: Automake: Binutils: ACCEPT_KEYWORDS="macos" AUTOCLEAN="yes" CFLAGS="-O2 -pipe" CHOST="powerpc-apple-darwin" COMPILER="" CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3/share/config /usr/share/config /var/ qmail/control" CONFIG_PROTECT_MASK="/etc/gconf /etc/env.d" CXXFLAGS="-O2 -pipe" DISTDIR="/usr/portage/distfiles" FEATURES="collision-protect cvs keepwork" GENTOO_MIRRORS="http://gentoo.osuosl.org/" MAKEOPTS="-j2" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="" SYNC="rsync://rsync.gentoo.org/gentoo-portage" USE="macos X dvd macox"
it looks like gettext was compiled without 'nls'. This should be hardcoded into the ebuild, so it shouldn't have happened. Make sure you've emerged sync recently, then recompile gettext, and try glib again. If it still fails, try 'USE=nls emerge gettext glib'.
Works fine here on multiple systems here. Reopen if needed.
Hi all, I'm afraid this one needs to be reopened... I just emerged sys-devel/gettext-0.14.1 (tried both with and without the nls use flag) and then tried to emerge dev-libs/glib-2.4.8 (also tried 2.4.6) I get the same error as described in the initial bug report: .... checking for LC_MESSAGES... yes checking libintl.h usability... no checking libintl.h presence... no checking for libintl.h... no configure: error: *** You must have either have gettext support in your C library, or use the *** GNU gettext library. (http://www.gnu.org/software/gettext/gettext.html emerge info: Portage 2.0.51-r3 (default-darwin/macos/10.3, gcc-3.3, libsystem-7.1-r0, 7.6.0 Power Macintosh) ================================================================= System uname: 7.6.0 Power Macintosh powerpc macos-20041118 distcc 2.0.1-zeroconf powerpc-apple-darwin7.0 (protocol 1) (default port 3632) [disabled] Autoconf: Automake: Binutils: Headers: sys-libs/libsystem-7.1 Libtools: ACCEPT_KEYWORDS="ppc-macos" AUTOCLEAN="yes" CFLAGS="" CHOST="powerpc-apple-darwin" COMPILER="" CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3/share/config /usr/share/config /var/qmail/control" CONFIG_PROTECT_MASK="/etc/gconf /etc/env.d" CXXFLAGS="" DISTDIR="/usr/portage/distfiles" FEATURES="autoaddcvs ccache collision-protect distlocks" GENTOO_MIRRORS="http://ftp.snt.utwente.nl/pub/os/linux/gentoo" MAKEOPTS="-j3" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="" SYNC="rsync://rsync.gentoo.org/gentoo-portage" USE="nls ppc-macos"
as requested by macshabba
Removing the two explicit removes of libintl for macos in 'gettext-0.14.1.ebuild' seems to solve this issue for me. # remove stuff that glibc handles if use ppc-macos then : else rm -f ${D}/usr/include/libintl.h rm -f ${D}/usr/$(get_libdir)/libintl.* fi rm -rf ${D}/usr/share/locale/locale.alias # /usr/lib/charset.alias is provided by Mac OS X use ppc-macos && rm -f ${D}/usr/lib/charset.alias
The problem is definitely in gettext and not glib. All versions of glib from 2.4.7 on up compile fine with gettext 0.12.1-r2.
libintl.h and friends are NOT provided on OSX systems, therefore we shouldn't remove them here. Fixed in both gettext-0.12.1-r2 and 0.14.1. 0.14.1. 0.14.1 provides an explicit check on an .so file, which obviously does not exist on OSX systems. I've pulled the keyword on that version pending a fix for that conditional. Leaving open until the problems with 0.14.1 are resolved.
Closing this bug since there is another bug open dealing with v. 0.14.1
Closing out bugs that've been resolved for a while now...