Bug 15461 - AB-INT: liberror-perl-0.17029-r0 do_install failure on beaglebone
Summary: AB-INT: liberror-perl-0.17029-r0 do_install failure on beaglebone
Status: RESOLVED FIXED
Alias: None
Product: OE-Core
Classification: Build System, Metadata & Runtime
Component: devtools / tool chain (show other bugs)
Version: unspecified
Hardware: x86 Multiple
: Medium+ normal
Target Milestone: 5.0 M4
Assignee: Tim Orling
QA Contact:
URL:
Whiteboard:
Depends on:
Blocks:
 
Reported: 2024-03-27 20:52 UTC by Alexandre Belloni
Modified: 2024-04-06 00:59 UTC (History)
5 users (show)

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


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Alexandre Belloni 2024-03-27 20:52:43 UTC
https://autobuilder.yoctoproject.org/typhoon/#/builders/65/builds/8824/steps/14/logs/stdio

fedora38-ty-6


https://autobuilder.yoctoproject.org/typhoon/#/builders/65/builds/8818/steps/14/logs/stdio

rocky9-ty-1


https://autobuilder.yoctoproject.org/typhoon/#/builders/65/builds/8814/steps/14/logs/stdio

fedora38-ty-2


| Your perl and your Config.pm seem to have different ideas about the
| architecture they are running on.
| Perl thinks: [x86_64-linux]
| Config says: [arm-linux]
| This may or may not cause problems. Please check your installation of perl
| if you have problems building this extension.
| *** Module name IN: /home/pokybuild/yocto-worker/beaglebone/build/build/tmp/work/cortexa8hf-neon-poky-linux-gnueabi/liberror-perl/0.17029/recipe-sysroot-native/usr/bin/perl-native/../../../usr/lib/perl5/5.38.2/x86_64-linux/PerlIO/encoding.pm
| *** p1: /home/pokybuild/yocto-worker/beaglebone/build/build/tmp/work/cortexa8hf-neon-poky-linux-gnueabi/liberror-perl/0.17029/recipe-sysroot-native/usr/bin/perl-native/../../../usr/lib/  p3: perl5/5.38.2/  p5: x86_64-linux/ p7: PerlIO/encoding.pm
| *** Module name OUT: /home/pokybuild/yocto-worker/beaglebone/build/build/tmp/work/cortexa8hf-neon-poky-linux-gnueabi/liberror-perl/0.17029/recipe-sysroot-native/usr/lib/perl5/5.38.2/x86_64-linux/PerlIO/encoding.pm
| Generating a Unix-style Makefile
| Writing Makefile for Error
| Writing MYMETA.yml and MYMETA.json
| ==> Your Makefile has been rebuilt. <==
| ==> Please rerun the make command.  <==
| false
| make: *** [Makefile:809: Makefile] Error 1
| ERROR: oe_runmake failed
| WARNING: /home/pokybuild/yocto-worker/beaglebone/build/build/tmp/work/cortexa8hf-neon-poky-linux-gnueabi/liberror-perl/0.17029/temp/run.do_install.3900822:187 exit 1 from 'exit 1'
| WARNING: Backtrace (BB generated script):
| 	#1: bbfatal_log, /home/pokybuild/yocto-worker/beaglebone/build/build/tmp/work/cortexa8hf-neon-poky-linux-gnueabi/liberror-perl/0.17029/temp/run.do_install.3900822, line 187
| 	#2: die, /home/pokybuild/yocto-worker/beaglebone/build/build/tmp/work/cortexa8hf-neon-poky-linux-gnueabi/liberror-perl/0.17029/temp/run.do_install.3900822, line 171
| 	#3: oe_runmake, /home/pokybuild/yocto-worker/beaglebone/build/build/tmp/work/cortexa8hf-neon-poky-linux-gnueabi/liberror-perl/0.17029/temp/run.do_install.3900822, line 166
| 	#4: cpan_do_install, /home/pokybuild/yocto-worker/beaglebone/build/build/tmp/work/cortexa8hf-neon-poky-linux-gnueabi/liberror-perl/0.17029/temp/run.do_install.3900822, line 158
| 	#5: do_install, /home/pokybuild/yocto-worker/beaglebone/build/build/tmp/work/cortexa8hf-neon-poky-linux-gnueabi/liberror-perl/0.17029/temp/run.do_install.3900822, line 153
| 	#6: main, /home/pokybuild/yocto-worker/beaglebone/build/build/tmp/work/cortexa8hf-neon-poky-linux-gnueabi/liberror-perl/0.17029/temp/run.do_install.3900822, line 200
NOTE: recipe liberror-perl-0.17029-r0: task do_install: Failed
ERROR: Task (/home/pokybuild/yocto-worker/beaglebone/build/meta/recipes-devtools/perl/liberror-perl_0.17029.bb:do_install) failed with exit code '1'
Comment 2 Tim Orling 2024-03-28 14:46:59 UTC
We should probably consider moving away from this module in 5.1:

https://metacpan.org/pod/Error#WARNING

Using the "Error" module is no longer recommended due to the black-magical nature of its syntactic sugar, which often tends to break. Its maintainers have stopped actively writing code that uses it, and discourage people from doing so. See the "SEE ALSO" section below for better recommendations.

https://metacpan.org/pod/Error#SEE-ALSO

SEE ALSO
See Exception::Class for a different module providing Object-Oriented exception handling, along with a convenient syntax for declaring hierarchies for them. It doesn't provide Error's syntactic sugar of try { ... }, catch { ... }, etc. which may be a good thing or a bad thing based on what you want. (Because Error's syntactic sugar tends to break.)

Error::Exception aims to combine Error and Exception::Class "with correct stringification".

TryCatch and Try::Tiny are similar in concept to Error.pm only providing a syntax that hopefully breaks less.
Comment 3 Tim Orling 2024-03-28 16:36:27 UTC
The only thing in oe-core that depends on this is coreutils-ptest. It is no longer required for coreutils-ptest and so I have submitted patches to move to meta-perl.

https://patchwork.yoctoproject.org/project/oe-core/list/?series=23601

https://patchwork.yoctoproject.org/project/oe/patch/20240328162849.1523339-1-tim.orling@konsulko.com/