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

not implemented error Raspberry pi 2 #2950

Closed
richrarobi opened this Issue May 16, 2015 · 13 comments

Comments

Projects
None yet
8 participants
@richrarobi
Copy link

commented May 16, 2015

sudo /opt/jruby/bin/jruby -S gem install ruby-gpio
Fetching: concurrent-ruby-0.8.0-java.gem (100%)
NotImplementedError: waitpid unsupported or native support failed to load
                       flock at org/jruby/RubyFile.java:298
  block in cache_update_path at /opt/jruby/lib/ruby/stdlib/rubygems/remote_fetcher.rb:310
                        open at org/jruby/RubyIO.java:1126
                        open at org/jruby/RubyKernel.java:336
           cache_update_path at /opt/jruby/lib/ruby/stdlib/rubygems/remote_fetcher.rb:309
                    download at /opt/jruby/lib/ruby/stdlib/rubygems/remote_fetcher.rb:168
                    download at /opt/jruby/lib/ruby/stdlib/rubygems/source.rb:210
                    download at /opt/jruby/lib/ruby/stdlib/rubygems/resolver/activation_request.rb:60
            block in install at /opt/jruby/lib/ruby/stdlib/rubygems/request_set.rb:160
                        each at org/jruby/RubyArray.java:1571
                     install at /opt/jruby/lib/ruby/stdlib/rubygems/request_set.rb:150
                 install_gem at /opt/jruby/lib/ruby/stdlib/rubygems/commands/install_command.rb:249
       block in install_gems at /opt/jruby/lib/ruby/stdlib/rubygems/commands/install_command.rb:299
                        each at org/jruby/RubyArray.java:1571
                install_gems at /opt/jruby/lib/ruby/stdlib/rubygems/commands/install_command.rb:295
                     execute at /opt/jruby/lib/ruby/stdlib/rubygems/commands/install_command.rb:202
      invoke_with_build_args at /opt/jruby/lib/ruby/stdlib/rubygems/command.rb:307
                process_args at /opt/jruby/lib/ruby/stdlib/rubygems/command_manager.rb:168
                         run at /opt/jruby/lib/ruby/stdlib/rubygems/command_manager.rb:138
                         run at /opt/jruby/lib/ruby/stdlib/rubygems/gem_runner.rb:54
                       <top> at /opt/jruby/bin/jgem:21
                        load at org/jruby/RubyKernel.java:984
                       <top> at /opt/jruby/bin/gem:4
@richrarobi

This comment has been minimized.

Copy link
Author

commented May 16, 2015

jruby 9.0.0.0.pre2 (2.2.2) 2015-04-28 2755ae0 Java HotSpot(TM) Client VM 25.0-b70 on 1.8.0-b132 +jit [linux-arm]

Linux pi-00 3.18.11-v7+ #781 SMP PREEMPT Tue Apr 21 18:07:59 BST 2015 armv7l GNU/Linux

@richrarobi richrarobi closed this May 16, 2015

@richrarobi richrarobi reopened this May 16, 2015

@kares

This comment has been minimized.

Copy link
Member

commented May 20, 2015

could you try running: jruby -Xnative.verbose=true -S gem install ... and post back the output?

@kares kares added the ffi label May 20, 2015

@richrarobi

This comment has been minimized.

Copy link
Author

commented May 20, 2015

127|u0_a37@android:/ $ ssh -X 192.168.1.9 -l rich
Could not create directory '/data/ssh_client'.
The authenticity of host '192.168.1.9 (192.168.1.9)' can't be established.
ECDSA key fingerprint is d1:64:52:9e:7f:4c:8d:0a:82:13:48:70:42:12:ec:f4.
Are you sure you want to continue connecting (yes/no)? yes
Failed to add the host to the list of known hosts (/data/ssh_client/known_hosts).
rich@192.168.1.9's password:
Linux pi-00 3.18.11-v7+ #781 SMP PREEMPT Tue Apr 21 18:07:59 BST 2015 armv7l

The programs included with the Debian GNU/Linux system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.

Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.
Last login: Wed May 20 11:39:34 2015 from ghost.local
rich@pi-00 ~ $  jruby -Xnative.verbose=true -S gem install ...
Failed to load native POSIX impl; falling back on Java impl. Stacktrace follows.
java.lang.UnsatisfiedLinkError: could not load FFI provider jnr.ffi.provider.jffi.Provider
        at jnr.ffi.provider.InvalidProvider$1.loadLibrary(InvalidProvider.java:48)
        at jnr.ffi.LibraryLoader.load(LibraryLoader.java:287)
        at jnr.ffi.Library.loadLibrary(Library.java:127)
        at jnr.posix.POSIXFactory$DefaultLibCProvider$SingletonHolder.<clinit>(POSIXFactory.java:271)
        at jnr.posix.POSIXFactory$DefaultLibCProvider.getLibC(POSIXFactory.java:275)
        at jnr.posix.BaseNativePOSIX.<init>(BaseNativePOSIX.java:36)
        at jnr.posix.LinuxPOSIX.<init>(LinuxPOSIX.java:18)
        at jnr.posix.POSIXFactory.loadLinuxPOSIX(POSIXFactory.java:143)
        at jnr.posix.POSIXFactory.loadNativePOSIX(POSIXFactory.java:121)
        at jnr.posix.POSIXFactory.loadPOSIX(POSIXFactory.java:90)
        at jnr.posix.LazyPOSIX.loadPOSIX(LazyPOSIX.java:35)
        at jnr.posix.LazyPOSIX.posix(LazyPOSIX.java:31)
        at jnr.posix.LazyPOSIX.isNative(LazyPOSIX.java:329)
        at org.jruby.RubyGlobal.prepareStdioChannel(RubyGlobal.java:283)
        at org.jruby.RubyGlobal.createGlobals(RubyGlobal.java:197)
        at org.jruby.Ruby.init(Ruby.java:1274)
        at org.jruby.Ruby.newInstance(Ruby.java:330)
        at org.jruby.Main.internalRun(Main.java:267)
        at org.jruby.Main.run(Main.java:226)
        at org.jruby.Main.main(Main.java:198)
Caused by: java.lang.ExceptionInInitializerError
        at jnr.ffi.provider.jffi.NativeRuntime.getInstance(NativeRuntime.java:49)
        at jnr.ffi.provider.jffi.Provider.<init>(Provider.java:29)
        at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
        at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
        at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
        at java.lang.reflect.Constructor.newInstance(Constructor.java:408)
        at java.lang.Class.newInstance(Class.java:433)
        at jnr.ffi.provider.FFIProvider$SystemProviderSingletonHolder.getInstance(FFIProvider.java:68)
        at jnr.ffi.provider.FFIProvider$SystemProviderSingletonHolder.<clinit>(FFIProvider.java:57)
        at jnr.ffi.provider.FFIProvider.getSystemProvider(FFIProvider.java:35)
        at jnr.ffi.Library.loadLibrary(Library.java:114)
        ... 17 more
Caused by: java.lang.IllegalStateException: Can't overwrite cause with java.lang.UnsatisfiedLinkError: java.lang.UnsatisfiedLinkError: /tmp/jffi4702179369502564792.so: /tmp/jffi4702179369502564792.so: cannot open shared object file: No such file or directory
        at java.lang.ClassLoader$NativeLibrary.load(Native Method)
        at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1929)
        at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1814)
        at java.lang.Runtime.load0(Runtime.java:809)
        at java.lang.System.load(System.java:1083)
        at com.kenai.jffi.internal.StubLoader.loadFromJar(StubLoader.java:358)
        at com.kenai.jffi.internal.StubLoader.load(StubLoader.java:251)
        at com.kenai.jffi.internal.StubLoader.<clinit>(StubLoader.java:431)
        at java.lang.Class.forName0(Native Method)
        at java.lang.Class.forName(Class.java:340)
        at com.kenai.jffi.Init.load(Init.java:68)
        at com.kenai.jffi.Foreign$InstanceHolder.getInstanceHolder(Foreign.java:49)
        at com.kenai.jffi.Foreign$InstanceHolder.<clinit>(Foreign.java:45)
        at com.kenai.jffi.Foreign.getInstance(Foreign.java:103)
        at com.kenai.jffi.Type$Builtin.lookupTypeInfo(Type.java:242)
        at com.kenai.jffi.Type$Builtin.getTypeInfo(Type.java:237)
        at com.kenai.jffi.Type.resolveSize(Type.java:155)
        at com.kenai.jffi.Type.size(Type.java:138)
        at jnr.ffi.provider.jffi.NativeRuntime$TypeDelegate.size(NativeRuntime.java:178)
        at jnr.ffi.provider.AbstractRuntime.<init>(AbstractRuntime.java:48)
        at jnr.ffi.provider.jffi.NativeRuntime.<init>(NativeRuntime.java:57)
        at jnr.ffi.provider.jffi.NativeRuntime.<init>(NativeRuntime.java:41)
        at jnr.ffi.provider.jffi.NativeRuntime$SingletonHolder.<clinit>(NativeRuntime.java:53)
        at jnr.ffi.provider.jffi.NativeRuntime.getInstance(NativeRuntime.java:49)
        at jnr.ffi.provider.jffi.Provider.<init>(Provider.java:29)
        at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
        at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
        at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
        at java.lang.reflect.Constructor.newInstance(Constructor.java:408)
        at java.lang.Class.newInstance(Class.java:433)
        at jnr.ffi.provider.FFIProvider$SystemProviderSingletonHolder.getInstance(FFIProvider.java:68)
        at jnr.ffi.provider.FFIProvider$SystemProviderSingletonHolder.<clinit>(FFIProvider.java:57)
        at jnr.ffi.provider.FFIProvider.getSystemProvider(FFIProvider.java:35)
        at jnr.ffi.Library.loadLibrary(Library.java:114)
        at jnr.posix.POSIXFactory$DefaultLibCProvider$SingletonHolder.<clinit>(POSIXFactory.java:271)
        at jnr.posix.POSIXFactory$DefaultLibCProvider.getLibC(POSIXFactory.java:275)
        at jnr.posix.BaseNativePOSIX.<init>(BaseNativePOSIX.java:36)
        at jnr.posix.LinuxPOSIX.<init>(LinuxPOSIX.java:18)
        at jnr.posix.POSIXFactory.loadLinuxPOSIX(POSIXFactory.java:143)
        at jnr.posix.POSIXFactory.loadNativePOSIX(POSIXFactory.java:121)
        at jnr.posix.POSIXFactory.loadPOSIX(POSIXFactory.java:90)
        at jnr.posix.LazyPOSIX.loadPOSIX(LazyPOSIX.java:35)
        at jnr.posix.LazyPOSIX.posix(LazyPOSIX.java:31)
        at jnr.posix.LazyPOSIX.isNative(LazyPOSIX.java:329)
        at org.jruby.RubyGlobal.prepareStdioChannel(RubyGlobal.java:283)
        at org.jruby.RubyGlobal.createGlobals(RubyGlobal.java:197)
        at org.jruby.Ruby.init(Ruby.java:1274)
        at org.jruby.Ruby.newInstance(Ruby.java:330)
        at org.jruby.Main.internalRun(Main.java:267)
        at org.jruby.Main.run(Main.java:226)
        at org.jruby.Main.main(Main.java:198)
