On Fri, 2012-06-01 at 15:27 -0700, Khem Raj wrote: > On Fri, Jun 1, 2012 at 1:09 PM, Chatre, Reinette > <reinette.cha...@intel.com> wrote: > > Hi, > > > > I am trying to create a poky-tiny based image for ARM. This currently > > fails in the "do_compile" task of elfutils. As a first attempt I try to > > have things as simple as possible. Starting with a clean 7.0 Denzil > > in /opt/poky.git on my development system and use a separate build > > directory $HOME/poky_build that is created as: > > > > $ cd $HOME/poky_build > > $ . /opt/poky.git/oe-init-build-env . > > > > I edit the $HOME/poky_build/conf/local.conf as below: > > > > --- org/conf/local.conf 2012-06-01 10:47:49.215088985 -0700 > > +++ $HOME/poky_build/conf/local.conf 2012-06-01 11:56:24.930150746 -0700 > > @@ -48,7 +48,7 @@ > > #MACHINE ?= "routerstationpro" > > # > > # This sets the default machine to be qemux86 if no other machine is > > selected: > > -MACHINE ??= "qemux86" > > +MACHINE ??= "qemuarm" > > > > # > > # Where to place downloads > > @@ -99,7 +99,7 @@ MACHINE ??= "qemux86" > > # Ultimately when creating custom policy, people will likely end up > > subclassing > > # these defaults. > > # > > -DISTRO ?= "poky" > > +DISTRO ?= "poky-tiny" > > # As an example of a subclass there is a "bleeding" edge policy > > configuration > > # where many versions are set to the absolute latest code from the upstream > > # source control systems. This is just mentioned here as an example, its > > not > > @@ -118,7 +118,7 @@ DISTRO ?= "poky" > > # - 'package_rpm' for rpm style packages > > # E.g.: PACKAGE_CLASSES ?= "package_rpm package_deb package_ipk" > > # We default to rpm: > > -PACKAGE_CLASSES ?= "package_rpm" > > +PACKAGE_CLASSES ?= "package_ipk" > > > > # > > # SDK/ADT target architecture > > @@ -224,3 +224,6 @@ PATCHRESOLVE = "noop" > > # track the version of this file when it was generated. This can safely be > > ignored if > > # this doesn't mean anything to you. > > CONF_VERSION = "1" > > + > > +#disable usage of ccache > > +CCACHE="" > > > > After the above I kick off a build with: > > > > $ bitbake core-image-minimal > > > > As mentioned earlier, the above fails in "do_compile" of elfutils with > > output like: > > > > | arm-poky-linux-gnueabi-ranlib libdw_pic.a > > | arm-poky-linux-gnueabi-gcc -march=armv5te -marm -mthumb-interwork > > -mtune=arm926ej-s --sysroot=/home/rchatre/poky_build/tmp/sysroots/qemuarm > > -std=gnu99 -Wall -Wshadow -Werror -Wunused -Wextra -fgnu89-inline > > -Wformat=2 -O2 -pipe -g -feliminate-unused-debug-types -Wl,-O1 > > -Wl,--hash-style=gnu -Wl,--as-needed -o libdw.so -shared -o libdw.so > > -Wl,--soname,libdw.so.1,-z,defs \ > > | »------Wl,--enable-new-dtags,-rpath,/usr/lib/elfutils \ > > | »------Wl,--version-script,libdw.map,--no-undefined \ > > | »------Wl,--whole-archive libdw_pic.a ../libdwfl/libdwfl_pic.a > > ../libebl/libebl.a ../libelf/libelf.so -Wl,--no-whole-archive\ > > | »------ldl -lbz2 -lz > > | ../libdwfl/libdwfl_pic.a(linux-kernel-modules.os): In function > > `dwfl_linux_kernel_report_offline': > > | > > /home/rchatre/poky_build/tmp/work/armv5te-poky-linux-gnueabi/elfutils-0.148-r7/elfutils-0.148/libdwfl/linux-kernel-modules.c:310: > > undefined reference to `fts_open' > > | > > /home/rchatre/poky_build/tmp/work/armv5te-poky-linux-gnueabi/elfutils-0.148-r7/elfutils-0.148/libdwfl/linux-kernel-modules.c:320: > > undefined reference to `fts_read' > > | > > /home/rchatre/poky_build/tmp/work/armv5te-poky-linux-gnueabi/elfutils-0.148-r7/elfutils-0.148/libdwfl/linux-kernel-modules.c:391: > > undefined reference to `fts_close' > > | > > /home/rchatre/poky_build/tmp/work/armv5te-poky-linux-gnueabi/elfutils-0.148-r7/elfutils-0.148/libdwfl/linux-kernel-modules.c:327: > > undefined reference to `fts_set' > > | ../libdwfl/libdwfl_pic.a(linux-kernel-modules.os): In function > > `dwfl_linux_kernel_find_elf': > > | > > /home/rchatre/poky_build/tmp/work/armv5te-poky-linux-gnueabi/elfutils-0.148-r7/elfutils-0.148/libdwfl/linux-kernel-modules.c:647: > > undefined reference to `fts_open' > > | > > /home/rchatre/poky_build/tmp/work/armv5te-poky-linux-gnueabi/elfutils-0.148-r7/elfutils-0.148/libdwfl/linux-kernel-modules.c:691: > > undefined reference to `fts_read' > > | > > /home/rchatre/poky_build/tmp/work/armv5te-poky-linux-gnueabi/elfutils-0.148-r7/elfutils-0.148/libdwfl/linux-kernel-modules.c:691: > > undefined reference to `fts_read' > > | > > /home/rchatre/poky_build/tmp/work/armv5te-poky-linux-gnueabi/elfutils-0.148-r7/elfutils-0.148/libdwfl/linux-kernel-modules.c:740: > > undefined reference to `fts_close' > > | > > /home/rchatre/poky_build/tmp/work/armv5te-poky-linux-gnueabi/elfutils-0.148-r7/elfutils-0.148/libdwfl/linux-kernel-modules.c:715: > > undefined reference to `fts_close' > > | > > /home/rchatre/poky_build/tmp/work/armv5te-poky-linux-gnueabi/elfutils-0.148-r7/elfuERROR: > > Function failed: do_compile (see > > /home/rchatre/poky_build/tmp/work/armv5te-poky-linux-gnueabi/elfutils-0.148-r7/temp/log.do_compile.25599 > > for further information) > > | tils-0.148/libdwfl/linux-kernel-modules.c:698: undefined reference to > > `fts_set' > > | ../libdwfl/libdwfl_pic.a(linux-kernel-modules.os): In function > > `check_module_notes': > > | > > /home/rchatre/poky_build/tmp/work/armv5te-poky-linux-gnueabi/elfutils-0.148-r7/elfutils-0.148/libdwfl/linux-kernel-modules.c:532: > > undefined reference to `fts_open' > > | > > /home/rchatre/poky_build/tmp/work/armv5te-poky-linux-gnueabi/elfutils-0.148-r7/elfutils-0.148/libdwfl/linux-kernel-modules.c:541: > > undefined reference to `fts_read' > > | > > /home/rchatre/poky_build/tmp/work/armv5te-poky-linux-gnueabi/elfutils-0.148-r7/elfutils-0.148/libdwfl/linux-kernel-modules.c:570: > > undefined reference to `fts_close' > > | ../libebl/libebl.a(eblwstrtab.o): In function `copystrings': > > | > > /home/rchatre/poky_build/tmp/work/armv5te-poky-linux-gnueabi/elfutils-0.148-r7/elfutils-0.148/libebl/eblwstrtab.c:329: > > undefined reference to `wmempcpy' > > | ../libebl/libebl.a(eblwstrtab.o): In function `ebl_wstrtabadd': > > | > > /home/rchatre/poky_build/tmp/work/armv5te-poky-linux-gnueabi/elfutils-0.148-r7/elfutils-0.148/libebl/eblwstrtab.c:249: > > undefined reference to `wcslen' > > | ../libebl/libebl.a(eblwstrtab.o): In function `searchstring': > > | > > /home/rchatre/poky_build/tmp/work/armv5te-poky-linux-gnueabi/elfutils-0.148-r7/elfutils-0.148/libebl/eblwstrtab.c:228: > > undefined reference to `wmemcmp' > > | collect2: ld returned 1 exit status > > | make[3]: *** [libdw.so] Error 1 > > | make[3]: Leaving directory > > `/home/rchatre/poky_build/tmp/work/armv5te-poky-linux-gnueabi/elfutils-0.148-r7/elfutils-0.148/libdw' > > | make[2]: *** [all] Error 2 > > | make[2]: Leaving directory > > `/home/rchatre/poky_build/tmp/work/armv5te-poky-linux-gnueabi/elfutils-0.148-r7/elfutils-0.148/libdw' > > | make[1]: *** [all-recursive] Error 1 > > | make[1]: Leaving directory > > `/home/rchatre/poky_build/tmp/work/armv5te-poky-linux-gnueabi/elfutils-0.148-r7/elfutils-0.148' > > | make: *** [all] Error 2 > > | ERROR: oe_runmake failed > > > > > > I would appreciate any hints on how to build a poky-tiny image for ARM. > > I would prefer to build an image that can run in the host's qemu, not > > needing yocto to build qemu. It seems that I will have to create a new > > machine configuration for that but wanted to see if I can get the > > standard items built first, which is giving the problems described > > above. > > > > can you do the same exercise on master and see if you can reproduce the > problem on master too. If the problem goes away then I think I have > some idea what > could be wrong.
I moved to master with HEAD of de4cdfd6bc1280ac7ac0559b87734d26294ef773. Unfortunately the error appears to be the same. I copy it below: | arm-poky-linux-gnueabi-ranlib libdw_pic.a | arm-poky-linux-gnueabi-gcc -march=armv5te -marm -mthumb-interwork -mtune=arm926ej-s --sysroot=/home/rchatre/poky_build_master/tmp/sysroots/qemuarm -std=gnu99 -Wall -Wshadow -Werror -Wunused -Wextra -fgnu89-inline -Wformat=2 -O2 -pipe -g -feliminate-unused-debug-types -Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed -o libdw.so -shared -o libdw.so -Wl,--soname,libdw.so.1,-z,defs \ | »------Wl,--enable-new-dtags,-rpath,/usr/lib/elfutils \ | »------Wl,--version-script,libdw.map,--no-undefined \ | »------Wl,--whole-archive libdw_pic.a ../libdwfl/libdwfl_pic.a ../libebl/libebl.a ../libelf/libelf.so -Wl,--no-whole-archive\ | »------ldl -lbz2 -lz | ../libdwfl/libdwfl_pic.a(linux-kernel-modules.os): In function `dwfl_linux_kernel_report_offline': | /home/rchatre/poky_build_master/tmp/work/armv5te-poky-linux-gnueabi/elfutils-0.148-r7/elfutils-0.148/libdwfl/linux-kernel-modules.c:310: undefined reference to `fts_open' | /home/rchatre/poky_build_master/tmp/work/armv5te-poky-linux-gnueabi/elfutils-0.148-r7/elfutils-0.148/libdwfl/linux-kernel-modules.c:320: undefined reference to `fts_read' | /home/rchatre/poky_build_master/tmp/work/armv5te-poky-linux-gnueabi/elfutils-0.148-r7/elfutils-0.148/libdwfl/linux-kernel-modules.c:391: undefined reference to `fts_close' | /home/rchatre/poky_build_master/tmp/work/armv5te-poky-linux-gnueabi/elfutils-0.148-r7/elfutils-0.148/libdwfl/linux-kernel-modules.c:327: undefined reference to `fts_set' | ../libdwfl/libdwfl_pic.a(linux-kernel-modules.os): In function `dwfl_linux_kernel_find_elf': | /home/rchatre/poky_build_master/tmp/work/armv5te-poky-linux-gnueabi/elfutils-0.148-r7/elfutils-0.148/libdwfl/linux-kernel-modules.c:647: undefined reference to `fts_open' | /home/rchatre/poky_build_master/tmp/work/armv5te-poky-linux-gnueabi/elfutils-0.148-r7/elfutils-0.148/libdwfl/linux-kernel-modules.c:691: undefined reference to `fts_read' | /home/rchatre/poky_build_master/tmp/work/armv5te-poky-linux-gnueabi/elfutils-0.148-r7/elfutils-0.148/libdwfl/linux-kernel-modules.c:691: undefined reference to `fts_read' | /home/rchatre/poky_build_master/tmp/work/armv5te-poky-linux-gnueabi/elfutils-0ERROR: Function failed: do_compile (see /home/rchatre/poky_build_master/tmp/work/armv5te-poky-linux-gnueabi/elfutils-0.148-r7/temp/log.do_compile.11166 for further information) | .148-r7/elfutils-0.148/libdwfl/linux-kernel-modules.c:740: undefined reference to `fts_close' | /home/rchatre/poky_build_master/tmp/work/armv5te-poky-linux-gnueabi/elfutils-0.148-r7/elfutils-0.148/libdwfl/linux-kernel-modules.c:698: undefined reference to `fts_set' | /home/rchatre/poky_build_master/tmp/work/armv5te-poky-linux-gnueabi/elfutils-0.148-r7/elfutils-0.148/libdwfl/linux-kernel-modules.c:715: undefined reference to `fts_close' | ../libdwfl/libdwfl_pic.a(linux-kernel-modules.os): In function `check_module_notes': | /home/rchatre/poky_build_master/tmp/work/armv5te-poky-linux-gnueabi/elfutils-0.148-r7/elfutils-0.148/libdwfl/linux-kernel-modules.c:532: undefined reference to `fts_open' | /home/rchatre/poky_build_master/tmp/work/armv5te-poky-linux-gnueabi/elfutils-0.148-r7/elfutils-0.148/libdwfl/linux-kernel-modules.c:541: undefined reference to `fts_read' | /home/rchatre/poky_build_master/tmp/work/armv5te-poky-linux-gnueabi/elfutils-0.148-r7/elfutils-0.148/libdwfl/linux-kernel-modules.c:570: undefined reference to `fts_close' | ../libebl/libebl.a(eblwstrtab.o): In function `copystrings': | /home/rchatre/poky_build_master/tmp/work/armv5te-poky-linux-gnueabi/elfutils-0.148-r7/elfutils-0.148/libebl/eblwstrtab.c:329: undefined reference to `wmempcpy' | ../libebl/libebl.a(eblwstrtab.o): In function `ebl_wstrtabadd': | /home/rchatre/poky_build_master/tmp/work/armv5te-poky-linux-gnueabi/elfutils-0.148-r7/elfutils-0.148/libebl/eblwstrtab.c:249: undefined reference to `wcslen' | ../libebl/libebl.a(eblwstrtab.o): In function `searchstring': | /home/rchatre/poky_build_master/tmp/work/armv5te-poky-linux-gnueabi/elfutils-0.148-r7/elfutils-0.148/libebl/eblwstrtab.c:228: undefined reference to `wmemcmp' | collect2: error: ld returned 1 exit status | make[3]: *** [libdw.so] Error 1 | make[3]: Leaving directory `/home/rchatre/poky_build_master/tmp/work/armv5te-poky-linux-gnueabi/elfutils-0.148-r7/elfutils-0.148/libdw' | make[2]: *** [all] Error 2 | make[2]: Leaving directory `/home/rchatre/poky_build_master/tmp/work/armv5te-poky-linux-gnueabi/elfutils-0.148-r7/elfutils-0.148/libdw' | make[1]: *** [all-recursive] Error 1 | make[1]: Leaving directory `/home/rchatre/poky_build_master/tmp/work/armv5te-poky-linux-gnueabi/elfutils-0.148-r7/elfutils-0.148' | make: *** [all] Error 2 | ERROR: oe_runmake failed NOTE: package elfutils-0.148-r7: task do_compile: Failed ERROR: Task 604 (/opt/poky.git/meta/recipes-devtools/elfutils/elfutils_0.148.bb, do_compile) failed with exit code '1' I'd be happy to try any ideas you have. Reinette _______________________________________________ yocto mailing list yocto@yoctoproject.org https://lists.yoctoproject.org/listinfo/yocto