Bug 7542 - Failed when build toolchain for t4240rdb using poky-lsb.conf
Summary: Failed when build toolchain for t4240rdb using poky-lsb.conf
Status: VERIFIED FIXED
Alias: None
Product: BSPs
Classification: Build System, Metadata & Runtime
Component: bsps-meta-fsl-ppc (show other bugs)
Version: unspecified
Hardware: Other ppc
: Medium normal
Target Milestone: 1.9
Assignee: Chunrong Guo
QA Contact: Cristina Agurida
URL:
Whiteboard:
Depends on:
Blocks:
 
Reported: 2015-03-31 05:46 UTC by leimaohui
Modified: 2015-06-05 14:52 UTC (History)
3 users (show)

See Also:
OS type for building Yocto: ---
Type of Regression: ---
Verified:
Documentation change: Don't know


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description leimaohui 2015-03-31 05:46:16 UTC
I build meta-toolchain for t4240rdb.
$ bitbake meta-toolchain

Build Configuration:
BB_VERSION        = "1.27.0"
BUILD_SYS         = "x86_64-linux"
NATIVELSBSTRING   = "CentOS-6.5"
TARGET_SYS        = "powerpc-poky-linux"
MACHINE           = "qemuppc"
DISTRO            = "poky-lsb"
DISTRO_VERSION    = "1.8+snapshot-20150331"
TUNE_FEATURES     = "m32 fpu-hard e6500 altivec"
TARGET_FPU        = "hard"
meta
meta-yocto
meta-yocto-bsp    = "master:5c76cebc24675edb3dff473fce9b67cedff615db"
meta-fsl-ppc      = "master:5eeeb3ad74b72d904f805bc6e248e93e722b45c4"
-------------------------------------------------

But the folowing build error appeared.

| checking for gmsgfmt... no
| checking for msgfmt... msgfmt
| checking version of msgfmt... 0.19.4, ok
| checking for makeinfo... makeinfo
| checking version of makeinfo... 4.13, ok
| checking for sed... sed
| checking version of sed... 4.2.2, ok
| checking for gawk... gawk
| checking version of gawk... 3.1.7, ok
| checking if powerpc64-pokymllib64-linux-gcc  -mhard-float -m64 -mcpu=e6500 --sysroot=/yocto/leimh/ubinux-v15/build/build.poky.e6500.test/tmp/sysroots/lib64-qemuppc-tcbootstrap is sufficient to build libc... yes
| checking for powerpc64-pokymllib64-linux-nm... powerpc64-pokymllib64-linux-nm
| checking LD_LIBRARY_PATH variable... ok
| checking whether GCC supports -static-libgcc... -static-libgcc
| checking for bash... /bin/bash
| checking for perl... /usr/bin/perl
| checking for install-info... /sbin/install-info
| checking for bison... bison
| checking version of bison... 2.7.1, ok
| checking for libc-friendly stddef.h... yes
| checking whether we need to use -P to assemble .S files... no
| checking for .set assembler directive... no
| checking for assembler gnu_unique_object symbol type... yes
| checking for .previous assembler directive... yes
| checking for .protected and .hidden assembler directive... yes
| checking whether __attribute__((visibility())) is supported... yes
| checking for broken __attribute__((visibility()))... no
| checking for broken __attribute__((alias()))... no
| checking whether to put _rtld_local into .sdata section... yes
| checking for .preinit_array/.init_array/.fini_array support... no
| configure: error: Need linker with .init_array/.fini_array support.

-------------------------------------------------

I found that if delete the "TARGET_CFLAGS_append" in security_flags.inc,the build also will be OK.
------------------------
--- a/meta/conf/distro/include/security_flags.inc
+++ b/meta/conf/distro/include/security_flags.inc
@@ -78,7 +78,7 @@ SECURITY_CFLAGS_pn-zlib = "${SECURITY_NO_PIE_CFLAGS}"
 SECURITY_CFLAGS_pn-ltp = "${SECURITY_NO_PIE_CFLAGS}"
 SECURITY_CFLAGS_pn-pulseaudio = "${SECURITY_NO_PIE_CFLAGS}"

-TARGET_CFLAGS_append = " ${SECURITY_CFLAGS}"
+#TARGET_CFLAGS_append = " ${SECURITY_CFLAGS}"
 TARGET_LDFLAGS_append = " ${SECURITY_LDFLAGS}"

 SECURITY_LDFLAGS_pn-xf86-video-fbdev = "${SECURITY_X_LDFLAGS}"
------------------------
Comment 1 Chunrong Guo 2015-04-07 06:52:10 UTC
I  can not reproduce this issue .

Build Configuration:
BB_VERSION        = "1.27.0"
BUILD_SYS         = "x86_64-linux"
NATIVELSBSTRING   = "Ubuntu-12.04"
TARGET_SYS        = "powerpc-poky-linux"
MACHINE           = "t4240rdb"
DISTRO            = "poky"
DISTRO_VERSION    = "1.8+snapshot-20150407"
TUNE_FEATURES     = "m32 fpu-hard e6500 altivec"
TARGET_FPU        = "hard"
meta              
meta-yocto        = "master:d6d2dd5c9e06c54ff336b44d54f01b4fe24903ed"
meta-fsl-ppc      = "master:4c8cd553f9de56379e2b6502ceb996521e2d6a20"
meta-yocto-bsp    = "master:d6d2dd5c9e06c54ff336b44d54f01b4fe24903ed"



can you check if set 'MACHINE ??= "t4240rdb"' in conf/local.conf  ?
Comment 2 leimaohui 2015-04-07 07:24:36 UTC
(In reply to comment #1)
> I  can not reproduce this issue .
> 
> Build Configuration:
> BB_VERSION        = "1.27.0"
> BUILD_SYS         = "x86_64-linux"
> NATIVELSBSTRING   = "Ubuntu-12.04"
> TARGET_SYS        = "powerpc-poky-linux"
> MACHINE           = "t4240rdb"
> DISTRO            = "poky"
...

If you set "DISTRO" to "poky-lsb" ,the issue can be reproduced.
DISTRO = "poky-lsb"
Comment 3 Chunrong Guo 2015-04-08 09:26:47 UTC
t4240rdb support multilib.

you can disable the following items:
 10 require conf/multilib.conf
 11 MULTILIBS ?= "multilib:lib64"
 12 DEFAULTTUNE_virtclass-multilib-lib64 ?= "ppc64e6500"
in  meta-fsl-ppc/conf/machine/include/e6500.inc


you can disable multilib function and issue will go away  .
Comment 4 Chunrong Guo 2015-04-10 09:57:41 UTC
poky-lsb.conf can not support multilib at present.
Comment 5 leimaohui 2015-04-14 02:36:54 UTC
(In reply to comment #3)
> t4240rdb support multilib.
> 
> you can disable the following items:
>  10 require conf/multilib.conf
>  11 MULTILIBS ?= "multilib:lib64"
>  12 DEFAULTTUNE_virtclass-multilib-lib64 ?= "ppc64e6500"
> in  meta-fsl-ppc/conf/machine/include/e6500.inc
> 
> 
> you can disable multilib function and issue will go away  .


Thank you.It does work.
Comment 6 Cristina Agurida 2015-06-05 14:52:52 UTC
Verified on master:fcc67ae90feeceee204bdb36e45eacf8d056779a