The perl-cross uses PERL_API_VERSION but not PERL_VERSION to define
libperl soname: 
libperl.so.$PERL_API_REVISION.$PERL_API_VERSION.$PERL_API_SUBVERSION.
For perl stable releases, the PERL_API_SUBVERSION is always 0. Specify
the so version for libperl to make sure the libperl.so can be linked to
the correct library.

Signed-off-by: Yi Zhao <[email protected]>
---
 meta/recipes-devtools/perl-sanity/perl_5.28.1.bb | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

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 71653fe..1cc5480 100644
--- a/meta/recipes-devtools/perl-sanity/perl_5.28.1.bb
+++ b/meta/recipes-devtools/perl-sanity/perl_5.28.1.bb
@@ -34,6 +34,8 @@ inherit upstream-version-is-even
 
 DEPENDS += "db gdbm zlib virtual/crypt"
 
+PERL_LIB_VER = "${@'.'.join(d.getVar('PV').split('.')[0:2])}.0"
+
 do_unpack_append() {
     bb.build.exec_func('do_copy_perlcross', d)
 }
@@ -104,7 +106,7 @@ do_install() {
 
     # Fix up shared library
     rm ${D}/${libdir}/perl5/${PV}/${TARGET_ARCH}-linux/CORE/libperl.so
-    ln -sf ../../../../libperl.so.${PV} 
${D}/${libdir}/perl5/${PV}/${TARGET_ARCH}-linux/CORE/libperl.so
+    ln -sf ../../../../libperl.so.${PERL_LIB_VER} 
${D}/${libdir}/perl5/${PV}/${TARGET_ARCH}-linux/CORE/libperl.so
 }
 
 do_install_append_class-target() {
-- 
2.7.4

-- 
_______________________________________________
Openembedded-core mailing list
[email protected]
http://lists.openembedded.org/mailman/listinfo/openembedded-core

Reply via email to