java.lang.UnsatisfiedLinkError: /opt/jruby/lib/jni/arm-Linux/libjffi-1.2.so: /opt/jruby/lib/jni/arm-Linux/libjffi-1.2.so: cannot open shared object file: No such file or directory
        at java.lang.ClassLoader$NativeLibrary.load(Native Method)
        at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1929)
        at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1814)
        at java.lang.Runtime.load0(Runtime.java:809)
        at java.lang.System.load(System.java:1083)
        at com.kenai.jffi.internal.StubLoader.loadFromBootPath(StubLoader.java:313)
        at com.kenai.jffi.internal.StubLoader.load(StubLoader.java:246)
        at com.kenai.jffi.internal.StubLoader.<clinit>(StubLoader.java:431)
        at java.lang.Class.forName0(Native Method)
        at java.lang.Class.forName(Class.java:340)
        at com.kenai.jffi.Init.load(Init.java:68)
        at com.kenai.jffi.Foreign$InstanceHolder.getInstanceHolder(Foreign.java:49)
        at com.kenai.jffi.Foreign$InstanceHolder.<clinit>(Foreign.java:45)
        at com.kenai.jffi.Foreign.getInstance(Foreign.java:103)
        at com.kenai.jffi.Type$Builtin.lookupTypeInfo(Type.java:242)
        at com.kenai.jffi.Type$Builtin.getTypeInfo(Type.java:237)
        at com.kenai.jffi.Type.resolveSize(Type.java:155)
        at com.kenai.jffi.Type.size(Type.java:138)
        at jnr.ffi.provider.jffi.NativeRuntime$TypeDelegate.size(NativeRuntime.java:178)
        at jnr.ffi.provider.AbstractRuntime.<init>(AbstractRuntime.java:48)
        at jnr.ffi.provider.jffi.NativeRuntime.<init>(NativeRuntime.java:57)
        at jnr.ffi.provider.jffi.NativeRuntime.<init>(NativeRuntime.java:41)
        at jnr.ffi.provider.jffi.NativeRuntime$SingletonHolder.<clinit>(NativeRuntime.java:53)
        at jnr.ffi.provider.jffi.NativeRuntime.getInstance(NativeRuntime.java:49)
        at jnr.ffi.provider.jffi.Provider.<init>(Provider.java:29)
        at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
        at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
        at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
        at java.lang.reflect.Constructor.newInstance(Constructor.java:408)
        at java.lang.Class.newInstance(Class.java:433)
        at jnr.ffi.provider.FFIProvider$SystemProviderSingletonHolder.getInstance(FFIProvider.java:68)
        at jnr.ffi.provider.FFIProvider$SystemProviderSingletonHolder.<clinit>(FFIProvider.java:57)
        at jnr.ffi.provider.FFIProvider.getSystemProvider(FFIProvider.java:35)
        at jnr.ffi.Library.loadLibrary(Library.java:114)
        at jnr.posix.POSIXFactory$DefaultLibCProvider$SingletonHolder.<clinit>(POSIXFactory.java:271)
        at jnr.posix.POSIXFactory$DefaultLibCProvider.getLibC(POSIXFactory.java:275)
        at jnr.posix.BaseNativePOSIX.<init>(BaseNativePOSIX.java:36)
        at jnr.posix.LinuxPOSIX.<init>(LinuxPOSIX.java:18)
        at jnr.posix.POSIXFactory.loadLinuxPOSIX(POSIXFactory.java:143)
        at jnr.posix.POSIXFactory.loadNativePOSIX(POSIXFactory.java:121)
        at jnr.posix.POSIXFactory.loadPOSIX(POSIXFactory.java:90)
        at jnr.posix.LazyPOSIX.loadPOSIX(LazyPOSIX.java:35)
        at jnr.posix.LazyPOSIX.posix(LazyPOSIX.java:31)
        at jnr.posix.LazyPOSIX.isNative(LazyPOSIX.java:329)
        at org.jruby.RubyGlobal.prepareStdioChannel(RubyGlobal.java:283)
        at org.jruby.RubyGlobal.createGlobals(RubyGlobal.java:197)
        at org.jruby.Ruby.init(Ruby.java:1274)
        at org.jruby.Ruby.newInstance(Ruby.java:330)
        at org.jruby.Main.internalRun(Main.java:267)
        at org.jruby.Main.run(Main.java:226)
        at org.jruby.Main.main(Main.java:198)
java.lang.UnsatisfiedLinkError: /opt/jruby/lib/jni/arm-Linux/libjffi-1.2.so: /opt/jruby/lib/jni/arm-Linux/libjffi-1.2.so: cannot open shared object file: No such file or directory
        at java.lang.ClassLoader$NativeLibrary.load(Native Method)
        at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1929)
        at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1814)
        at java.lang.Runtime.load0(Runtime.java:809)
        at java.lang.System.load(System.java:1083)
        at com.kenai.jffi.internal.StubLoader.loadFromBootPath(StubLoader.java:313)
        at com.kenai.jffi.internal.StubLoader.load(StubLoader.java:246)
        at com.kenai.jffi.internal.StubLoader.<clinit>(StubLoader.java:431)
        at java.lang.Class.forName0(Native Method)
        at java.lang.Class.forName(Class.java:340)
        at com.kenai.jffi.Init.load(Init.java:68)
        at com.kenai.jffi.Foreign$InstanceHolder.getInstanceHolder(Foreign.java:49)
        at com.kenai.jffi.Foreign$InstanceHolder.<clinit>(Foreign.java:45)
        at com.kenai.jffi.Foreign.getInstance(Foreign.java:103)
        at com.kenai.jffi.Type$Builtin.lookupTypeInfo(Type.java:242)
        at com.kenai.jffi.Type$Builtin.getTypeInfo(Type.java:237)
        at com.kenai.jffi.Type.resolveSize(Type.java:155)
        at com.kenai.jffi.Type.size(Type.java:138)
        at jnr.ffi.provider.jffi.NativeRuntime$TypeDelegate.size(NativeRuntime.java:178)
        at jnr.ffi.provider.AbstractRuntime.<init>(AbstractRuntime.java:48)
        at jnr.ffi.provider.jffi.NativeRuntime.<init>(NativeRuntime.java:57)
        at jnr.ffi.provider.jffi.NativeRuntime.<init>(NativeRuntime.java:41)
        at jnr.ffi.provider.jffi.NativeRuntime$SingletonHolder.<clinit>(NativeRuntime.java:53)
        at jnr.ffi.provider.jffi.NativeRuntime.getInstance(NativeRuntime.java:49)
        at jnr.ffi.provider.jffi.Provider.<init>(Provider.java:29)
        at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
        at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
        at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
        at java.lang.reflect.Constructor.newInstance(Constructor.java:408)
        at java.lang.Class.newInstance(Class.java:433)
        at jnr.ffi.provider.FFIProvider$SystemProviderSingletonHolder.getInstance(FFIProvider.java:68)
        at jnr.ffi.provider.FFIProvider$SystemProviderSingletonHolder.<clinit>(FFIProvider.java:57)
        at jnr.ffi.provider.FFIProvider.getSystemProvider(FFIProvider.java:35)
        at jnr.ffi.Library.loadLibrary(Library.java:114)
        at jnr.posix.POSIXFactory$DefaultLibCProvider$SingletonHolder.<clinit>(POSIXFactory.java:271)
        at jnr.posix.POSIXFactory$DefaultLibCProvider.getLibC(POSIXFactory.java:275)
        at jnr.posix.BaseNativePOSIX.<init>(BaseNativePOSIX.java:36)
        at jnr.posix.LinuxPOSIX.<init>(LinuxPOSIX.java:18)
        at jnr.posix.POSIXFactory.loadLinuxPOSIX(POSIXFactory.java:143)
        at jnr.posix.POSIXFactory.loadNativePOSIX(POSIXFactory.java:121)
        at jnr.posix.POSIXFactory.loadPOSIX(POSIXFactory.java:90)
        at jnr.posix.LazyPOSIX.loadPOSIX(LazyPOSIX.java:35)
        at jnr.posix.LazyPOSIX.posix(LazyPOSIX.java:31)
        at jnr.posix.LazyPOSIX.isNative(LazyPOSIX.java:329)
        at org.jruby.RubyGlobal.prepareStdioChannel(RubyGlobal.java:283)
        at org.jruby.RubyGlobal.createGlobals(RubyGlobal.java:197)
        at org.jruby.Ruby.init(Ruby.java:1274)
        at org.jruby.Ruby.newInstance(Ruby.java:330)
        at org.jruby.Main.internalRun(Main.java:267)
        at org.jruby.Main.run(Main.java:226)
        at org.jruby.Main.main(Main.java:198)
