UPGRADE YOUR BROWSER

We have detected your current browser version is not the latest one. Xilinx.com uses the latest web technologies to bring you the best online experience possible. Please upgrade to a Xilinx.com supported browser:Chrome, Firefox, Internet Explorer 11, Safari. Thank you!

AR# 59802

2013.10 - PetaLinux - Compilation Errors When Including Perl Modules in Root Filesystem

Description

When I include Perl modules in my root filesystem, I receive a compilation failure. 

The build.log file shows messages similar to the following:

[ALL  ]  perl-module-app-cpan : Depends: perl-module-vars but it is not installable
[ALL  ]                         Depends: perl-module-warnings but it is not installable
[ALL  ]                         Depends: perl-module-strict but it is not installable
[ALL  ]  perl-module-autoloader : Depends: perl-module-strict but it is not installable [ALL  ]  perl-module-b : Depends: perl-module-strict but it is not installable [ALL  ]  perl-module-b-deparse : Depends: perl-module-vars but it is not installable
[ALL  ]                          Depends: perl-module-warnings but it is not installable
[ALL  ]                          Depends: perl-module-strict but it is not installable
[ALL  ]  perl-module-base : Depends: perl-module-strict but it is not installable
[ALL  ]                     Depends: perl-module-vars but it is not installable

Solution

The default package list for PetaLinux's root filesystem subsystem does not properly expose that the "perl" package includes several core (required) components of Perl.

To correct this problem, add the following line to the Perl section of the packages file:

Provides: perl-module-strict, perl-module-config, perl-module-warnings, perl-module-vars, perl-module-warnings-register

The location of the Packages file differs based on the target CPU architecture.  

Below is a reference for where to locate the Packages file:

ARM (Zynq-7000):
<PETALINUX_INSTALL_DIR>/components/packages-repo/plnx-repo/dists/default/main/binary-armv7a-vfp-neon/Packages

MicroBlaze (ml):
<PETALINUX_INSTALL_DIR>/components/packages-repo/plnx-repo/dists/default/main/binary-microblazeel-v8.30-bs-cmp-ml/Packages

MicroBlaze (mh-div):
<PETALINUX_INSTALL_DIR>/components/packages-repo/plnx-repo/dists/default/main/binary-microblazeel-v8.30-bs-cmp-mh-div/Packages

An example of the complete section (for ARM) with the additional line is below:

Version: 5.14.3-r1
Architecture: armv7a-vfp-neon
Maintainer: OE-Core Developers <openembedded-core@lists.openembedded.org>
Depends: libperl5 (>= 5.14.3), libgcc-s1 (>= 4.7.3), libc6 (>= 2.17)
Filename: pool/main/p/perl/perl_5.14.3-r1_armv7a-vfp-neon.deb
Size: 33560
MD5sum: df9a9211a9d8a3074da1496058881b11
SHA1: 0b017e0c56d18795860e8beb7076f9d82351cbb9
SHA256: 0f2a641fb9d5be01041ee4ae620ae0688e6f5c0e487aee56739e22940ca1f8cc
Section: devel
Priority: optional
Homepage: http://www.perl.org/
Description: perl version 5.14.3-r1
 Perl is a popular scripting language.
OE: perl
Provides: perl-module-strict, perl-module-config, perl-module-warnings, perl-module-vars, perl-module-warnings-register

AR# 59802
Date Created 03/17/2014
Last Updated 05/22/2014
Status Active
Type General Article
Tools
  • PetaLinux
  • PetaLinux - 2013.10