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

JRuby can Not load JFFI library under IBM s390x with linux platform #4632

Open
gajju26 opened this issue May 29, 2017 · 4 comments
Open

JRuby can Not load JFFI library under IBM s390x with linux platform #4632

gajju26 opened this issue May 29, 2017 · 4 comments

Comments

@gajju26
Copy link

gajju26 commented May 29, 2017

Environment

Provide at least:

  • JRuby version (jruby -v) and command line (flags, JRUBY_OPTS, etc)
    9.1.10.0
  • Operating system and platform (e.g. uname -a)
    Linux 4.4.0-64-generic Ubuntu SMP Mon Feb 20 11:55:38 UTC 2017 s390x s390x s390x GNU/Linux

Expected Behavior

JRuby should load libjffi.so for s390x architecture.

Actual Behavior

When I start the Hbase shell I get the following output

INFO [main] Configuration.deprecation: hadoop.native.lib is deprecated. Instead, use io.native.lib.available
java.lang.RuntimeException: java.lang.UnsatisfiedLinkError: Could not locate stub library in jar file. Tried [jni/s390x-Linux/libjffi-1.0.so, /jni/s390x-Linux/libjffi-1.0.so]
at com.kenai.jffi.Foreign$InValidInstanceHolder.getForeign(Foreign.java:90)

@headius
Copy link
Member

headius commented May 31, 2017

Looks like we don't have a binary for Linux on s390x...the related file in archive/ is empty.

Care to build a binary for us? :-D

@gajju26
Copy link
Author

gajju26 commented Jun 1, 2017

I can provide you the binary for Linux on s390x can you tell me how can I share the binary with you? Also what version of libjffi binary will be needed?

@headius
Copy link
Member

headius commented Jun 1, 2017

There's a version of libffi that's vendored into our repo. Check README.md for build instructions and provide us the jffi-s360x-Linux.jar that it builds.

@nirvdrum
Copy link
Contributor

nirvdrum commented Jun 9, 2017

You're most likely going to need to update jnr-constants and jnr-posix as well.

jnr/jnr-constants#24 lays the groundwork to make platform-specific constants in jnr-constants easier.

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