java.lang.UnsatisfiedLinkError: Can't load library: /usr/java/packages/lib/arm/libjffi-1.2.so
        at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1817)
        at java.lang.Runtime.load0(Runtime.java:809)
        at java.lang.System.load(System.java:1083)
        at com.kenai.jffi.internal.StubLoader.loadFromBootPath(StubLoader.java:313)
        at com.kenai.jffi.internal.StubLoader.load(StubLoader.java:246)
        at com.kenai.jffi.internal.StubLoader.<clinit>(StubLoader.java:431)
        at java.lang.Class.forName0(Native Method)
        at java.lang.Class.forName(Class.java:340)
        at com.kenai.jffi.Init.load(Init.java:68)
        at com.kenai.jffi.Foreign$InstanceHolder.getInstanceHolder(Foreign.java:49)
        at com.kenai.jffi.Foreign$InstanceHolder.<clinit>(Foreign.java:45)
        at com.kenai.jffi.Foreign.getInstance(Foreign.java:103)
        at com.kenai.jffi.Type$Builtin.lookupTypeInfo(Type.java:242)
        at com.kenai.jffi.Type$Builtin.getTypeInfo(Type.java:237)
        at com.kenai.jffi.Type.resolveSize(Type.java:155)
        at com.kenai.jffi.Type.size(Type.java:138)
        at jnr.ffi.provider.jffi.NativeRuntime$TypeDelegate.size(NativeRuntime.java:178)
        at jnr.ffi.provider.AbstractRuntime.<init>(AbstractRuntime.java:48)
        at jnr.ffi.provider.jffi.NativeRuntime.<init>(NativeRuntime.java:57)
        at jnr.ffi.provider.jffi.NativeRuntime.<init>(NativeRuntime.java:41)
        at jnr.ffi.provider.jffi.NativeRuntime$SingletonHolder.<clinit>(NativeRuntime.java:53)
        at jnr.ffi.provider.jffi.NativeRuntime.getInstance(NativeRuntime.java:49)
        at jnr.ffi.provider.jffi.Provider.<init>(Provider.java:29)
        at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
        at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
        at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
        at java.lang.reflect.Constructor.newInstance(Constructor.java:408)
        at java.lang.Class.newInstance(Class.java:433)
        at jnr.ffi.provider.FFIProvider$SystemProviderSingletonHolder.getInstance(FFIProvider.java:68)
        at jnr.ffi.provider.FFIProvider$SystemProviderSingletonHolder.<clinit>(FFIProvider.java:57)
        at jnr.ffi.provider.FFIProvider.getSystemProvider(FFIProvider.java:35)
        at jnr.ffi.Library.loadLibrary(Library.java:114)
        at jnr.posix.POSIXFactory$DefaultLibCProvider$SingletonHolder.<clinit>(POSIXFactory.java:271)
        at jnr.posix.POSIXFactory$DefaultLibCProvider.getLibC(POSIXFactory.java:275)
        at jnr.posix.BaseNativePOSIX.<init>(BaseNativePOSIX.java:36)
        at jnr.posix.LinuxPOSIX.<init>(LinuxPOSIX.java:18)
        at jnr.posix.POSIXFactory.loadLinuxPOSIX(POSIXFactory.java:143)
        at jnr.posix.POSIXFactory.loadNativePOSIX(POSIXFactory.java:121)
        at jnr.posix.POSIXFactory.loadPOSIX(POSIXFactory.java:90)
        at jnr.posix.LazyPOSIX.loadPOSIX(LazyPOSIX.java:35)
        at jnr.posix.LazyPOSIX.posix(LazyPOSIX.java:31)
        at jnr.posix.LazyPOSIX.isNative(LazyPOSIX.java:329)
        at org.jruby.RubyGlobal.prepareStdioChannel(RubyGlobal.java:283)
        at org.jruby.RubyGlobal.createGlobals(RubyGlobal.java:197)
        at org.jruby.Ruby.init(Ruby.java:1274)
        at org.jruby.Ruby.newInstance(Ruby.java:330)
        at org.jruby.Main.internalRun(Main.java:267)
        at org.jruby.Main.run(Main.java:226)
        at org.jruby.Main.main(Main.java:198)
java.lang.UnsatisfiedLinkError: /opt/jruby/lib/jni/arm-Linux/libjffi-1.2.so: /opt/jruby/lib/jni/arm-Linux/libjffi-1.2.so: cannot open shared object file: No such file or directory
        at java.lang.ClassLoader$NativeLibrary.load(Native Method)
        at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1929)
        at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1814)
        at java.lang.Runtime.load0(Runtime.java:809)
        at java.lang.System.load(System.java:1083)
        at com.kenai.jffi.internal.StubLoader.loadFromBootPath(StubLoader.java:313)
        at com.kenai.jffi.internal.StubLoader.load(StubLoader.java:241)
        at com.kenai.jffi.internal.StubLoader.<clinit>(StubLoader.java:431)
        at java.lang.Class.forName0(Native Method)
        at java.lang.Class.forName(Class.java:340)
        at com.kenai.jffi.Init.load(Init.java:68)
        at com.kenai.jffi.Foreign$InstanceHolder.getInstanceHolder(Foreign.java:49)
        at com.kenai.jffi.Foreign$InstanceHolder.<clinit>(Foreign.java:45)
        at com.kenai.jffi.Foreign.getInstance(Foreign.java:103)
        at com.kenai.jffi.Type$Builtin.lookupTypeInfo(Type.java:242)
        at com.kenai.jffi.Type$Builtin.getTypeInfo(Type.java:237)
        at com.kenai.jffi.Type.resolveSize(Type.java:155)
        at com.kenai.jffi.Type.size(Type.java:138)
        at jnr.ffi.provider.jffi.NativeRuntime$TypeDelegate.size(NativeRuntime.java:178)
        at jnr.ffi.provider.AbstractRuntime.<init>(AbstractRuntime.java:48)
        at jnr.ffi.provider.jffi.NativeRuntime.<init>(NativeRuntime.java:57)
        at jnr.ffi.provider.jffi.NativeRuntime.<init>(NativeRuntime.java:41)
        at jnr.ffi.provider.jffi.NativeRuntime$SingletonHolder.<clinit>(NativeRuntime.java:53)
        at jnr.ffi.provider.jffi.NativeRuntime.getInstance(NativeRuntime.java:49)
        at jnr.ffi.provider.jffi.Provider.<init>(Provider.java:29)
        at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
        at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
        at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
        at java.lang.reflect.Constructor.newInstance(Constructor.java:408)
        at java.lang.Class.newInstance(Class.java:433)
        at jnr.ffi.provider.FFIProvider$SystemProviderSingletonHolder.getInstance(FFIProvider.java:68)
        at jnr.ffi.provider.FFIProvider$SystemProviderSingletonHolder.<clinit>(FFIProvider.java:57)
        at jnr.ffi.provider.FFIProvider.getSystemProvider(FFIProvider.java:35)
        at jnr.ffi.Library.loadLibrary(Library.java:114)
        at jnr.posix.POSIXFactory$DefaultLibCProvider$SingletonHolder.<clinit>(POSIXFactory.java:271)
        at jnr.posix.POSIXFactory$DefaultLibCProvider.getLibC(POSIXFactory.java:275)
        at jnr.posix.BaseNativePOSIX.<init>(BaseNativePOSIX.java:36)
        at jnr.posix.LinuxPOSIX.<init>(LinuxPOSIX.java:18)
        at jnr.posix.POSIXFactory.loadLinuxPOSIX(POSIXFactory.java:143)
        at jnr.posix.POSIXFactory.loadNativePOSIX(POSIXFactory.java:121)
        at jnr.posix.POSIXFactory.loadPOSIX(POSIXFactory.java:90)
        at jnr.posix.LazyPOSIX.loadPOSIX(LazyPOSIX.java:35)
        at jnr.posix.LazyPOSIX.posix(LazyPOSIX.java:31)
        at jnr.posix.LazyPOSIX.isNative(LazyPOSIX.java:329)
        at org.jruby.RubyGlobal.prepareStdioChannel(RubyGlobal.java:283)
        at org.jruby.RubyGlobal.createGlobals(RubyGlobal.java:197)
        at org.jruby.Ruby.init(Ruby.java:1274)
        at org.jruby.Ruby.newInstance(Ruby.java:330)
        at org.jruby.Main.internalRun(Main.java:267)
        at org.jruby.Main.run(Main.java:226)
        at org.jruby.Main.main(Main.java:198)

        at java.lang.Throwable.initCause(Throwable.java:457)
        at com.kenai.jffi.Type$Builtin.lookupTypeInfo(Type.java:252)
        at com.kenai.jffi.Type$Builtin.getTypeInfo(Type.java:237)
        at com.kenai.jffi.Type.resolveSize(Type.java:155)
        at com.kenai.jffi.Type.size(Type.java:138)
        at jnr.ffi.provider.jffi.NativeRuntime$TypeDelegate.size(NativeRuntime.java:178)
        at jnr.ffi.provider.AbstractRuntime.<init>(AbstractRuntime.java:48)
        at jnr.ffi.provider.jffi.NativeRuntime.<init>(NativeRuntime.java:57)
        at jnr.ffi.provider.jffi.NativeRuntime.<init>(NativeRuntime.java:41)
        at jnr.ffi.provider.jffi.NativeRuntime$SingletonHolder.<clinit>(NativeRuntime.java:53)
        ... 28 more
