| Summary: | x32: valgrind fails to compile | ||
|---|---|---|---|
| Product: | [Build System, Metadata & Runtime] OE-Core | Reporter: | Nitin Kamble <nitin.a.kamble> |
| Component: | core | Assignee: | sweeaun <swee.aun.khor> |
| Status: | RESOLVED WONTFIX | QA Contact: | |
| Severity: | minor | ||
| Priority: | Low | CC: | alejandro.hernandez, bogdan.a.marinescu, corneliux.stoicescu, dvhart, hjl.tools, jessica.zhang, kergoth, meta.mr.watcher, meta.watcher, rebecca.swee.fun.chang, richard.purdie, sgw, song.liu |
| Version: | unspecified | ||
| Target Milestone: | Future | ||
| Hardware: | x86 | ||
| OS: | x86_64 | ||
| Whiteboard: | |||
| OS type for building Yocto: | --- | Type of Regression: | --- |
| Verified: | Documentation change: | Don't know | |
| Bug Depends on: | |||
| Bug Blocks: | 3437 | ||
|
Description
Nitin Kamble
2011-08-25 14:16:41 UTC
as of 12/1 still see the same issue, need valgrind which can work with eglibc 2.14. I tried 3.7.0 version of valgrind, which does not have the eglibc issue. But still lot of assembly lines & and code needs to change to support x32. Also x32 target valgrind needs x32 developer machine, which is still in the future. so we can reduce the priority for this. Nitin You can work with H J Ju for this bug. Nitin or Radu, can you please retest? I need steps to reproduce. Nitin can you help? This task is lot of work. I will ping HJ if he has any update on this. Any update Nitin? I can't get it to compile. I need instructions to get this build started. My setup is: Build Configuration: BB_VERSION = "1.15.3" TARGET_ARCH = "x86_64" TARGET_OS = "linux-gnux32" MACHINE = "qemux86-64" DISTRO = "poky" DISTRO_VERSION = "1.2+snapshot-20120926" TUNE_FEATURES = "mx32" TARGET_FPU = "" meta meta-yocto meta-yocto-bsp = "master:e8738b83b70eb794c5509ec7706bf64c68249af1" Please correct me if not appropriate in some way. tried core-image-minimal and core-image-lsb but in both cases the build blows up when eglibc is compiled. Radu, HJ Lu is on sabbatical now, so I could not get latest update from him on this, and AFAIK valgrind is not ported to x32 yet. To work on this task, you will need to understand the x32 ABI, the pdf is here: https://sites.google.com/site/x32abi/documents/x32-abi-1.0.pdf?attredirects=0&d=1 . And also you will need to understand valgrind source code. And as per the x32 EFI specifications you will need to add x32 support in valgrind. It is a not a quick task, and requires understanding of x32 EFI specifications, and inner-working of valgrind. Nitin (In reply to comment #10) > tried core-image-minimal and core-image-lsb but in both cases the build > blows up when eglibc is compiled. Radu, Check with Saul, he was able to build x32 image lately. - Nitin Radu, Are you building with the meta-x32 layer? FYI That layer is not needed anymore as it is collapsed into poky layer. Nitin Moved to 1.4 as this seems to be too much an effort for 1.3 stabilization. @Nitin: Can you please provide Radu with the necessary steps to test this issue? Example: how did you get to that error output? Thanks! Here are the steps I took for this:
Add the requisite x32 enablers to your local.conf:
DEFAULTTUNE = "x86-64-x32"
baselib = "${@d.getVar('BASE_LIB_tune-' + (d.getVar('DEFAULTTUNE', True) or 'INVALID'), True) or 'lib'}"
bitbake valgrind
wait for it to fail!
I am getting a different failure than the configuration failure below, I am now seeing to get into the compile phase and fail with a missing file:
grind/3.8.1-r8/valgrind-3.8.1/coregrind/m_debugger.c:33:
| /srv/hdd/builds/x32/build/tmp/sysroots/qemux86-64/usr/include/gnu/stubs.h:10:27: fatal error: gnu/stubs-64.h: No such file or directory
Should have the information to reproduce the failure now. Please verify this is still an issue Valgrind still does not seem to support x32: | checking for diff -u... yes | checking for a supported version of gcc... ok (6.2.0) | checking build system type... x86_64-pc-linux-gnu | checking host system type... x86_64-oe-linux-gnux32 | checking for a supported CPU... ok (x86_64) | checking for a 64-bit only build... no | checking for a 32-bit only build... yes | checking for a supported OS... ok (linux-gnux32) | checking for the kernel version... 2.6 or later (3.13.0-24-generic) | checking for 32 bit build support... no | configure: error: --enable-only32bit was specified but system does not support 32 bit builds | ERROR: Function failed: do_configure (log file is located at /data/kergoth/mel/yocto/memory-profiling/build/tmp-glibc/work/core2-64-x32-oe-linux-gnux32/valgrind/3.12.0-r0/temp/log.do_configure.18181) ERROR: Task (/data/kergoth/mel/yocto/memory-profiling/oe-core/meta/recipes-devtools/valgrind/valgrind_3.12.0.bb:do_configure) failed with exit code '1' That said, I'm not sure adding support for it to the upstream project lies in our area of responsibility. We already have a COMPATIBLE_HOST so it's seen as unbuildable for x32. I'm inclined to say we close this as resolved wontfix until such time as upstream supports it, or someone inclined to add such support shows up. Adding change to disable x32 build for musl library build. Closed this bug as wontfix for now. http://git.yoctoproject.org/cgit/cgit.cgi/poky/commit/?id=d654f4934d9c877167c69216aabb80ff75beff40 |