Closed bencz closed 1 year ago
It looks like this is due to a missing detection rule in https://github.com/uber/h3-java/blob/8a4c63d44e93edae1f59dc0070fea5857830e38e/src/main/c/h3-java/build-h3.sh#L123 it should be pretty straightforward to add. Could you try adding "Linux ppc64") LIBRARY_DIR=linux-ppc64 ;;
above that line and let me know if it works?
Well... it works, but not work ahahah
-------------------------------------------------------
T E S T S
-------------------------------------------------------
Running com.uber.h3core.TestVertex
OpenJDK 64-Bit Server VM warning: You have loaded library /tmp/libh3-java2401984482744904673.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'.
#
# A fatal error has been detected by the Java Runtime Environment:
#
# SIGILL (0x4) at pc=0x00007fff9ac502e8, pid=4409, tid=4410
#
# JRE version: OpenJDK Runtime Environment (17.0.6+10) (build 17.0.6+10-Debian-1)
# Java VM: OpenJDK 64-Bit Server VM (17.0.6+10-Debian-1, mixed mode, sharing, tiered, compressed oops, compressed class ptrs, g1 gc, linux-ppc64)
# Problematic frame:
# C [libm.so.6+0x402e8] __atan2_finite+0xfff92ac0
#
# No core dump will be written. Core dumps have been disabled. To enable core dumping, try "ulimit -c unlimited" before starting Java again
#
# An error report file with more information is saved as:
# /home/bencz/h3-java/hs_err_pid4409.log
#
# If you would like to submit a bug report, please visit:
# https://bugs.debian.org/openjdk-17
# The crash happened outside the Java Virtual Machine in native code.
# See problematic frame for where to report the bug.
Could you also attach the error report file (/home/bencz/h3-java/hs_err_pid4409.log
) if it has any additional information?
SIGILL (illegal instruction) inside of libm suggests to me that the libm
that H3 linked against is not working or has some bug on your architecture. From some Google searches, it seems like glibc might have sporadic issues with which specific PowerPC architecture they target. What version of glibc and Debian are you using? What specific processor are you using? Unfortunately I do not have PowerPC hardware to debug further myself.
@isaacbrodsky I compiled H3 on the same server, and all tests failed due to illegal instruction. I am currently testing on IBM IBM Power7 - 740, also, I did the same test in an old Power Mac G5, and, I got the same error...
Anyway, I will open a issue on H3 repo, to check this
Also, I'm using Debian Port ppc64 - 12
@isaacbrodsky There is a problem, in the Debian port libm build, that is using a Power9 specific instruction
@isaacbrodsky , problem solved! It was a problem with QEMU ....
I'm trying to use the lib on a Debian ppc64 server, but at compile time I'm getting the following errors in tests