Caused by: java.lang.UnsatisfiedLinkError: java.lang.UnsatisfiedLinkError: /tmp/jffi4702179369502564792.so: /tmp/jffi4702179369502564792.so: cannot open shared object file: No such file or directory
        at java.lang.ClassLoader$NativeLibrary.load(Native Method)
        at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1929)
        at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1814)
        at java.lang.Runtime.load0(Runtime.java:809)
        at java.lang.System.load(System.java:1083)
        at com.kenai.jffi.internal.StubLoader.loadFromJar(StubLoader.java:358)
        at com.kenai.jffi.internal.StubLoader.load(StubLoader.java:251)
        at com.kenai.jffi.internal.StubLoader.<clinit>(StubLoader.java:431)
        at java.lang.Class.forName0(Native Method)
        at java.lang.Class.forName(Class.java:340)
        at com.kenai.jffi.Init.load(Init.java:68)
        at com.kenai.jffi.Foreign$InstanceHolder.getInstanceHolder(Foreign.java:49)
        at com.kenai.jffi.Foreign$InstanceHolder.<clinit>(Foreign.java:45)
        at com.kenai.jffi.Foreign.getInstance(Foreign.java:103)
        at com.kenai.jffi.Type$Builtin.lookupTypeInfo(Type.java:242)
        at com.kenai.jffi.Type$Builtin.getTypeInfo(Type.java:237)
        at com.kenai.jffi.Type.resolveSize(Type.java:155)
        at com.kenai.jffi.Type.size(Type.java:138)
        at jnr.ffi.provider.jffi.NativeRuntime$TypeDelegate.size(NativeRuntime.java:178)
        at jnr.ffi.provider.AbstractRuntime.<init>(AbstractRuntime.java:48)
        at jnr.ffi.provider.jffi.NativeRuntime.<init>(NativeRuntime.java:57)
        at jnr.ffi.provider.jffi.NativeRuntime.<init>(NativeRuntime.java:41)
        at jnr.ffi.provider.jffi.NativeRuntime$SingletonHolder.<clinit>(NativeRuntime.java:53)
        at jnr.ffi.provider.jffi.NativeRuntime.getInstance(NativeRuntime.java:49)
        at jnr.ffi.provider.jffi.Provider.<init>(Provider.java:29)
        at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
        at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
        at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
        at java.lang.reflect.Constructor.newInstance(Constructor.java:408)
        at java.lang.Class.newInstance(Class.java:433)
        at jnr.ffi.provider.FFIProvider$SystemProviderSingletonHolder.getInstance(FFIProvider.java:68)
        at jnr.ffi.provider.FFIProvider$SystemProviderSingletonHolder.<clinit>(FFIProvider.java:57)
        at jnr.ffi.provider.FFIProvider.getSystemProvider(FFIProvider.java:35)
        at jnr.ffi.Library.loadLibrary(Library.java:114)
        at jnr.posix.POSIXFactory$DefaultLibCProvider$SingletonHolder.<clinit>(POSIXFactory.java:271)
        at jnr.posix.POSIXFactory$DefaultLibCProvider.getLibC(POSIXFactory.java:275)
        at jnr.posix.BaseNativePOSIX.<init>(BaseNativePOSIX.java:36)
        at jnr.posix.LinuxPOSIX.<init>(LinuxPOSIX.java:18)
        at jnr.posix.POSIXFactory.loadLinuxPOSIX(POSIXFactory.java:143)
        at jnr.posix.POSIXFactory.loadNativePOSIX(POSIXFactory.java:121)
        at jnr.posix.POSIXFactory.loadPOSIX(POSIXFactory.java:90)
        at jnr.posix.LazyPOSIX.loadPOSIX(LazyPOSIX.java:35)
        at jnr.posix.LazyPOSIX.posix(LazyPOSIX.java:31)
        at jnr.posix.LazyPOSIX.isNative(LazyPOSIX.java:329)
        at org.jruby.RubyGlobal.prepareStdioChannel(RubyGlobal.java:283)
        at org.jruby.RubyGlobal.createGlobals(RubyGlobal.java:197)
        at org.jruby.Ruby.init(Ruby.java:1274)
        at org.jruby.Ruby.newInstance(Ruby.java:330)
        at org.jruby.Main.internalRun(Main.java:267)
        at org.jruby.Main.run(Main.java:226)
        at org.jruby.Main.main(Main.java:198)
java.lang.UnsatisfiedLinkError: /opt/jruby/lib/jni/arm-Linux/libjffi-1.2.so: /opt/jruby/lib/jni/arm-Linux/libjffi-1.2.so: cannot open shared object file: No such file or directory
        at java.lang.ClassLoader$NativeLibrary.load(Native Method)
        at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1929)
        at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1814)
        at java.lang.Runtime.load0(Runtime.java:809)
        at java.lang.System.load(System.java:1083)
        at com.kenai.jffi.internal.StubLoader.loadFromBootPath(StubLoader.java:313)
        at com.kenai.jffi.internal.StubLoader.load(StubLoader.java:246)
        at com.kenai.jffi.internal.StubLoader.<clinit>(StubLoader.java:431)
        at java.lang.Class.forName0(Native Method)
        at java.lang.Class.forName(Class.java:340)
        at com.kenai.jffi.Init.load(Init.java:68)
        at com.kenai.jffi.Foreign$InstanceHolder.getInstanceHolder(Foreign.java:49)
        at com.kenai.jffi.Foreign$InstanceHolder.<clinit>(Foreign.java:45)
        at com.kenai.jffi.Foreign.getInstance(Foreign.java:103)
        at com.kenai.jffi.Type$Builtin.lookupTypeInfo(Type.java:242)
        at com.kenai.jffi.Type$Builtin.getTypeInfo(Type.java:237)
        at com.kenai.jffi.Type.resolveSize(Type.java:155)
        at com.kenai.jffi.Type.size(Type.java:138)
        at jnr.ffi.provider.jffi.NativeRuntime$TypeDelegate.size(NativeRuntime.java:178)
        at jnr.ffi.provider.AbstractRuntime.<init>(AbstractRuntime.java:48)
        at jnr.ffi.provider.jffi.NativeRuntime.<init>(NativeRuntime.java:57)
        at jnr.ffi.provider.jffi.NativeRuntime.<init>(NativeRuntime.java:41)
        at jnr.ffi.provider.jffi.NativeRuntime$SingletonHolder.<clinit>(NativeRuntime.java:53)
        at jnr.ffi.provider.jffi.NativeRuntime.getInstance(NativeRuntime.java:49)
        at jnr.ffi.provider.jffi.Provider.<init>(Provider.java:29)
        at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
        at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
        at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
        at java.lang.reflect.Constructor.newInstance(Constructor.java:408)
        at java.lang.Class.newInstance(Class.java:433)
        at jnr.ffi.provider.FFIProvider$SystemProviderSingletonHolder.getInstance(FFIProvider.java:68)
        at jnr.ffi.provider.FFIProvider$SystemProviderSingletonHolder.<clinit>(FFIProvider.java:57)
        at jnr.ffi.provider.FFIProvider.getSystemProvider(FFIProvider.java:35)
        at jnr.ffi.Library.loadLibrary(Library.java:114)
        at jnr.posix.POSIXFactory$DefaultLibCProvider$SingletonHolder.<clinit>(POSIXFactory.java:271)
        at jnr.posix.POSIXFactory$DefaultLibCProvider.getLibC(POSIXFactory.java:275)
        at jnr.posix.BaseNativePOSIX.<init>(BaseNativePOSIX.java:36)
        at jnr.posix.LinuxPOSIX.<init>(LinuxPOSIX.java:18)
        at jnr.posix.POSIXFactory.loadLinuxPOSIX(POSIXFactory.java:143)
        at jnr.posix.POSIXFactory.loadNativePOSIX(POSIXFactory.java:121)
        at jnr.posix.POSIXFactory.loadPOSIX(POSIXFactory.java:90)
        at jnr.posix.LazyPOSIX.loadPOSIX(LazyPOSIX.java:35)
        at jnr.posix.LazyPOSIX.posix(LazyPOSIX.java:31)
        at jnr.posix.LazyPOSIX.isNative(LazyPOSIX.java:329)
        at org.jruby.RubyGlobal.prepareStdioChannel(RubyGlobal.java:283)
        at org.jruby.RubyGlobal.createGlobals(RubyGlobal.java:197)
        at org.jruby.Ruby.init(Ruby.java:1274)
        at org.jruby.Ruby.newInstance(Ruby.java:330)
        at org.jruby.Main.internalRun(Main.java:267)
        at org.jruby.Main.run(Main.java:226)
        at org.jruby.Main.main(Main.java:198)
