I'm trying to fix some errors I have in the Docker Groovy <https://github.com/groovy/docker-groovy> images on the ppc64le, arm64v8, and s390x architectures. I don't personally have any experience working with these architectures. Here are the errors I get
*powerpc64le <https://doi-janky.infosiftr.net/job/multiarch/view/images/view/groovy/job/ppc64le/job/groovy/lastSuccessfulBuild/consoleFull>* Dec 29, 2018 6:10:09 PM org.codehaus.groovy.runtime.m12n.MetaInfExtensionModule newModule WARNING: Module [groovy-datetime] - Unable to load extension class [org.apache.groovy.datetime.extensions.DateTimeExtensions] Dec 29, 2018 6:10:09 PM org.codehaus.groovy.runtime.m12n.MetaInfExtensionModule newModule WARNING: Module [groovy-datetime] - Unable to load extension class [org.apache.groovy.datetime.extensions.DateTimeStaticExtensions] java.lang.reflect.InvocationTargetException at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:606) at org.codehaus.groovy.tools.GroovyStarter.rootLoader(GroovyStarter.java:110) at org.codehaus.groovy.tools.GroovyStarter.main(GroovyStarter.java:128) Caused by: java.lang.UnsatisfiedLinkError: Could not load library. Reasons: [no jansi in java.library.path, /tmp/libjansi-64-6177151729256195035.so: Error relocating /tmp/libjansi-64-6177151729256195035.so: unsupported relocation type 7 (Possible cause: can't load AMD 64-bit .so on a Power PC 64-bit platform)] at org.fusesource.hawtjni.runtime.Library.doLoad(Library.java:182) at org.fusesource.hawtjni.runtime.Library.load(Library.java:140) at org.fusesource.jansi.internal.CLibrary.<clinit>(CLibrary.java:42) at org.fusesource.jansi.AnsiConsole.wrapOutputStream(AnsiConsole.java:48) at org.fusesource.jansi.AnsiConsole.<clinit>(AnsiConsole.java:38) at java.lang.Class.forName0(Native Method) at java.lang.Class.forName(Class.java:195) at groovyjarjarpicocli.CommandLine$Help$Ansi.isJansiConsoleInstalled(CommandLine.java:9362) at groovyjarjarpicocli.CommandLine$Help$Ansi.ansiPossible(CommandLine.java:9358) at groovyjarjarpicocli.CommandLine$Help$Ansi.enabled(CommandLine.java:9376) at groovyjarjarpicocli.CommandLine$Help$Ansi$Text.toString(CommandLine.java:9728) at java.lang.String.valueOf(String.java:2849) at java.io.PrintStream.println(PrintStream.java:821) at groovyjarjarpicocli.CommandLine.printVersionHelp(CommandLine.java:1563) at groovyjarjarpicocli.CommandLine.printHelpIfRequested(CommandLine.java:1027) at groovyjarjarpicocli.CommandLine.printHelpIfRequested(CommandLine.java:995) at groovy.ui.GroovyMain.processArgs(GroovyMain.java:130) at groovy.ui.GroovyMain.main(GroovyMain.java:116) ... 6 more *arm64v8 <https://doi-janky.infosiftr.net/job/multiarch/view/images/view/groovy/job/arm64v8/job/groovy/lastSuccessfulBuild/consoleFull>* Dec 30, 2018 2:32:22 AM org.codehaus.groovy.runtime.m12n.MetaInfExtensionModule newModule WARNING: Module [groovy-datetime] - Unable to load extension class [org.apache.groovy.datetime.extensions.DateTimeExtensions] Dec 30, 2018 2:32:23 AM org.codehaus.groovy.runtime.m12n.MetaInfExtensionModule newModule WARNING: Module [groovy-datetime] - Unable to load extension class [org.apache.groovy.datetime.extensions.DateTimeStaticExtensions] java.lang.reflect.InvocationTargetException at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:606) at org.codehaus.groovy.tools.GroovyStarter.rootLoader(GroovyStarter.java:110) at org.codehaus.groovy.tools.GroovyStarter.main(GroovyStarter.java:128) Caused by: java.lang.UnsatisfiedLinkError: Could not load library. Reasons: [no jansi in java.library.path, /tmp/libjansi-64-6661390371961894243.so: Error relocating /tmp/libjansi-64-6661390371961894243.so: unsupported relocation type 7 (Possible cause: can't load AMD 64-bit .so on a AARCH64-bit platform)] at org.fusesource.hawtjni.runtime.Library.doLoad(Library.java:182) at org.fusesource.hawtjni.runtime.Library.load(Library.java:140) at org.fusesource.jansi.internal.CLibrary.<clinit>(CLibrary.java:42) at org.fusesource.jansi.AnsiConsole.wrapOutputStream(AnsiConsole.java:48) at org.fusesource.jansi.AnsiConsole.<clinit>(AnsiConsole.java:38) at java.lang.Class.forName0(Native Method) at java.lang.Class.forName(Class.java:195) at groovyjarjarpicocli.CommandLine$Help$Ansi.isJansiConsoleInstalled(CommandLine.java:9362) at groovyjarjarpicocli.CommandLine$Help$Ansi.ansiPossible(CommandLine.java:9358) at groovyjarjarpicocli.CommandLine$Help$Ansi.enabled(CommandLine.java:9376) at groovyjarjarpicocli.CommandLine$Help$Ansi$Text.toString(CommandLine.java:9728) at java.lang.String.valueOf(String.java:2849) at java.io.PrintStream.println(PrintStream.java:821) at groovyjarjarpicocli.CommandLine.printVersionHelp(CommandLine.java:1563) at groovyjarjarpicocli.CommandLine.printHelpIfRequested(CommandLine.java:1027) at groovyjarjarpicocli.CommandLine.printHelpIfRequested(CommandLine.java:995) at groovy.ui.GroovyMain.processArgs(GroovyMain.java:130) at groovy.ui.GroovyMain.main(GroovyMain.java:116) ... 6 more <https://doi-janky.infosiftr.net/job/multiarch/view/images/view/groovy/job/arm64v8/job/groovy/lastSuccessfulBuild/consoleFull> *s390x <https://doi-janky.infosiftr.net/job/multiarch/view/images/view/groovy/job/s390x/job/groovy/lastSuccessfulBuild/consoleFull>* Dec 29, 2018 5:55:19 PM org.codehaus.groovy.runtime.m12n.MetaInfExtensionModule newModule WARNING: Module [groovy-datetime] - Unable to load extension class [org.apache.groovy.datetime.extensions.DateTimeExtensions] Dec 29, 2018 5:55:20 PM org.codehaus.groovy.runtime.m12n.MetaInfExtensionModule newModule WARNING: Module [groovy-datetime] - Unable to load extension class [org.apache.groovy.datetime.extensions.DateTimeStaticExtensions] [0mOpenJDK 64-Bit Zero VM warning: You have loaded library /tmp/libjansi-64-7943786764210458085.so which might have disabled stack guard. The VM will try to fix the stack guard now. It's highly recommended that you fix the library with 'execstack -c <libfile>', or link it with '-z noexecstack'. java.lang.reflect.InvocationTargetException at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:606) at org.codehaus.groovy.tools.GroovyStarter.rootLoader(GroovyStarter.java:110) at org.codehaus.groovy.tools.GroovyStarter.main(GroovyStarter.java:128) Caused by: java.lang.UnsatisfiedLinkError: Could not load library. Reasons: [no jansi in java.library.path, /tmp/libjansi-64-7943786764210458085.so: Error loading shared library /tmp/libjansi-64-7943786764210458085.so: Exec format error (Possible cause: endianness mismatch)] at org.fusesource.hawtjni.runtime.Library.doLoad(Library.java:182) at org.fusesource.hawtjni.runtime.Library.load(Library.java:140) at org.fusesource.jansi.internal.CLibrary.<clinit>(CLibrary.java:42) at org.fusesource.jansi.AnsiConsole.wrapOutputStream(AnsiConsole.java:48) at org.fusesource.jansi.AnsiConsole.<clinit>(AnsiConsole.java:38) at java.lang.Class.forName0(Native Method) at java.lang.Class.forName(Class.java:195) at groovyjarjarpicocli.CommandLine$Help$Ansi.isJansiConsoleInstalled(CommandLine.java:9362) at groovyjarjarpicocli.CommandLine$Help$Ansi.ansiPossible(CommandLine.java:9358) at groovyjarjarpicocli.CommandLine$Help$Ansi.enabled(CommandLine.java:9376) at groovyjarjarpicocli.CommandLine$Help$Ansi$Text.toString(CommandLine.java:9728) at java.lang.String.valueOf(String.java:2849) at java.io.PrintStream.println(PrintStream.java:821) at groovyjarjarpicocli.CommandLine.printVersionHelp(CommandLine.java:1563) at groovyjarjarpicocli.CommandLine.printHelpIfRequested(CommandLine.java:1027) at groovyjarjarpicocli.CommandLine.printHelpIfRequested(CommandLine.java:995) at groovy.ui.GroovyMain.processArgs(GroovyMain.java:130) at groovy.ui.GroovyMain.main(GroovyMain.java:116) ... 6 more I tried installing Jansi native packages (libjansi-native-java on Debian, java-jansi-native on Alpine), but that didn't seem to help (at least for linux-ppc64le that I tested on Travis). It seems like maybe jansi-native is missing support for these architectures? Though I don't know why arm32v5, arm32v6, and arm32v7 appear to have built fine. Has anyone used Jansi on these problematic architectures? Have any suggestions? -Keegan