That's more or less quite easy: perl has a bundled extutils-makemaker which installs the script and the standalone extutils-makemaker wants to install the updated script. Even if it's now the same - the cpan module is updated more often and bring changes before they're merged into core (likely).
So I'd prefer - even if both files are the same - that cpan > core (poky). Jens > Am 02.02.2019 um 20:30 schrieb Alexander Kanavin <[email protected]>: > > In cases like this I would dig deeper and find out *why* these two > components want to install binaries with the same name, how the > binaries differ (if they do), and what do desktop distros do about the > situation. I typically view patches that add 'blind' use of > update-alternatives as treating symptoms rather than the issue, but I > prefer not to fight against it :) > > Alex > > On Sat, 2 Feb 2019 at 18:38, Jens Rehsack <[email protected]> wrote: >> >> Hi, >> >> I'm trying to get some recipes building after perl-update, but I'm >> struggeling for: >> >> ERROR: plack-middleware-fixmissingbodyinredirect-perl-0.12-r0 >> do_prepare_recipe_sysroot: The file /usr/bin/instmodsh is installed by both >> perl-native and extutils-makemaker-perl-native, aborting >> ERROR: plack-middleware-fixmissingbodyinredirect-perl-0.12-r0 >> do_prepare_recipe_sysroot: Function failed: extend_recipe_sysroot >> ERROR: Logfile of failure stored in: >> /home/sno/gpw-community-bsp/gpw-yocto-platform/tmp/work/cortexa8hf-neon-poky-linux-gnueabi/plack-middleware-fixmissingbodyinredirect-perl/0.12-r0/temp/log.do_prepare_recipe_sysroot.23078 >> >> Logfile contains: >> DEBUG: Executing python function do_prepare_recipe_sysroot >> DEBUG: Executing python function extend_recipe_sysroot >> NOTE: Direct dependencies are >> ['virtual:native:/home/sno/gpw-community-bsp/sources/poky/meta/recipes-devtools/qemu/qemu_3.1.0.bb:do_populate_sysroot', >> >> '/home/sno/gpw-community-bsp/sources/poky/meta/recipes-devtools/perl-sanity/perl_5.28.1.bb:do_populate_sysroot', >> >> '/home/sno/gpw-community-bsp/sources/poky/meta/recipes-devtools/gcc/gcc-cross_8.2.bb:do_populate_sysroot', >> >> 'virtual:native:/home/sno/gpw-community-bsp/sources/meta-cpan/recipes-devel/extutils-makemaker-perl/extutils-makemaker-perl_7.34.bb:do_populate_sysroot', >> >> '/home/sno/gpw-community-bsp/sources/poky/meta/recipes-devtools/gcc/gcc-runtime_8.2.bb:do_populate_sysroot', >> >> '/home/sno/gpw-community-bsp/sources/poky/meta/recipes-core/glibc/glibc_2.29.bb:do_populate_sysroot', >> >> 'virtual:native:/home/sno/gpw-community-bsp/sources/poky/meta/recipes-devtools/perl-sanity/perl_5.28.1.bb:do_populate_sysroot', >> >> '/home/sno/gpw-community-bsp/sources/poky/meta/recipes-devtools/qemu/qemu-helper-native_1.0.bb:do_populate_sysroot', >> >> 'virtual:native:/home/sno/gpw-community-bsp/sources/meta-cpan/recipes-www/http-message-perl/http-message-perl_6.18.bb:do_populate_sysroot'] >> ERROR: The file /usr/bin/instmodsh is installed by both perl-native and >> extutils-makemaker-perl-native, aborting >> DEBUG: Python function extend_recipe_sysroot finished >> DEBUG: Python function do_prepare_recipe_sysroot finished >> ERROR: Function failed: extend_recipe_sysroot >> >> Typically such an issue is fixed by: >> >> poky: >> >> diff --git a/meta/recipes-devtools/perl-sanity/perl_5.28.1.bb >> b/meta/recipes-devtools/perl-sanity/perl_5.28.1.bb >> index 71653feb53..f66f96919e 100644 >> --- a/meta/recipes-devtools/perl-sanity/perl_5.28.1.bb >> +++ b/meta/recipes-devtools/perl-sanity/perl_5.28.1.bb >> @@ -168,6 +168,39 @@ perl_package_preprocess () { >> ${PKGD}${libdir}/perl5/config.sh >> } >> >> +inherit update-alternatives >> + >> +ALTERNATIVE_PRIORITY = "100" >> + >> +ALTERNATIVE_${PN} = "corelist cpan enc2xs encguess h2ph h2xs instmodsh >> json_pp libnetcfg \ >> + piconv pl2pm pod2html pod2man pod2text pod2usage >> podchecker podselect \ >> + prove ptar ptardiff ptargrep shasum splain xsubpp >> zipdetails" >> +ALTERNATIVE_LINK_NAME[corelist] = "${bindir}/corelist" >> +ALTERNATIVE_LINK_NAME[cpan] = "${bindir}/cpan" >> +ALTERNATIVE_LINK_NAME[enc2xs] = "${bindir}/enc2xs" >> +ALTERNATIVE_LINK_NAME[encguess] = "${bindir}/encguess" >> +ALTERNATIVE_LINK_NAME[h2ph] = "${bindir}/h2ph" >> +ALTERNATIVE_LINK_NAME[h2xs] = "${bindir}/h2xs" >> +ALTERNATIVE_LINK_NAME[instmodsh] = "${bindir}/instmodsh" >> +ALTERNATIVE_LINK_NAME[json_pp] = "${bindir}/json_pp" >> +ALTERNATIVE_LINK_NAME[libnetcfg] = "${bindir}/libnetcfg" >> +ALTERNATIVE_LINK_NAME[piconv] = "${bindir}/piconv" >> +ALTERNATIVE_LINK_NAME[pl2pm] = "${bindir}/pl2pm" >> +ALTERNATIVE_LINK_NAME[pod2html] = "${bindir}/pod2html" >> +ALTERNATIVE_LINK_NAME[pod2man] = "${bindir}/pod2man" >> +ALTERNATIVE_LINK_NAME[pod2text] = "${bindir}/pod2text" >> +ALTERNATIVE_LINK_NAME[pod2usage] = "${bindir}/pod2usage" >> +ALTERNATIVE_LINK_NAME[podchecker] = "${bindir}/podchecker" >> +ALTERNATIVE_LINK_NAME[podselect] = "${bindir}/podselect" >> +ALTERNATIVE_LINK_NAME[prove] = "${bindir}/prove" >> +ALTERNATIVE_LINK_NAME[ptar] = "${bindir}/ptar" >> +ALTERNATIVE_LINK_NAME[ptardiff] = "${bindir}/ptardiff" >> +ALTERNATIVE_LINK_NAME[ptargrep] = "${bindir}/ptargrep" >> +ALTERNATIVE_LINK_NAME[shasum] = "${bindir}/shasum" >> +ALTERNATIVE_LINK_NAME[splain] = "${bindir}/splain" >> +ALTERNATIVE_LINK_NAME[xsubpp] = "${bindir}/xsubpp" >> +ALTERNATIVE_LINK_NAME[zipdetails] = "${bindir}/zipdetails" >> + >> require perl-ptest.inc >> >> FILES_${PN} = "${bindir}/perl ${bindir}/perl.real ${bindir}/perl${PV} >> ${libdir}/libperl.so* \ >> >> meta-cpan: >> >> diff --git >> a/recipes-devel/extutils-makemaker-perl/extutils-makemaker-perl_7.34.bb >> b/recipes-devel/extutils-makemaker-perl/extutils-makemaker-perl_7.34.bb >> index a9d21b1..7a958ed 100644 >> --- a/recipes-devel/extutils-makemaker-perl/extutils-makemaker-perl_7.34.bb >> +++ b/recipes-devel/extutils-makemaker-perl/extutils-makemaker-perl_7.34.bb >> @@ -41,4 +41,11 @@ do_install_prepend_class-native() { >> export PERL5LIB="${PERL_ARCHLIB}" >> } >> >> +inherit update-alternatives >> + >> +ALTERNATIVE_PRIORITY = "90" >> + >> +ALTERNATIVE_${PN} = "instmodsh" >> +ALTERNATIVE_LINK_NAME[instmodsh] = "${bindir}/instmodsh" >> + >> BBCLASSEXTEND = "native" >> >> But unfortunately it doesn't show any effect. >> >> Any ideas? >> >> Best regards >> -- >> Jens Rehsack - [email protected] >> -- Jens Rehsack - [email protected]
signature.asc
Description: Message signed with OpenPGP
-- _______________________________________________ Openembedded-core mailing list [email protected] http://lists.openembedded.org/mailman/listinfo/openembedded-core