java.lang.UnsatisfiedLinkError: /opt/jruby/lib/jni/arm-Linux/libjffi-1.2.so: /opt/jruby/lib/jni/arm-Linux/libjffi-1.2.so: cannot open shared object file: No such file or directory
        at java.lang.ClassLoader$NativeLibrary.load(Native Method)
        at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1929)
        at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1814)
        at java.lang.Runtime.load0(Runtime.java:809)
        at java.lang.System.load(System.java:1083)
        at com.kenai.jffi.internal.StubLoader.loadFromBootPath(StubLoader.java:313)
        at com.kenai.jffi.internal.StubLoader.load(StubLoader.java:246)
        at com.kenai.jffi.internal.StubLoader.<clinit>(StubLoader.java:431)
        at java.lang.Class.forName0(Native Method)
        at java.lang.Class.forName(Class.java:340)
        at com.kenai.jffi.Init.load(Init.java:68)
        at com.kenai.jffi.Foreign$InstanceHolder.getInstanceHolder(Foreign.java:49)
        at com.kenai.jffi.Foreign$InstanceHolder.<clinit>(Foreign.java:45)
        at com.kenai.jffi.Foreign.getInstance(Foreign.java:103)
        at com.kenai.jffi.Type$Builtin.lookupTypeInfo(Type.java:242)
        at com.kenai.jffi.Type$Builtin.getTypeInfo(Type.java:237)
        at com.kenai.jffi.Type.resolveSize(Type.java:155)
        at com.kenai.jffi.Type.size(Type.java:138)
        at jnr.ffi.provider.jffi.NativeRuntime$TypeDelegate.size(NativeRuntime.java:178)
        at jnr.ffi.provider.AbstractRuntime.<init>(AbstractRuntime.java:48)
        at jnr.ffi.provider.jffi.NativeRuntime.<init>(NativeRuntime.java:57)
        at jnr.ffi.provider.jffi.NativeRuntime.<init>(NativeRuntime.java:41)
        at jnr.ffi.provider.jffi.NativeRuntime$SingletonHolder.<clinit>(NativeRuntime.java:53)
        at jnr.ffi.provider.jffi.NativeRuntime.getInstance(NativeRuntime.java:49)
        at jnr.ffi.provider.jffi.Provider.<init>(Provider.java:29)
        at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
        at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
        at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
        at java.lang.reflect.Constructor.newInstance(Constructor.java:408)
        at java.lang.Class.newInstance(Class.java:433)
        at jnr.ffi.provider.FFIProvider$SystemProviderSingletonHolder.getInstance(FFIProvider.java:68)
        at jnr.ffi.provider.FFIProvider$SystemProviderSingletonHolder.<clinit>(FFIProvider.java:57)
        at jnr.ffi.provider.FFIProvider.getSystemProvider(FFIProvider.java:35)
        at jnr.ffi.Library.loadLibrary(Library.java:114)
        at jnr.posix.POSIXFactory$DefaultLibCProvider$SingletonHolder.<clinit>(POSIXFactory.java:271)
        at jnr.posix.POSIXFactory$DefaultLibCProvider.getLibC(POSIXFactory.java:275)
        at jnr.posix.BaseNativePOSIX.<init>(BaseNativePOSIX.java:36)
        at jnr.posix.LinuxPOSIX.<init>(LinuxPOSIX.java:18)
        at jnr.posix.POSIXFactory.loadLinuxPOSIX(POSIXFactory.java:143)
        at jnr.posix.POSIXFactory.loadNativePOSIX(POSIXFactory.java:121)
        at jnr.posix.POSIXFactory.loadPOSIX(POSIXFactory.java:90)
        at jnr.posix.LazyPOSIX.loadPOSIX(LazyPOSIX.java:35)
        at jnr.posix.LazyPOSIX.posix(LazyPOSIX.java:31)
        at jnr.posix.LazyPOSIX.isNative(LazyPOSIX.java:329)
        at org.jruby.RubyGlobal.prepareStdioChannel(RubyGlobal.java:283)
        at org.jruby.RubyGlobal.createGlobals(RubyGlobal.java:197)
        at org.jruby.Ruby.init(Ruby.java:1274)
        at org.jruby.Ruby.newInstance(Ruby.java:330)
        at org.jruby.Main.internalRun(Main.java:267)
        at org.jruby.Main.run(Main.java:226)
        at org.jruby.Main.main(Main.java:198)
java.lang.UnsatisfiedLinkError: Can't load library: /usr/java/packages/lib/arm/libjffi-1.2.so
        at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1817)
        at java.lang.Runtime.load0(Runtime.java:809)
        at java.lang.System.load(System.java:1083)
        at com.kenai.jffi.internal.StubLoader.loadFromBootPath(StubLoader.java:313)
        at com.kenai.jffi.internal.StubLoader.load(StubLoader.java:246)
        at com.kenai.jffi.internal.StubLoader.<clinit>(StubLoader.java:431)
        at java.lang.Class.forName0(Native Method)
        at java.lang.Class.forName(Class.java:340)
        at com.kenai.jffi.Init.load(Init.java:68)
        at com.kenai.jffi.Foreign$InstanceHolder.getInstanceHolder(Foreign.java:49)
        at com.kenai.jffi.Foreign$InstanceHolder.<clinit>(Foreign.java:45)
        at com.kenai.jffi.Foreign.getInstance(Foreign.java:103)
        at com.kenai.jffi.Type$Builtin.lookupTypeInfo(Type.java:242)
        at com.kenai.jffi.Type$Builtin.getTypeInfo(Type.java:237)
        at com.kenai.jffi.Type.resolveSize(Type.java:155)
        at com.kenai.jffi.Type.size(Type.java:138)
        at jnr.ffi.provider.jffi.NativeRuntime$TypeDelegate.size(NativeRuntime.java:178)
        at jnr.ffi.provider.AbstractRuntime.<init>(AbstractRuntime.java:48)
        at jnr.ffi.provider.jffi.NativeRuntime.<init>(NativeRuntime.java:57)
        at jnr.ffi.provider.jffi.NativeRuntime.<init>(NativeRuntime.java:41)
        at jnr.ffi.provider.jffi.NativeRuntime$SingletonHolder.<clinit>(NativeRuntime.java:53)
        at jnr.ffi.provider.jffi.NativeRuntime.getInstance(NativeRuntime.java:49)
        at jnr.ffi.provider.jffi.Provider.<init>(Provider.java:29)
        at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
        at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
        at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
        at java.lang.reflect.Constructor.newInstance(Constructor.java:408)
        at java.lang.Class.newInstance(Class.java:433)
        at jnr.ffi.provider.FFIProvider$SystemProviderSingletonHolder.getInstance(FFIProvider.java:68)
        at jnr.ffi.provider.FFIProvider$SystemProviderSingletonHolder.<clinit>(FFIProvider.java:57)
        at jnr.ffi.provider.FFIProvider.getSystemProvider(FFIProvider.java:35)
        at jnr.ffi.Library.loadLibrary(Library.java:114)
        at jnr.posix.POSIXFactory$DefaultLibCProvider$SingletonHolder.<clinit>(POSIXFactory.java:271)
        at jnr.posix.POSIXFactory$DefaultLibCProvider.getLibC(POSIXFactory.java:275)
        at jnr.posix.BaseNativePOSIX.<init>(BaseNativePOSIX.java:36)
        at jnr.posix.LinuxPOSIX.<init>(LinuxPOSIX.java:18)
        at jnr.posix.POSIXFactory.loadLinuxPOSIX(POSIXFactory.java:143)
        at jnr.posix.POSIXFactory.loadNativePOSIX(POSIXFactory.java:121)
        at jnr.posix.POSIXFactory.loadPOSIX(POSIXFactory.java:90)
        at jnr.posix.LazyPOSIX.loadPOSIX(LazyPOSIX.java:35)
        at jnr.posix.LazyPOSIX.posix(LazyPOSIX.java:31)
        at jnr.posix.LazyPOSIX.isNative(LazyPOSIX.java:329)
        at org.jruby.RubyGlobal.prepareStdioChannel(RubyGlobal.java:283)
        at org.jruby.RubyGlobal.createGlobals(RubyGlobal.java:197)
        at org.jruby.Ruby.init(Ruby.java:1274)
        at org.jruby.Ruby.newInstance(Ruby.java:330)
        at org.jruby.Main.internalRun(Main.java:267)
        at org.jruby.Main.run(Main.java:226)
        at org.jruby.Main.main(Main.java:198)
java.lang.UnsatisfiedLinkError: /opt/jruby/lib/jni/arm-Linux/libjffi-1.2.so: /opt/jruby/lib/jni/arm-Linux/libjffi-1.2.so: cannot open shared object file: No such file or directory
        at java.lang.ClassLoader$NativeLibrary.load(Native Method)
        at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1929)
        at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1814)
        at java.lang.Runtime.load0(Runtime.java:809)
        at java.lang.System.load(System.java:1083)
        at com.kenai.jffi.internal.StubLoader.loadFromBootPath(StubLoader.java:313)
        at com.kenai.jffi.internal.StubLoader.load(StubLoader.java:241)
        at com.kenai.jffi.internal.StubLoader.<clinit>(StubLoader.java:431)
        at java.lang.Class.forName0(Native Method)
        at java.lang.Class.forName(Class.java:340)
        at com.kenai.jffi.Init.load(Init.java:68)
        at com.kenai.jffi.Foreign$InstanceHolder.getInstanceHolder(Foreign.java:49)
        at com.kenai.jffi.Foreign$InstanceHolder.<clinit>(Foreign.java:45)
        at com.kenai.jffi.Foreign.getInstance(Foreign.java:103)
        at com.kenai.jffi.Type$Builtin.lookupTypeInfo(Type.java:242)
        at com.kenai.jffi.Type$Builtin.getTypeInfo(Type.java:237)
        at com.kenai.jffi.Type.resolveSize(Type.java:155)
        at com.kenai.jffi.Type.size(Type.java:138)
        at jnr.ffi.provider.jffi.NativeRuntime$TypeDelegate.size(NativeRuntime.java:178)
        at jnr.ffi.provider.AbstractRuntime.<init>(AbstractRuntime.java:48)
        at jnr.ffi.provider.jffi.NativeRuntime.<init>(NativeRuntime.java:57)
        at jnr.ffi.provider.jffi.NativeRuntime.<init>(NativeRuntime.java:41)
        at jnr.ffi.provider.jffi.NativeRuntime$SingletonHolder.<clinit>(NativeRuntime.java:53)
        at jnr.ffi.provider.jffi.NativeRuntime.getInstance(NativeRuntime.java:49)
        at jnr.ffi.provider.jffi.Provider.<init>(Provider.java:29)
        at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
        at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
        at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
        at java.lang.reflect.Constructor.newInstance(Constructor.java:408)
        at java.lang.Class.newInstance(Class.java:433)
        at jnr.ffi.provider.FFIProvider$SystemProviderSingletonHolder.getInstance(FFIProvider.java:68)
        at jnr.ffi.provider.FFIProvider$SystemProviderSingletonHolder.<clinit>(FFIProvider.java:57)
        at jnr.ffi.provider.FFIProvider.getSystemProvider(FFIProvider.java:35)
        at jnr.ffi.Library.loadLibrary(Library.java:114)
        at jnr.posix.POSIXFactory$DefaultLibCProvider$SingletonHolder.<clinit>(POSIXFactory.java:271)
        at jnr.posix.POSIXFactory$DefaultLibCProvider.getLibC(POSIXFactory.java:275)
        at jnr.posix.BaseNativePOSIX.<init>(BaseNativePOSIX.java:36)
        at jnr.posix.LinuxPOSIX.<init>(LinuxPOSIX.java:18)
        at jnr.posix.POSIXFactory.loadLinuxPOSIX(POSIXFactory.java:143)
        at jnr.posix.POSIXFactory.loadNativePOSIX(POSIXFactory.java:121)
        at jnr.posix.POSIXFactory.loadPOSIX(POSIXFactory.java:90)
        at jnr.posix.LazyPOSIX.loadPOSIX(LazyPOSIX.java:35)
        at jnr.posix.LazyPOSIX.posix(LazyPOSIX.java:31)
        at jnr.posix.LazyPOSIX.isNative(LazyPOSIX.java:329)
        at org.jruby.RubyGlobal.prepareStdioChannel(RubyGlobal.java:283)
        at org.jruby.RubyGlobal.createGlobals(RubyGlobal.java:197)
        at org.jruby.Ruby.init(Ruby.java:1274)
        at org.jruby.Ruby.newInstance(Ruby.java:330)
        at org.jruby.Main.internalRun(Main.java:267)
        at org.jruby.Main.run(Main.java:226)
        at org.jruby.Main.main(Main.java:198)

        at com.kenai.jffi.Foreign.newLoadError(Foreign.java:72)
        at com.kenai.jffi.Foreign.access$300(Foreign.java:42)
        at com.kenai.jffi.Foreign$InValidInstanceHolder.getForeign(Foreign.java:98)
        at com.kenai.jffi.Foreign.getInstance(Foreign.java:103)
        at com.kenai.jffi.Type$Builtin.lookupTypeInfo(Type.java:242)
        ... 36 more
