[oe] Cannot compile glibc-initial for ARM

Pawel Osmialowski pawelo at dcclabs.tv
Thu Nov 24 11:47:44 UTC 2011


Hi Khem,

Thanks for your answer.

Unfortunately, removing TARGET_OS and changing glibc to eglibc did not help:

| running configure fragment for ports/sysdeps/arm/elf
| checking for ARM TLS support... yes
| running configure fragment for nptl/sysdeps/pthread
| configure: error: working compiler support for visibility attribute is 
required
NOTE: package eglibc-initial-2.12-r21.8+svnr13230: task do_configure: Failed
ERROR: TaskFailed event exception, aborting
ERROR: Build of 
/home/pawelo/h3660/openembedded/h3660/../recipes/eglibc/eglibc-initial_2.12.bb 
do_configure failed

What else could be wrong?

Best regards,
Paul


W dniu 24.11.2011 04:03, Khem Raj pisze:
> On Mon, Nov 21, 2011 at 1:49 AM, Pawel Osmialowski<pawelo at dcclabs.tv>  wrote:
>> I'm trying to build Angstrom-derived distro for my handheld with
>> customized set of software. It will be held in few-GB CF card, so I can
>> use full-blown glibc for it.
>>
>> I've prepared following distro configuration file:
>>
>> # file-native version compatible with rpm tools:
>> PREFERRED_VERSION_file-native = "4.18"
>> DISTRO_NAME = "customized"
>> DISTRO_TYPE = "release"
>> DISTRO_VERSION = "0.1"
>> TOOLCHAIN_TYPE = "internal"
>> TOOLCHAIN_BRAND = ""
>> IMAGE_LINGUAS = "en-us"
>> IMAGE_FSTYPE = "tar.gz"
>> IMAGE_FSTYPES = "tar.gz"
>> IMAGE_PKGTYPE = "rpm"
>> IMAGE_PKGTYPES = "rpm"
>> PREFERRED_PKG_FORMAT = "rpm"
>> ANGSTROM_PKG_FORMAT = "rpm"
>> TARGET_OS = "linux"
>                 ^^^^^^
>
> The above setting will make it use OABI which is long outdated in OE
> remove the above line and rebuild
>
>
>> ANGSTROM_FEED_CONFIGS = "angstrom-feed-configs"
>> DISTRO_FEED_CONFIGS = "${ANGSTROM_FEED_CONFIGS}"
>> LIBC = "glibc"
>> FEED_BASEPATH = "feeds/next/${ANGSTROM_PKG_FORMAT}/${LIBC}/"
>> GLIBC_GENERATE_LOCALES = "en_US.UTF-8"
>> ANGSTROMLIBC = "glibc"
> While that might work you better use eglibc since
> thats maintained
>
>> KERNEL = "kernel26"
>> MACHINE_KERNEL_VERSION = "2.6"
>> PCMCIA_MANAGER = "pcmciautils"
>> LINUX_LIBC_HEADERS_VERSION = "2.6.37"
>> PREFERRED_VERSION_linux-libc-headers = "${LINUX_LIBC_HEADERS_VERSION}"
>> PREFERRED_VERSION_linux-libc-headers-native =
>> "${LINUX_LIBC_HEADERS_VERSION}"
>> require conf/distro/include/glibc-internal.inc
>> require conf/distro/include/toolchain-${TOOLCHAIN_TYPE}.inc
>> require conf/distro/include/arm-thumb.inc
>> require conf/distro/include/angstrom.inc
>> require conf/distro/include/sane-toolchain.inc
>> DISTRO_CHECK := "${@bb.data.getVar('DISTRO_VERSION',d,1) or
>> bb.fatal('Remove this line or set a dummy DISTRO_VERSION")
>> XSERVER = "xserver-xorg xf86-input-evdev xf86-input-keyboard
>> xf86-input-mouse xf86-video-fbdev"
>> INHERIT += "sanity"
>> INHERIT += "devshell"
>> USE_NLS = "yes"
>> USE_LDCONFIG = "0"
>> FULL_OPTIMIZATION = "-Os"
>> BUILD_OPTIMIZATION = "-Os"
> beaware compiling glibc with Os may not work but eglibc can be compiled
> using -Os
>
>> DISTRO_EXTRA_RDEPENDS += "\
>>     angstrom-version \
>>     ${ANGSTROM_FEED_CONFIGS} \
>>     util-linux-ng-mount util-linux-ng-umount \
>>     angstrom-libc-fixup-hack \
>> "
>>
>> DISTRO_EXTRA_RRECOMMENDS += " \
>>     kernel-module-vfat \
>>     kernel-module-ext2 \
>>     kernel-module-ext3 \
>>     kernel-module-af-packet \
>>     avahi-daemon \
>>     avahi-autoipd \
>>     openssh-sftp-server \
>> "
>>
>> As I see in work directory, following versions of critical packages were
>> picked:
>>
>> binutils-cross-2.21.1a-r14.3
>> busybox-1.18.5-r43.0
>> gcc-cross-4.5-r38.1+svnr170880
>> gcc-cross-initial-4.5-r38.1+svnr170880
>> gcc-cross-intermediate-4.5-r38.1+svnr170880
>> glibc-2.10.1-r37.1
>> glibc-initial-2.10.1-r37.1
>> linux-libc-headers-2.6.37-r0
>>
>> Unfortunately, it stopped at glibc-initial confgure script:
>>
>> | running configure fragment for ports/sysdeps/arm/elf
>> | checking for ARM TLS support... yes
>> | running configure fragment for nptl/sysdeps/pthread
>> | configure: error: working compiler support for visibility attribute is
>> required
>> NOTE: package glibc-initial-2.10.1-r37.1: task do_configure: Failed
>>
>> Looking at config.log file produced by this configure script, I've found
>> that it contains a lot of errors like this (although I doubt this is the
>> reason for the whole problem):
>>
>> conftest.c:9:19: fatal error: stdio.h: No such file or directory
>> compilation terminated.
>>
>> I've checked that stdio.h is not present anywhere in tmp/sysroots (no
>> glibc yet...)
>>
>> the final one:
>>
>> configure:8362: arm-oe-linux-gcc -march=armv4 -mtune=strongarm
>> -mthumb-interwork -mno-thumb
>> --sysroot=/home/pawelo/h3660/openembedded/h3660/tmp/sysroots/arm-oabi-oe-linux
>> -c -g -O2 -I
>> /home/pawelo/h3660/openembedded/h3660/tmp/sysroots/arm-oabi-oe-linux/usr/include
>> conftest.c>&5
>> conftest.c:1:0: warning: target CPU does not support interworking
>> conftest.c:21:19: fatal error: stdio.h: No such file or directory
>> compilation terminated.
>> configure:8369: $? = 1
>> configure: failed program was:
>> | /* confdefs.h.  */
>> ...
>> | }
>> configure:8586: result: 0
>> configure:8618: result: running configure fragment for ports/sysdeps/arm/elf
>> configure:7: checking for ARM TLS support
>> configure:24: arm-oe-linux-gcc -march=armv4 -mtune=strongarm
>> -mthumb-interwork -mno-thumb
>> --sysroot=/home/pawelo/h3660/openembedded/h3660/tmp/sysroots/arm-oabi-oe-linux
>> -c -g -O2 conf
>> test.s 1>&5
>> configure:27: $? = 0
>> configure:35: result: yes
>> configure:8618: result: running configure fragment for nptl/sysdeps/pthread
>> configure:11: error: working compiler support for visibility attribute
>> is required
>>
>> I've tried with eglibc too, unfortunately, with the same result. Can you
>> point me, what am I doing wrong?
>>
>> Best regards,
>> Paul
>>
>>
>> _______________________________________________
>> Openembedded-devel mailing list
>> Openembedded-devel at lists.openembedded.org
>> http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-devel
>>
> _______________________________________________
> Openembedded-devel mailing list
> Openembedded-devel at lists.openembedded.org
> http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-devel





More information about the Openembedded-devel mailing list