I'm trying get uclibc based platform, there is 2 options: with or without nls - I'm trying with nls. One of the goals - compile glib:2 (which "opens doors" to big software base). so, gettext doesn't cross compiles for mips-uclibc (I think for any uclibc platform) Reproducible: Always Steps to Reproduce: 1. crossdev mipsel-gentoo-linux-uclibc 2. edit make.conf USE="nls unicode" (note: nls hardmasked on uclibc now) 3. emerge-mipsel-gentoo-linux-uclibc gettext Actual Results: compilation fails Expected Results: compilation should be successfull Portage 2.2_rc67 (embedded, gcc-4.4.3, uclibc-0.9.30.1-r1, 2.6.34-gentoo i686) ================================================================= System uname: Linux-2.6.34-gentoo-i686-Genuine_Intel-R-_CPU_T2130_@_1.86GHz-with-gentoo-2.0.1 Timestamp of tree: Tue, 08 Jun 2010 08:30:20 +0000 distcc 3.1 i686-pc-linux-gnu [disabled] app-shells/bash: 4.1_p7 dev-java/java-config: 2.1.10 dev-lang/python: 2.6.5-r2, 3.1.2-r3 dev-python/pycrypto: 2.1.0 dev-util/cmake: 2.8.1 sys-apps/baselayout: 2.0.1 sys-apps/openrc: 0.6.1-r1 sys-apps/sandbox: 2.2 sys-devel/autoconf: 2.13, 2.65 sys-devel/automake: 1.8.5-r3, 1.9.6-r2, 1.10.3, 1.11.1 sys-devel/binutils: 2.20.1-r1 sys-devel/gcc: 4.4.3, 4.5.0 sys-devel/gcc-config: 1.4.1 sys-devel/libtool: 2.2.8 virtual/os-headers: 2.6.33 ACCEPT_KEYWORDS="mips ~mips" ACCEPT_LICENSE="* -@EULA" CBUILD="i686-pc-linux-gnu" CFLAGS="-O2 " CHOST="mipsel-gentoo-linux-uclibc" CONFIG_PROTECT="/etc /usr/share/X11/xkb /usr/share/config" CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/env.d/java/ /etc/eselect/postgresql /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo /etc/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d /etc/texmf/web2c" CXXFLAGS="-O2 " DISTDIR="/media/sheeva/linux/gentoo/distfiles" FEATURES="assume-digests buildpkg distlocks fixpackages news parallel-fetch preserve-libs protect-owned sandbox sfperms strict unmerge-logs unmerge-orphans userfetch" GENTOO_MIRRORS="http://distfiles.gentoo.org" LANG="en_US.UTF-8" LDFLAGS="" LINGUAS="en" MAKEOPTS="-j2" PKGDIR="/media/sheeva/linux/gentoo/mips-uclibc-packages" PORTAGE_CONFIGROOT="/usr/mipsel-gentoo-linux-uclibc/" PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages" PORTAGE_TMPDIR="/home/data/gentoo/mips-uclibc-tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/var/lib/layman/kde /var/lib/layman/loongson /var/lib/layman/embedded-cross /usr/local/portage" SYNC="rsync://rsync.gentoo.org/gentoo-portage" USE="make-symlinks minimal mips ncurses nls pam readline unicode zlib" ELIBC="uclibc" INPUT_DEVICES="evdev keyboard" KERNEL="linux" LINGUAS="en" USERLAND="GNU" VIDEO_CARDS="fbdev" Unset: CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, FFLAGS, INSTALL_MASK, LC_ALL, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS
Created attachment 234789 [details] gettext uclibc nls patch This patch should be applied *during* compile time - just after error. Its crazy hack, but it works. I don't know where all this files (which gettext generates) comes from - I don't know root of the problem.
Created attachment 234791 [details] gettext ebuild patch This is how crazy hack can be applied. This patches possible never go to portage. But let they save time for somebody who want just compile it right now. If somebody know how to fix such issues correct way - plz let me know.
Created attachment 234793 [details] gettext mipsel-ucibc cross build.log This how it failed for me, before this patches.
not really bugs in gettext
This issue is present for me too. I try to crosscompile it for arm cpu, but it has ./spawn.h:403: error: field '_sp' has incomplete type error
>I try to crosscompile it for arm cpu, but it has ./spawn.h:403: error: field '_sp' has incomplete type error Also for me! I am compile it without nls. Patch is trivial: --- spawn.h.orig 2010-11-18 19:49:42.424350565 +0300 +++ spawn.h 2010-11-18 19:49:10.392349526 +0300 @@ -37,6 +37,10 @@ # include <signal.h> #endif +#ifdef __UCLIBC__ +# include <sched.h> +#endif + #include <sys/types.h> #ifndef __THROW
the sched/spawn issue is fixed in gettext-0.18.1.1-r2 gettext failing with uclibc is generally tracked in Bug 214835