Caused by: java.lang.UnsatisfiedLinkError: java.lang.UnsatisfiedLinkError: /tmp/jffi4702179369502564792.so: /tmp/jffi4702179369502564792.so: cannot open shared object file: No such file or directory
        at java.lang.ClassLoader$NativeLibrary.load(Native Method)
        at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1929)
        at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1814)
        at java.lang.Runtime.load0(Runtime.java:809)
        at java.lang.System.load(System.java:1083)
        at com.kenai.jffi.internal.StubLoader.loadFromJar(StubLoader.java:358)
        at com.kenai.jffi.internal.StubLoader.load(StubLoader.java:251)
        at com.kenai.jffi.internal.StubLoader.<clinit>(StubLoader.java:431)
        at java.lang.Class.forName0(Native Method)
        at java.lang.Class.forName(Class.java:340)
        at com.kenai.jffi.Init.load(Init.java:68)
        at com.kenai.jffi.Foreign$InstanceHolder.getInstanceHolder(Foreign.java:49)
        at com.kenai.jffi.Foreign$InstanceHolder.<clinit>(Foreign.java:45)
        at com.kenai.jffi.Foreign.getInstance(Foreign.java:103)
        at com.kenai.jffi.Type$Builtin.lookupTypeInfo(Type.java:242)
        at com.kenai.jffi.Type$Builtin.getTypeInfo(Type.java:237)
        at com.kenai.jffi.Type.resolveSize(Type.java:155)
        at com.kenai.jffi.Type.size(Type.java:138)
        at jnr.ffi.provider.jffi.NativeRuntime$TypeDelegate.size(NativeRuntime.java:178)
        at jnr.ffi.provider.AbstractRuntime.<init>(AbstractRuntime.java:48)
        at jnr.ffi.provider.jffi.NativeRuntime.<init>(NativeRuntime.java:57)
        at jnr.ffi.provider.jffi.NativeRuntime.<init>(NativeRuntime.java:41)
        at jnr.ffi.provider.jffi.NativeRuntime$SingletonHolder.<clinit>(NativeRuntime.java:53)
        at jnr.ffi.provider.jffi.NativeRuntime.getInstance(NativeRuntime.java:49)
        at jnr.ffi.provider.jffi.Provider.<init>(Provider.java:29)
        at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
        at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
        at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
        at java.lang.reflect.Constructor.newInstance(Constructor.java:408)
        at java.lang.Class.newInstance(Class.java:433)
        at jnr.ffi.provider.FFIProvider$SystemProviderSingletonHolder.getInstance(FFIProvider.java:68)
        at jnr.ffi.provider.FFIProvider$SystemProviderSingletonHolder.<clinit>(FFIProvider.java:57)
        at jnr.ffi.provider.FFIProvider.getSystemProvider(FFIProvider.java:35)
        at jnr.ffi.Library.loadLibrary(Library.java:114)
        at jnr.posix.POSIXFactory$DefaultLibCProvider$SingletonHolder.<clinit>(POSIXFactory.java:271)
        at jnr.posix.POSIXFactory$DefaultLibCProvider.getLibC(POSIXFactory.java:275)
        at jnr.posix.BaseNativePOSIX.<init>(BaseNativePOSIX.java:36)
        at jnr.posix.LinuxPOSIX.<init>(LinuxPOSIX.java:18)
        at jnr.posix.POSIXFactory.loadLinuxPOSIX(POSIXFactory.java:143)
        at jnr.posix.POSIXFactory.loadNativePOSIX(POSIXFactory.java:121)
        at jnr.posix.POSIXFactory.loadPOSIX(POSIXFactory.java:90)
        at jnr.posix.LazyPOSIX.loadPOSIX(LazyPOSIX.java:35)
        at jnr.posix.LazyPOSIX.posix(LazyPOSIX.java:31)
        at jnr.posix.LazyPOSIX.isNative(LazyPOSIX.java:329)
        at org.jruby.RubyGlobal.prepareStdioChannel(RubyGlobal.java:283)
        at org.jruby.RubyGlobal.createGlobals(RubyGlobal.java:197)
        at org.jruby.Ruby.init(Ruby.java:1274)
        at org.jruby.Ruby.newInstance(Ruby.java:330)
        at org.jruby.Main.internalRun(Main.java:267)
        at org.jruby.Main.run(Main.java:226)
        at org.jruby.Main.main(Main.java:198)
java.lang.UnsatisfiedLinkError: /opt/jruby/lib/jni/arm-Linux/libjffi-1.2.so: /opt/jruby/lib/jni/arm-Linux/libjffi-1.2.so: cannot open shared object file: No such file or directory
        at java.lang.ClassLoader$NativeLibrary.load(Native Method)
        at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1929)
        at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1814)
        at java.lang.Runtime.load0(Runtime.java:809)
        at java.lang.System.load(System.java:1083)
        at com.kenai.jffi.internal.StubLoader.loadFromBootPath(StubLoader.java:313)
        at com.kenai.jffi.internal.StubLoader.load(StubLoader.java:246)
        at com.kenai.jffi.internal.StubLoader.<clinit>(StubLoader.java:431)
        at java.lang.Class.forName0(Native Method)
        at java.lang.Class.forName(Class.java:340)
        at com.kenai.jffi.Init.load(Init.java:68)
        at com.kenai.jffi.Foreign$InstanceHolder.getInstanceHolder(Foreign.java:49)
        at com.kenai.jffi.Foreign$InstanceHolder.<clinit>(Foreign.java:45)
        at com.kenai.jffi.Foreign.getInstance(Foreign.java:103)
        at com.kenai.jffi.Type$Builtin.lookupTypeInfo(Type.java:242)
        at com.kenai.jffi.Type$Builtin.getTypeInfo(Type.java:237)
        at com.kenai.jffi.Type.resolveSize(Type.java:155)
        at com.kenai.jffi.Type.size(Type.java:138)
        at jnr.ffi.provider.jffi.NativeRuntime$TypeDelegate.size(NativeRuntime.java:178)
        at jnr.ffi.provider.AbstractRuntime.<init>(AbstractRuntime.java:48)
        at jnr.ffi.provider.jffi.NativeRuntime.<init>(NativeRuntime.java:57)
        at jnr.ffi.provider.jffi.NativeRuntime.<init>(NativeRuntime.java:41)
        at jnr.ffi.provider.jffi.NativeRuntime$SingletonHolder.<clinit>(NativeRuntime.java:53)
        at jnr.ffi.provider.jffi.NativeRuntime.getInstance(NativeRuntime.java:49)
        at jnr.ffi.provider.jffi.Provider.<init>(Provider.java:29)
        at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
        at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
        at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
        at java.lang.reflect.Constructor.newInstance(Constructor.java:408)
        at java.lang.Class.newInstance(Class.java:433)
        at jnr.ffi.provider.FFIProvider$SystemProviderSingletonHolder.getInstance(FFIProvider.java:68)
        at jnr.ffi.provider.FFIProvider$SystemProviderSingletonHolder.<clinit>(FFIProvider.java:57)
        at jnr.ffi.provider.FFIProvider.getSystemProvider(FFIProvider.java:35)
        at jnr.ffi.Library.loadLibrary(Library.java:114)
        at jnr.posix.POSIXFactory$DefaultLibCProvider$SingletonHolder.<clinit>(POSIXFactory.java:271)
        at jnr.posix.POSIXFactory$DefaultLibCProvider.getLibC(POSIXFactory.java:275)
        at jnr.posix.BaseNativePOSIX.<init>(BaseNativePOSIX.java:36)
        at jnr.posix.LinuxPOSIX.<init>(LinuxPOSIX.java:18)
        at jnr.posix.POSIXFactory.loadLinuxPOSIX(POSIXFactory.java:143)
        at jnr.posix.POSIXFactory.loadNativePOSIX(POSIXFactory.java:121)
        at jnr.posix.POSIXFactory.loadPOSIX(POSIXFactory.java:90)
        at jnr.posix.LazyPOSIX.loadPOSIX(LazyPOSIX.java:35)
        at jnr.posix.LazyPOSIX.posix(LazyPOSIX.java:31)
        at jnr.posix.LazyPOSIX.isNative(LazyPOSIX.java:329)
        at org.jruby.RubyGlobal.prepareStdioChannel(RubyGlobal.java:283)
        at org.jruby.RubyGlobal.createGlobals(RubyGlobal.java:197)
        at org.jruby.Ruby.init(Ruby.java:1274)
        at org.jruby.Ruby.newInstance(Ruby.java:330)
        at org.jruby.Main.internalRun(Main.java:267)
        at org.jruby.Main.run(Main.java:226)
        at org.jruby.Main.main(Main.java:198)
java.lang.UnsatisfiedLinkError: /opt/jruby/lib/jni/arm-Linux/libjffi-1.2.so: /opt/jruby/lib/jni/arm-Linux/libjffi-1.2.so: cannot open shared object file: No such file or directory
        at java.lang.ClassLoader$NativeLibrary.load(Native Method)
        at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1929)
        at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1814)
        at java.lang.Runtime.load0(Runtime.java:809)
        at java.lang.System.load(System.java:1083)
        at com.kenai.jffi.internal.StubLoader.loadFromBootPath(StubLoader.java:313)
        at com.kenai.jffi.internal.StubLoader.load(StubLoader.java:246)
        at com.kenai.jffi.internal.StubLoader.<clinit>(StubLoader.java:431)
        at java.lang.Class.forName0(Native Method)
        at java.lang.Class.forName(Class.java:340)
        at com.kenai.jffi.Init.load(Init.java:68)
        at com.kenai.jffi.Foreign$InstanceHolder.getInstanceHolder(Foreign.java:49)
        at com.kenai.jffi.Foreign$InstanceHolder.<clinit>(Foreign.java:45)
        at com.kenai.jffi.Foreign.getInstance(Foreign.java:103)
        at com.kenai.jffi.Type$Builtin.lookupTypeInfo(Type.java:242)
        at com.kenai.jffi.Type$Builtin.getTypeInfo(Type.java:237)
        at com.kenai.jffi.Type.resolveSize(Type.java:155)
        at com.kenai.jffi.Type.size(Type.java:138)
        at jnr.ffi.provider.jffi.NativeRuntime$TypeDelegate.size(NativeRuntime.java:178)
        at jnr.ffi.provider.AbstractRuntime.<init>(AbstractRuntime.java:48)
        at jnr.ffi.provider.jffi.NativeRuntime.<init>(NativeRuntime.java:57)
        at jnr.ffi.provider.jffi.NativeRuntime.<init>(NativeRuntime.java:41)
        at jnr.ffi.provider.jffi.NativeRuntime$SingletonHolder.<clinit>(NativeRuntime.java:53)
        at jnr.ffi.provider.jffi.NativeRuntime.getInstance(NativeRuntime.java:49)
        at jnr.ffi.provider.jffi.Provider.<init>(Provider.java:29)
        at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
        at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
        at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
        at java.lang.reflect.Constructor.newInstance(Constructor.java:408)
        at java.lang.Class.newInstance(Class.java:433)
        at jnr.ffi.provider.FFIProvider$SystemProviderSingletonHolder.getInstance(FFIProvider.java:68)
        at jnr.ffi.provider.FFIProvider$SystemProviderSingletonHolder.<clinit>(FFIProvider.java:57)
        at jnr.ffi.provider.FFIProvider.getSystemProvider(FFIProvider.java:35)
        at jnr.ffi.Library.loadLibrary(Library.java:114)
        at jnr.posix.POSIXFactory$DefaultLibCProvider$SingletonHolder.<clinit>(POSIXFactory.java:271)
        at jnr.posix.POSIXFactory$DefaultLibCProvider.getLibC(POSIXFactory.java:275)
        at jnr.posix.BaseNativePOSIX.<init>(BaseNativePOSIX.java:36)
        at jnr.posix.LinuxPOSIX.<init>(LinuxPOSIX.java:18)
        at jnr.posix.POSIXFactory.loadLinuxPOSIX(POSIXFactory.java:143)
        at jnr.posix.POSIXFactory.loadNativePOSIX(POSIXFactory.java:121)
        at jnr.posix.POSIXFactory.loadPOSIX(POSIXFactory.java:90)
        at jnr.posix.LazyPOSIX.loadPOSIX(LazyPOSIX.java:35)
        at jnr.posix.LazyPOSIX.posix(LazyPOSIX.java:31)
        at jnr.posix.LazyPOSIX.isNative(LazyPOSIX.java:329)
        at org.jruby.RubyGlobal.prepareStdioChannel(RubyGlobal.java:283)
        at org.jruby.RubyGlobal.createGlobals(RubyGlobal.java:197)
        at org.jruby.Ruby.init(Ruby.java:1274)
        at org.jruby.Ruby.newInstance(Ruby.java:330)
        at org.jruby.Main.internalRun(Main.java:267)
        at org.jruby.Main.run(Main.java:226)
        at org.jruby.Main.main(Main.java:198)
java.lang.UnsatisfiedLinkError: Can't load library: /usr/java/packages/lib/arm/libjffi-1.2.so
        at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1817)
        at java.lang.Runtime.load0(Runtime.java:809)
        at java.lang.System.load(System.java:1083)
        at com.kenai.jffi.internal.StubLoader.loadFromBootPath(StubLoader.java:313)
        at com.kenai.jffi.internal.StubLoader.load(StubLoader.java:246)
        at com.kenai.jffi.internal.StubLoader.<clinit>(StubLoader.java:431)
        at java.lang.Class.forName0(Native Method)
        at java.lang.Class.forName(Class.java:340)
        at com.kenai.jffi.Init.load(Init.java:68)
        at com.kenai.jffi.Foreign$InstanceHolder.getInstanceHolder(Foreign.java:49)
        at com.kenai.jffi.Foreign$InstanceHolder.<clinit>(Foreign.java:45)
        at com.kenai.jffi.Foreign.getInstance(Foreign.java:103)
        at com.kenai.jffi.Type$Builtin.lookupTypeInfo(Type.java:242)
        at com.kenai.jffi.Type$Builtin.getTypeInfo(Type.java:237)
        at com.kenai.jffi.Type.resolveSize(Type.java:155)
        at com.kenai.jffi.Type.size(Type.java:138)
        at jnr.ffi.provider.jffi.NativeRuntime$TypeDelegate.size(NativeRuntime.java:178)
        at jnr.ffi.provider.AbstractRuntime.<init>(AbstractRuntime.java:48)
        at jnr.ffi.provider.jffi.NativeRuntime.<init>(NativeRuntime.java:57)
        at jnr.ffi.provider.jffi.NativeRuntime.<init>(NativeRuntime.java:41)
        at jnr.ffi.provider.jffi.NativeRuntime$SingletonHolder.<clinit>(NativeRuntime.java:53)
        at jnr.ffi.provider.jffi.NativeRuntime.getInstance(NativeRuntime.java:49)
        at jnr.ffi.provider.jffi.Provider.<init>(Provider.java:29)
        at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
        at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
        at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
        at java.lang.reflect.Constructor.newInstance(Constructor.java:408)
        at java.lang.Class.newInstance(Class.java:433)
        at jnr.ffi.provider.FFIProvider$SystemProviderSingletonHolder.getInstance(FFIProvider.java:68)
        at jnr.ffi.provider.FFIProvider$SystemProviderSingletonHolder.<clinit>(FFIProvider.java:57)
        at jnr.ffi.provider.FFIProvider.getSystemProvider(FFIProvider.java:35)
        at jnr.ffi.Library.loadLibrary(Library.java:114)
        at jnr.posix.POSIXFactory$DefaultLibCProvider$SingletonHolder.<clinit>(POSIXFactory.java:271)
        at jnr.posix.POSIXFactory$DefaultLibCProvider.getLibC(POSIXFactory.java:275)
        at jnr.posix.BaseNativePOSIX.<init>(BaseNativePOSIX.java:36)
        at jnr.posix.LinuxPOSIX.<init>(LinuxPOSIX.java:18)
        at jnr.posix.POSIXFactory.loadLinuxPOSIX(POSIXFactory.java:143)
        at jnr.posix.POSIXFactory.loadNativePOSIX(POSIXFactory.java:121)
        at jnr.posix.POSIXFactory.loadPOSIX(POSIXFactory.java:90)
        at jnr.posix.LazyPOSIX.loadPOSIX(LazyPOSIX.java:35)
        at jnr.posix.LazyPOSIX.posix(LazyPOSIX.java:31)
        at jnr.posix.LazyPOSIX.isNative(LazyPOSIX.java:329)
        at org.jruby.RubyGlobal.prepareStdioChannel(RubyGlobal.java:283)
        at org.jruby.RubyGlobal.createGlobals(RubyGlobal.java:197)
        at org.jruby.Ruby.init(Ruby.java:1274)
        at org.jruby.Ruby.newInstance(Ruby.java:330)
        at org.jruby.Main.internalRun(Main.java:267)
        at org.jruby.Main.run(Main.java:226)
        at org.jruby.Main.main(Main.java:198)
