Bug 4923 - Cross-compilation issue with libexec when building for 32 bit host on arch 64.
Summary: Cross-compilation issue with libexec when building for 32 bit host on arch 64.
Status: RESOLVED FIXED
Alias: None
Product: Other YP Layers
Classification: Build System, Metadata & Runtime
Component: layers (show other bugs)
Version: unspecified
Hardware: x86 Multiple
: Medium normal
Target Milestone: 1.5
Assignee: Christopher Larson
QA Contact:
URL:
Whiteboard:
Depends on:
Blocks:
 
Reported: 2013-07-26 07:57 UTC by Laszlo Papp
Modified: 2013-09-25 10:42 UTC (History)
7 users (show)

See Also:
OS type for building Yocto: ---
Type of Regression: ---
Verified:
Documentation change: No (bug/feature does not impact docs)


Attachments
local.conf (9.55 KB, application/octet-stream)
2013-07-26 07:57 UTC, Laszlo Papp
no flags Details
bblayers.conf (333 bytes, application/octet-stream)
2013-07-26 07:57 UTC, Laszlo Papp
no flags Details
installed-packages (13.17 KB, text/x-log)
2013-07-26 08:04 UTC, Laszlo Papp
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Laszlo Papp 2013-07-26 07:57:11 UTC
Created attachment 1368 [details]
local.conf

Here you can find the toolchain I am using for this test:

https://developer.ridgerun.com/wiki/index.php/Code_Sourcery_ARM_toolchain_2009q1-203

Using poky and meta-sourcery master HEAD.

Same issue with 9.0.1 and master HEAD as with 9.0.0.

Any workaround? Otherwise, it is a blocker now.


bitbake core-image-minimal

WARNING: Host distribution "arch-rolling" has not been validated with this version of the build system; you may possibly experience unexpected failures. It is recommended that you use a tested distribution.
Parsing recipes: 100% |######################################################################################################################################################################################################| ETA:  00:00:00
Parsing of 848 .bb files complete (0 cached, 848 parsed). 1175 targets, 48 skipped, 0 masked, 0 errors.

Build Configuration:
BB_VERSION        = "1.19.1"
BUILD_SYS         = "x86_64-linux"
NATIVELSBSTRING   = "arch-rolling"
TARGET_SYS        = "arm-poky-linux-gnueabi"
MACHINE           = "qemuarm"
DISTRO            = "poky"
DISTRO_VERSION    = "1.4+snapshot-20130726"
TUNE_FEATURES     = "armv5 thumb dsp"
TARGET_FPU        = "soft"
CSL_VER_MAIN      = "2009q1-203"
EXTERNAL_TOOLCHAIN = "/usr/local/arm-2009q1"
meta-sourcery     = "master:832ce1937780bbb508050f02ac8a8bf309045fef"
meta              
meta-yocto        
meta-yocto-bsp    = "master:67864ca79da08df752487a3a4e1a975546da123d"

