Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Errors running on Oracle Enterprise Linux 7 (same as CentOS 7) x86_64 #606

Closed
russoisraeli opened this issue Apr 26, 2021 · 7 comments
Closed

Comments

@russoisraeli
Copy link

When running either the provided binaries for Linux x86_86 (Oracle Enterprise Linux 7 - OEL 7/CentOS 7), OR building and running from source, the following errors show:

WARN App - WARNING: Support for new group V2 is disabled, because the required native library dependency is missing: libzkgroup
Missing required native library dependency: libsignal-client

It looks like there's a library dependency issues. I extracted libzkgroup.so, and libsignal_jni.so from zkgroup-java-0.7.0.jar and signal-client-java-0.2.3.jar:

$ ldd libzkgroup.so
./libzkgroup.so: /lib64/libc.so.6: version `GLIBC_2.18' not found (required by ./libzkgroup.so)

$ ldd libsignal_jni.so
./libsignal_jni.so: /lib64/libc.so.6: version `GLIBC_2.18' not found (required by ./libsignal_jni.so)

Building and updating libzkgroup.so in the JAR, helps the first warning. However, I cannot solve the second error.

Please help.

@AsamK
Copy link
Owner

AsamK commented May 3, 2021

The bundled .so files require a more recent glibc than provided by CentOS 7.
You need to compile both libzkgroup.so and libsignal_jni.so.
https://github.com/AsamK/signal-cli/wiki/Provide-native-lib-for-libsignal

@AsamK AsamK closed this as completed May 3, 2021
@russoisraeli
Copy link
Author

Hello Asam,

I did build the two libraries and update the JAR file. After that the libzkgroup.so warning disappears, but the libsignal error persists.

/Igor

@russoisraeli
Copy link
Author

These are the original libraries:

$ unzip -t ../../signal-cli/lib/zkgroup-java-0.7.0.jar | grep zkgroup.so
testing: libzkgroup.so OK

$ unzip ../../signal-cli/lib/zkgroup-java-0.7.0.jar libzkgroup.so
Archive: ../../signal-cli/lib/zkgroup-java-0.7.0.jar
inflating: libzkgroup.so

$ ldd libzkgroup.so
./libzkgroup.so: /lib64/libc.so.6: version `GLIBC_2.18' not found (required by ./libzkgroup.so)
linux-vdso.so.1 => (0x00007ffff03cd000)
libdl.so.2 => /lib64/libdl.so.2 (0x00007f75281ee000)
librt.so.1 => /lib64/librt.so.1 (0x00007f7527fe6000)
libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f7527dca000)
libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x00007f7527bb4000)
libc.so.6 => /lib64/libc.so.6 (0x00007f75277e6000)
/lib64/ld-linux-x86-64.so.2 (0x00007f75286a4000)

$ unzip -t ../../signal-cli/lib/signal-client-java-0.2.3.jar | grep "lib.*.so"
testing: libsignal_jni.so OK

$ unzip ../../signal-cli/lib/signal-client-java-0.2.3.jar libsignal_jni.so
Archive: ../../signal-cli/lib/signal-client-java-0.2.3.jar
inflating: libsignal_jni.so

$ ldd libsignal_jni.so
./libsignal_jni.so: /lib64/libc.so.6: version `GLIBC_2.18' not found (required by ./libsignal_jni.so)
linux-vdso.so.1 => (0x00007ffd0b97c000)
libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x00007fa189c09000)
libpthread.so.0 => /lib64/libpthread.so.0 (0x00007fa1899ed000)
libc.so.6 => /lib64/libc.so.6 (0x00007fa18961f000)
/lib64/ld-linux-x86-64.so.2 (0x00007fa18a1d6000)

These are my current libraries:

$ unzip -t ../../signal-cli/lib/zkgroup-java-0.7.0.jar | grep zkgroup.so
testing: libzkgroup.so OK

$ unzip ../../signal-cli/lib/zkgroup-java-0.7.0.jar libzkgroup.so
Archive: ../../signal-cli/lib/zkgroup-java-0.7.0.jar
inflating: libzkgroup.so

$ ldd libzkgroup.so
linux-vdso.so.1 => (0x00007ffe6fb43000)
libdl.so.2 => /lib64/libdl.so.2 (0x00007fd2b5744000)
librt.so.1 => /lib64/librt.so.1 (0x00007fd2b553c000)
libpthread.so.0 => /lib64/libpthread.so.0 (0x00007fd2b5320000)
libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x00007fd2b510a000)
libc.so.6 => /lib64/libc.so.6 (0x00007fd2b4d3c000)
/lib64/ld-linux-x86-64.so.2 (0x00007fd2b5bfc000)

$ unzip -t ../../signal-cli/lib/signal-client-java-0.2.3.jar | grep "lib.*.so"
testing: libsignal_jni.so OK

$ unzip ../../signal-cli/lib/signal-client-java-0.2.3.jar libsignal_jni.so
Archive: ../../signal-cli/lib/signal-client-java-0.2.3.jar
inflating: libsignal_jni.so

$ ldd libsignal_jni.so
linux-vdso.so.1 => (0x00007ffdc2733000)
libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x00007f557fed6000)
librt.so.1 => /lib64/librt.so.1 (0x00007f557fcce000)
libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f557fab2000)
libm.so.6 => /lib64/libm.so.6 (0x00007f557f7b0000)
libc.so.6 => /lib64/libc.so.6 (0x00007f557f3e2000)
/lib64/ld-linux-x86-64.so.2 (0x00007f558052d000)

@russoisraeli
Copy link
Author

I followed the instructions in https://github.com/AsamK/signal-cli/wiki/Provide-native-lib-for-libsignal to the T, and I get --

$ ./signal-cli --verbose link
2021-05-12T18:10:36.366-0400 [main] INFO LibSignal - [libsignal-client]: rust/bridge/jni/src/logging.rs:173: Initializing libsignal-client version:0.5.1
Missing required native library dependency: libsignal-client

I tried depositing the library separately, use LD_LIBRARY_PATH (and/or install it via /etc/ld.conf.d/, ldconfig) and it makes no difference.

@AsamK
Copy link
Owner

AsamK commented May 13, 2021

Go to the releases page and download the source for the libsignal-client version used by signal-cli (Check the version of signal-client....jar in the signal-cli lib folder - as of 1st May 2021 its java-0.2.3 release).

@russoisraeli
Copy link
Author

Thank you so much! Certainly in business now

@DangerD1024
Copy link

Can anybody help me to run it on centos 7?
I've downloaded signal-cli 0.9.0 binary and downloaded and compiled libsignal-client (cargo buld) but i'm still receiving this:

./signal-cli -u +3123456789 register
WARN ServiceConfig - Failed to call libzkgroup: /tmp/resource14876823003249171637.so: /lib64/libc.so.6: version `GLIBC_2.18' not found (required by /tmp/resource14876823003249171637.so)
WARN App - WARNING: Support for new group V2 is disabled, because the required native library dependency is missing: libzkgroup
WARN ServiceConfig - Failed to call libsignal-client: /tmp/resource16638353198192584885.so: /lib64/libc.so.6: version `GLIBC_2.18' not found (required by /tmp/resource16638353198192584885.so)
Missing required native library dependency: libsignal-client

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants