Packaging help needed: Prevent noarch package from requiring 32bit RPMs on a 64bit system
Paul Howarth
paul at city-fan.org
Wed Oct 31 19:44:51 UTC 2012
On Wed, 31 Oct 2012 16:26:46 +0100
Miro HronĨok <miro at hroncok.cz> wrote:
> Hi,
> I am trying to package slic3r -> it is a perl noarch package, but it
> requires a lot of arch specific perl modules.
>
> The Requires section form spec file:
>
> Requires: perl(XML::SAX)
> Requires: perl(Growl::GNTP)
> Requires: perl(Net::DBus)
> Requires: perl(:MODULE_COMPAT_%(eval "`%{__perl} -V:version`";
> echo $version))
>
> https://github.com/hroncok/SPECS/blob/master/slic3r.spec
>
> The rest of Requires are automatically added.
>
> When I built the package and add it to the repository together with
> required packages I made, it requires arch mishmash on a 64bit system:
>
> Install:
> slic3r noarch myrepo
> Install requires:
> perl-Boost-Geometry-Utils i686 myrepo
> perl-Class-Accessor noarch
> perl-Class-Method-Modifiers noarch
> perl-Crypt-CBC noarch
> perl-Devel-Symdump noarch
> perl-Digest-SHA x86_64
> perl-Digest-SHA1 x86_64
> perl-File-HomeDir noarch
> perl-File-Which noarch
> perl-Growl-GNTP noarch myrepo
> perl-JSON noarch
> perl-Language-Expr noarch myrepo
> perl-Math-Clipper i686 myrepo
> perl-Math-ConvexHull noarch myrepo
> perl-Math-Expression-Evaluator noarch myrepo
> perl-Math-Factor-XS i686 myrepo
> perl-Math-Geometry-Voronoi i686 myrepo
> perl-Math-Libm x86_64 myrepo
> perl-Math-NumSeq noarch myrepo
> perl-Math-PlanePath noarch myrepo
> perl-Math-Prime-XS i686 myrepo
> perl-Math-Symbolic noarch
> perl-Module-Load noarch
> perl-Module-Util noarch
> perl-Moo noarch
> perl-Net-DBus x86_64
> perl-Params-Validate x86_64
> perl-Parse-RecDescent noarch
> perl-Pod-Coverage noarch
> perl-Regexp-Grammars noarch
> perl-Role-Tiny noarch
> perl-SVG noarch
> perl-Test-Pod noarch
> perl-Test-Pod-Coverage noarch
> perl-Test-Simple noarch
> perl-UUID-Tiny noarch myrepo
> perl-Wx x86_64
> perl-XML-Twig noarch
> perl-boolean noarch
> perl-constant-defer noarch myrepo
> perl-libintl x86_64
> perl-parent noarch
> perl-strictures noarch
>
> Lines with myrepo are made by me, you can see specs here:
> https://github.com/hroncok/SPECS/
>
> As you can see, it installs 64bit required packages from officail
> repositories, but it installs 32bit packages from mine (64bit packages
> also exists, that's not the problem).
>
> It installs slic3r, but it won't work, as it looks up its't arch
> specific modules in 64bit directories.
>
> If I manually run
> yum install perl-Boost-Geometry-Utils perl-Math-Clipper
> perl-Math-Factor-XS perl-Math-Geometry-Voronoi perl-Math-Prime-XS
> slic3r
>
> It works as expected (install 64bit packages).
>
> What should I as a packager do, to avoid this situation?
>
> Thank you very much.
I think this is down to having both i686 and x86_64 perl module
packages in your own repo; I don't think Fedora multilibs perl modules.
Paul.
More information about the devel
mailing list