Bug 1288561 - rakudo-star-2015.11 build failure on ppc64le
Summary: rakudo-star-2015.11 build failure on ppc64le
Status: CLOSED RAWHIDE
Alias: None
Product: Fedora
Classification: Fedora
Component: rakudo-star
Version: rawhide
Hardware: ppc64le
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: Gerd Pokorra
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Keywords:
Depends On:
Blocks: PPCTracker F-ExcludeArch-ppc64le, PPC64LETracker
TreeView+ depends on / blocked
 
Reported: 2015-12-04 15:16 UTC by Ngo Than
Modified: 2015-12-14 22:42 UTC (History)
2 users (show)

(edit)
Clone Of:
(edit)
Last Closed: 2015-12-14 17:08:34 UTC


Attachments (Terms of Use)

Description Ngo Than 2015-12-04 15:16:27 UTC
rakudo-star-2015.11 doesn't build on ppc64le.

/usr/bin/perl -MExtUtils::Command -e cp /usr/bin/eval-client.pl .
./perl6-j --target=jar --output=lib/Test.pm.jar -Ilib lib/Test.pm
./perl6-j --target=jar --output=lib/lib.pm6.jar lib/lib.pm6
./perl6-j --target=jar --output=lib/Pod/To/Text.pm.jar lib/Pod/To/Text.pm
./perl6-j --target=jar --output=lib/newline.pm6.jar lib/newline.pm6
./perl6-j --target=jar --output=lib/NativeCall/Types.pm.jar lib/NativeCall/Types.pm
===SORRY!===
java.lang.UnsatisfiedLinkError: Native library (com/sun/jna/linux-ppc64le/libjnidispatch.so) not found in resource path ([file:/builddir/build/BUILD/rakudo-star-2015.11/rakudo/, file:/builddir/build/BUILD/rakudo-star-2015.11/rakudo/, file:/builddir/build/BUILD/rakudo-star-2015.11/rakudo/blib/, file:/usr/share/nqp/lib/])
Makefile:445: recipe for target 'lib/NativeCall/Types.pm.jar' failed
make[1]: *** [lib/NativeCall/Types.pm.jar] Error 1
make[1]: Leaving directory '/builddir/build/BUILD/rakudo-star-2015.11/rakudo'


For more info please take a look at:
 http://ppc.koji.fedoraproject.org/kojifiles/work/tasks/5926/2965926/build.log

Comment 1 Rafael Fonseca 2015-12-04 16:22:09 UTC
The problem seems to be in the bundled jna from nqp:

sh-4.3# jar tf /usr/share/nqp/runtime/jna.jar | grep linux
com/sun/jna/linux-x86/
com/sun/jna/linux-x86/libjnidispatch.so
com/sun/jna/linux-x86-64/
com/sun/jna/linux-x86-64/libjnidispatch.so
com/sun/jna/linux-arm/
com/sun/jna/linux-arm/libjnidispatch.so

As in [1], the jna needs to be updated to a version with ppc64/ppc64le support [2]. That's probably the case in rawhide, where the error doesn't happen [3].

[1] https://issues.jenkins-ci.org/browse/JENKINS-15792
[2] https://github.com/java-native-access/jna/pull/425/files
[3] http://ppc.koji.fedoraproject.org/koji/buildinfo?buildID=353690

The problem also happens on ppc64.

Comment 2 Gerd Pokorra 2015-12-06 06:03:44 UTC
At line 50 to 53 of the spec is defined that the build of the JVM subpackage will not be done for the i686 architecture:

%define build_jvm_exec 1
%ifarch i686
%define build_jvm_exec 0
%endif

You can make a simple workaround and disable the building of the JVM subpackage also for the ppc architechture:

%define build_jvm_exec 1
%ifarch i686 ppc ppc64
%define build_jvm_exec 0
%endif

Comment 3 Gerd Pokorra 2015-12-07 18:44:57 UTC
At

https://koji.fedoraproject.org/koji/taskinfo?taskID=12100307

is a rawhide scratch build that do not bundle jna.

Comment 4 Gerd Pokorra 2015-12-09 03:51:36 UTC
Indeed the scratch build only overwrite the nqp jna with the jna of the system and bundle this. Now the is a nqp build (nqp-0.0.2015.11-3.fc24) in rawhide the really do not bundle jna:

https://koji.fedoraproject.org/koji/taskinfo?taskID=12117454

Does this fix the problem?

Comment 5 Gerd Pokorra 2015-12-09 03:55:22 UTC
I wanted to write:

Now there is a nqp build (nqp-0.0.2015.11-3.fc24) in rawhide that really do not bundle jna.

Comment 6 Gerd Pokorra 2015-12-14 17:08:34 UTC
rakudo-star builds also with the jvm executable at the top of the nqp ((nqp-0.0.2015.11-4.fc24) that do not bundle jna.


A ppc scratch build is at:

http://ppc.koji.fedoraproject.org/koji/taskinfo?taskID=2990815



A rebuild at the primary architecture is running.


Rafael thank you for the tip.

Comment 7 Rafael Fonseca 2015-12-14 22:42:20 UTC
Thank you for the fix.


Note You need to log in before you can comment on or make changes to this bug.