java.lang.UnsatisfiedLinkError: /opt/jruby/lib/jni/arm-Linux/libjffi-1.2.so: /opt/jruby/lib/jni/arm-Linux/libjffi-1.2.so: cannot open shared object file: No such file or directory
        at java.lang.ClassLoader$NativeLibrary.load(Native Method)
        at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1929)
        at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1814)
        at java.lang.Runtime.load0(Runtime.java:809)
        at java.lang.System.load(System.java:1083)
        at com.kenai.jffi.internal.StubLoader.loadFromBootPath(StubLoader.java:313)
        at com.kenai.jffi.internal.StubLoader.load(StubLoader.java:241)
        at com.kenai.jffi.internal.StubLoader.<clinit>(StubLoader.java:431)
        at java.lang.Class.forName0(Native Method)
        at java.lang.Class.forName(Class.java:340)
        at com.kenai.jffi.Init.load(Init.java:68)
        at com.kenai.jffi.Foreign$InstanceHolder.getInstanceHolder(Foreign.java:49)
        at com.kenai.jffi.Foreign$InstanceHolder.<clinit>(Foreign.java:45)
        at com.kenai.jffi.Foreign.getInstance(Foreign.java:103)
        at com.kenai.jffi.Type$Builtin.lookupTypeInfo(Type.java:242)
        at com.kenai.jffi.Type$Builtin.getTypeInfo(Type.java:237)
        at com.kenai.jffi.Type.resolveSize(Type.java:155)
        at com.kenai.jffi.Type.size(Type.java:138)
        at jnr.ffi.provider.jffi.NativeRuntime$TypeDelegate.size(NativeRuntime.java:178)
        at jnr.ffi.provider.AbstractRuntime.<init>(AbstractRuntime.java:48)
        at jnr.ffi.provider.jffi.NativeRuntime.<init>(NativeRuntime.java:57)
        at jnr.ffi.provider.jffi.NativeRuntime.<init>(NativeRuntime.java:41)
        at jnr.ffi.provider.jffi.NativeRuntime$SingletonHolder.<clinit>(NativeRuntime.java:53)
        at jnr.ffi.provider.jffi.NativeRuntime.getInstance(NativeRuntime.java:49)
        at jnr.ffi.provider.jffi.Provider.<init>(Provider.java:29)
        at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
        at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
        at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
        at java.lang.reflect.Constructor.newInstance(Constructor.java:408)
        at java.lang.Class.newInstance(Class.java:433)
        at jnr.ffi.provider.FFIProvider$SystemProviderSingletonHolder.getInstance(FFIProvider.java:68)
        at jnr.ffi.provider.FFIProvider$SystemProviderSingletonHolder.<clinit>(FFIProvider.java:57)
        at jnr.ffi.provider.FFIProvider.getSystemProvider(FFIProvider.java:35)
        at jnr.ffi.Library.loadLibrary(Library.java:114)
        at jnr.posix.POSIXFactory$DefaultLibCProvider$SingletonHolder.<clinit>(POSIXFactory.java:271)
        at jnr.posix.POSIXFactory$DefaultLibCProvider.getLibC(POSIXFactory.java:275)
        at jnr.posix.BaseNativePOSIX.<init>(BaseNativePOSIX.java:36)
        at jnr.posix.LinuxPOSIX.<init>(LinuxPOSIX.java:18)
        at jnr.posix.POSIXFactory.loadLinuxPOSIX(POSIXFactory.java:143)
        at jnr.posix.POSIXFactory.loadNativePOSIX(POSIXFactory.java:121)
        at jnr.posix.POSIXFactory.loadPOSIX(POSIXFactory.java:90)
        at jnr.posix.LazyPOSIX.loadPOSIX(LazyPOSIX.java:35)
        at jnr.posix.LazyPOSIX.posix(LazyPOSIX.java:31)
        at jnr.posix.LazyPOSIX.isNative(LazyPOSIX.java:329)
        at org.jruby.RubyGlobal.prepareStdioChannel(RubyGlobal.java:283)
        at org.jruby.RubyGlobal.createGlobals(RubyGlobal.java:197)
        at org.jruby.Ruby.init(Ruby.java:1274)
        at org.jruby.Ruby.newInstance(Ruby.java:330)
        at org.jruby.Main.internalRun(Main.java:267)
        at org.jruby.Main.run(Main.java:226)
        at org.jruby.Main.main(Main.java:198)

        at com.kenai.jffi.internal.StubLoader.load(StubLoader.java:263)
        at com.kenai.jffi.internal.StubLoader.<clinit>(StubLoader.java:431)
        at java.lang.Class.forName0(Native Method)
        at java.lang.Class.forName(Class.java:340)
        at com.kenai.jffi.Init.load(Init.java:68)
        at com.kenai.jffi.Foreign$InstanceHolder.getInstanceHolder(Foreign.java:49)
        at com.kenai.jffi.Foreign$InstanceHolder.<clinit>(Foreign.java:45)
        ... 38 more
ERROR:  Could not find a valid gem '...' (>= 0) in any repository
@richrarobi

This comment has been minimized.

Copy link
Author

commented May 20, 2015

Hope that helps - RichR

@headius

This comment has been minimized.

Copy link
Member

commented Jun 2, 2015

This looks like an issue finding the stub library we ship. 9k.pre2 may have shipped with some code that attempted to use the stub on the filesystem (in that jni dir) rather than unpacking a known-good version inside the JRuby jar.

Can you try a more recent build from ci.jruby.org?

@enebo

This comment has been minimized.

Copy link
Member

commented Jun 2, 2015

I have seen this issue but I am unaware the proper way to solve it. I got JRuby running with native enabled on a raspi (not v2) by manually copying our native libraries to a place Java could see them. I think the issue is that we try and relocate them to /tmp and there is something about raspberry pi which does not like loading shared libs from there (unless it was some odd permissions issue I missed?).

@richrarobi

This comment has been minimized.

Copy link
Author

commented Jun 13, 2015

I tried the latest release candidate version. Still getting
pi@pi-00 ~ $ jgem install couch_potato
Fetching: builder-3.2.2.gem (100%)
NotImplementedError: waitpid unsupported or native support failed to load
flock at org/jruby/RubyFile.java:298

I tried copying /usr/lib/jffi/jffi-native.jar to various lib places in the oracle java files - no change - can u advise what should be copied, and where for a work around?
Thanks
RichR

@richrarobi

This comment has been minimized.

Copy link
Author

commented Jun 14, 2015

I think I have found a solution: (not fully tested yet) - I found a similar problem - #1561
so on my raspberry pi (pi 2 model) : -

sudo apt-get install ant
git clone https://github.com/jnr/jffi.git
ant jar

then copy the libjffi-1.2.so from jffi/dist/jni/arm-Linux to jruby/lib/jni/arm-linux replacing the one already there (rename that first!!!)
jgem install couch_potato has now worked, and my program runs.....

RichR

@richrarobi richrarobi closed this Jun 14, 2015

@enebo enebo added this to the JRuby 9.0.0.0 milestone Jul 9, 2015

@petter0007

This comment has been minimized.

Copy link

commented Jul 14, 2016

This is an old issue and closed, but it was not actually resolved, was it? The solution above is just a workaround, right? The same problem exists in 9.1.2.0 and 9.1.3.0-SNAPSHOT, and the same workaround works. It would just be nice to be able to use JRuby without the extra manual install step.

Can anyone think of an explanation as to what the core problem actually is? @enebo mentioned a problem relocating to /tmp, but why should replacing the libjffi-1.2.so file solve this?

@HowellBP

This comment has been minimized.

Copy link

commented Mar 30, 2017

Same problem exists in 9.1.8.0 on Raspberry Pi 3, running raspbian jessie.

@EugenMayer

This comment has been minimized.

Copy link

commented Jun 24, 2017

running into the same issues in a fresh debian stretch with tomcat8 on a regular server

@ranjankumar03

This comment has been minimized.

Copy link

commented Sep 1, 2017

any workaoround found?

[main] datastax.driver.core.Native:113 -Could not load JNR C Library, native system calls through this library will
not be available
java.lang.UnsatisfiedLinkError: could not load FFI provider jnr.ffi.provider.jffi.Provider
at jnr.ffi.provider.InvalidProvider$1.loadLibrary(InvalidProvider.java:48)
at jnr.ffi.LibraryLoader.load(LibraryLoader.java:290)
at jnr.ffi.LibraryLoader.load(LibraryLoader.java:269)
at com.datastax.driver.core.Native$LibCLoader.(Native.java:108)
at com.datastax.driver.core.Native.isGettimeofdayAvailable(Native.java:190)
at com.datastax.driver.core.ClockFactory.newInstance(Clock.java:51)
at com.datastax.driver.core.AbstractMonotonicTimestampGenerator.(AbstractMonotonicTimestampGenerator.java:43)
at com.datastax.driver.core.LoggingMonotonicTimestampGenerator.(LoggingMonotonicTimestampGenerator.java:49)
at com.datastax.driver.core.AtomicMonotonicTimestampGenerator.(AtomicMonotonicTimestampGenerator.java:50)
at com.datastax.driver.core.AtomicMonotonicTimestampGenerator.(AtomicMonotonicTimestampGenerator.java:37)
at com.datastax.driver.core.policies.Policies.defaultTimestampGenerator(Policies.java:121)
at com.datastax.driver.core.policies.Policies$Builder.build(Policies.java:286)
at com.datastax.driver.core.Cluster$Builder.getConfiguration(Cluster.java:1317)
at com.datastax.driver.core.Cluster.(Cluster.java:113)
at com.datastax.driver.core.Cluster.buildFrom(Cluster.java:178)

@enebo

This comment has been minimized.

Copy link
Member

commented Sep 1, 2017

You can manually put 'lib/jni/arm-Linux/libjffi-1.2.so' somewhere where either java can see java.library.path property or where linux itself can see it (e.g. ld.config). A quick test would be to stuff it into /lib.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.