NOTE: Resolving any missing task queue dependencies
NOTE: preferred version 4.3% of nativesdk-gcc-runtime not available (for item virtual/nativesdk-x86_64-pokysdk-linux-compilerlibs)
NOTE: versions of nativesdk-gcc-runtime available: 4.7.2 4.8.1
NOTE: preferred version 4.3% of gcc-crosssdk not available (for item virtual/x86_64-pokysdk-linux-gcc-crosssdk)
NOTE: versions of gcc-crosssdk available: 4.7.2 4.8.1
NOTE: preferred version 4.3% of nativesdk-libgcc not available (for item nativesdk-libgcc)
NOTE: versions of nativesdk-libgcc available: 4.7.2 4.8.1
NOTE: preferred version 4.3% of gcc-crosssdk not available (for item virtual/x86_64-pokysdk-linux-g++-crosssdk)
NOTE: versions of gcc-crosssdk available: 4.7.2 4.8.1
NOTE: preferred version 4.3% of gcc-crosssdk-initial not available (for item virtual/x86_64-pokysdk-linux-gcc-initial-crosssdk)
NOTE: versions of gcc-crosssdk-initial available: 4.7.2 4.8.1
NOTE: preferred version 4.3% of nativesdk-libgcc not available (for item nativesdk-libgcc)
NOTE: versions of nativesdk-libgcc available: 4.7.2 4.8.1
NOTE: Preparing runqueue
NOTE: Executing SetScene Tasks
NOTE: Executing RunQueue Tasks
ERROR: Function failed: do_install (log file is located at /home/lpapp/Projects/poky/build/tmp/work/armv5te-poky-linux-gnueabi/external-sourcery-toolchain/2009q1-203-r22/temp/log.do_install.8130)
ERROR: Logfile of failure stored in: /home/lpapp/Projects/poky/build/tmp/work/armv5te-poky-linux-gnueabi/external-sourcery-toolchain/2009q1-203-r22/temp/log.do_install.8130
Log data follows:
| DEBUG: Executing shell function do_install
| cp: cannot stat '/usr/local/arm-2009q1/bin/../arm-none-linux-gnueabi/libc/usr/libexec': No such file or directory
| ERROR: Function failed: do_install (log file is located at /home/lpapp/Projects/poky/build/tmp/work/armv5te-poky-linux-gnueabi/external-sourcery-toolchain/2009q1-203-r22/temp/log.do_install.8130)
ERROR: Task 31 (/home/lpapp/Projects/poky/meta-sourcery/recipes/meta/external-sourcery-toolchain.bb, do_install) failed with exit code '1'
NOTE: Tasks Summary: Attempted 91 tasks of which 0 didn't need to be rerun and 1 failed.
Waiting for 0 running tasks to finish:

Summary: 1 task failed:
  /home/lpapp/Projects/poky/meta-sourcery/recipes/meta/external-sourcery-toolchain.bb, do_install
Summary: There was 1 WARNING message shown.
Summary: There was 1 ERROR message shown, returning a non-zero exit code.
Comment 1 Laszlo Papp 2013-07-26 07:57:27 UTC
Created attachment 1369 [details]
bblayers.conf
Comment 2 Laszlo Papp 2013-07-26 08:04:10 UTC
Created attachment 1370 [details]
installed-packages
Comment 3 Laszlo Papp 2013-07-26 16:09:38 UTC
The main problem seems to be the fact that the libexec folder desired contains only an empty folder. Unfortunately when we use git for having a back up for our toolchain, empty folders get lost, of course.

Question is, why would meta-sourcery like to introspect an empty folder and demand it? Can this check be removed, please?
Comment 4 Christopher Larson 2013-07-26 17:10:22 UTC
It copies paths it knows exists in the release. It's not empty in most versions of the toolchain, and the path does exist in the release toolchain you're using, so it's completely reasonable to copy a path we know exists. I'll add a check to work around libexec not existing for your case.
Comment 5 Laszlo Papp 2013-07-26 17:13:06 UTC
For the love of God, please do not copy empty folders. They do not make any sense. If you do, do not release a toolchain with empty folders pretty please. Git and several other storages will drop the content of empty directories altogether.
Comment 6 Laszlo Papp 2013-07-26 17:50:36 UTC
By the way, the oe-core sourcery support works just fine with denzil, so this libexec enforcement seems to have happened after that.

I believe it should work, at least for empty folders, like oe-core sourcery support. That would probably unblock me.

I cannot do much about git not tracking files, but content.
Comment 7 Christopher Larson 2013-07-26 18:03:07 UTC
This should now be resolved, please confirm, thanks.
Comment 8 Laszlo Papp 2013-07-26 18:17:09 UTC
OK, thanks.

Hopefully, I can do that on Monday.
Comment 9 Saul Wold 2013-07-26 18:24:09 UTC
typically the assignee changes the status of the bugs, not the reporter.
Comment 10 Laszlo Papp 2013-07-26 18:26:14 UTC
Sure, but I think Chris forgot to change, so in this special case, he just got some help. I think this kind of help is to be appreciated rather than discouraged.
Comment 11 Ross Burton 2013-09-25 10:35:54 UTC
Laszlo, ping on Chris's request to verify the fix.
Comment 12 Laszlo Papp 2013-09-25 10:42:10 UTC
To be honest, I do not have time in the foreseeable future to verify this, but if I recall correctly, I checked this back then.

I think it is ok to close this, and I will try to reopen if the issue is still hit.