Nick found a good one, took me a while to find the obvious :-p

The UnsatisfiedLinkError was caused by old ARM JFX jars that were not overriden 
when he copied the new bits into the JDK.

On ARM we have a split set of jars for FX that we ship, but when we build, we 
only build the single jfxrt.jar like the desktop. The split is post build 
packaging. So Nick was mixing old and new jars, which is what the Wiki told him 
to do. Doh.

I updated the wiki for OpenJFX building and cross building with some 
clarifications, notes and such, so hopefully the next solider will not find so 
many mines.

Dave

On 12/29/14, 9:46 PM, Nick Pratt wrote:
So I made some progress here:

I had installed Ubuntu 14.x 64-bit version.  Once I installed the ia32-libs
(replacement versions for Ubuntu 14 since ia32-libs) isnt available
anymore, I got the ARM HF to build.  I installed on my Pi, but Im getting
link errors when I try and run a JFX program:

java  -Djavafx.platform=monocle -Dmonocle.screen.fb=/dev/fb1 -jar
JavaFXApp.jar

Exception in thread "main" java.lang.reflect.InvocationTargetException

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)

at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

at java.lang.reflect.Method.invoke(Method.java:483)

at sun.launcher.LauncherHelper$FXHelper.main(LauncherHelper.java:767)

Caused by: java.lang.RuntimeException: java.lang.UnsatisfiedLinkError:
com.sun.glass.ui.monocle.linux.Udev._open()J

at com.sun.javafx.tk.quantum.QuantumToolkit.startup(QuantumToolkit.java:296)

at com.sun.javafx.application.PlatformImpl.startup(PlatformImpl.java:216)

at
com.sun.javafx.application.LauncherImpl.startToolkit(LauncherImpl.java:653)

at
com.sun.javafx.application.LauncherImpl.launchApplicationWithArgs(LauncherImpl.java:314)

at
com.sun.javafx.application.LauncherImpl.launchApplication(LauncherImpl.java:305)

... 5 more

Caused by: java.lang.UnsatisfiedLinkError:
com.sun.glass.ui.monocle.linux.Udev._open()J

at com.sun.glass.ui.monocle.linux.Udev._open(Native Method)

at com.sun.glass.ui.monocle.linux.Udev.<init>(Udev.java:68)

at com.sun.glass.ui.monocle.linux.Udev.getInstance(Udev.java:54)

at
com.sun.glass.ui.monocle.linux.LinuxInputDeviceRegistry.<init>(LinuxInputDeviceRegistry.java:77)

at
com.sun.glass.ui.monocle.linux.LinuxPlatform.createInputDeviceRegistry(LinuxPlatform.java:19)

at
com.sun.glass.ui.monocle.NativePlatform.getInputDeviceRegistry(NativePlatform.java:58)

at
com.sun.glass.ui.monocle.MonocleApplication.<init>(MonocleApplication.java:78)

at
com.sun.glass.ui.monocle.MonoclePlatformFactory.createApplication(MonoclePlatformFactory.java:45)

at com.sun.glass.ui.Application.run(Application.java:145)

at com.sun.javafx.tk.quantum.QuantumToolkit.startup(QuantumToolkit.java:281)

... 9 more



So then I figured I try and get an Ubuntu 12.x 32-bit VM up and running and
use that for a OpenJFX build since this is mentioned in the OpenJFX wiki.
However, a clean install cant run sudo apt-get update due to missing
package definitions - have Ubuntu (or whoever maintains this set of repos)
removed the older 12.x packages (or started to)? I cant get gcc installed
or updated because of this - and this is a fresh install direct from the
Ubuntu 12.0.4 .iso

On a related note, its not clear to me what Im supposed to do after
compiling OpenJFX - what needs to be installed and where does it need to go
- JAVA_HOME/jre/lib ? (just replace everything in there?)



On Sun, Dec 28, 2014 at 9:11 PM, Morris Meyer<morris.me...@oracle.com>
wrote:

What JDK are you using?  That looks like an older version of the String
class.  Gradle 1.8 is recommended.

     --mm


On Dec 28, 2014, at 7:35 PM, Nick Pratt<nbpr...@gmail.com>  wrote:

Does anyone have any tips on getting Openjfx (latest source as of
2014-12-28 19:00 EST) to build on a Centos 6.6 box?

Im following the wiki for Linux builds and grabbed Gradle 1.8 (does the
latest 2.2 work?) but Im failing to build with the following error:

[work@nyprod1 rt]# /opt/gradle/bin/gradle

:buildSrc:generateGrammarSource UP-TO-DATE

:buildSrc:compileJava UP-TO-DATE

:buildSrc:compileGroovy UP-TO-DATE

:buildSrc:processResources UP-TO-DATE

:buildSrc:classes UP-TO-DATE

:buildSrc:jar UP-TO-DATE

:buildSrc:assemble UP-TO-DATE

:buildSrc:compileTestJava UP-TO-DATE

:buildSrc:compileTestGroovy UP-TO-DATE

:buildSrc:processTestResources UP-TO-DATE

:buildSrc:testClasses UP-TO-DATE

:buildSrc:test UP-TO-DATE

:buildSrc:check UP-TO-DATE

:buildSrc:build UP-TO-DATE


FAILURE: Build failed with an exception.


* Where:

Script '/work/WorkingCopies/rt/buildSrc/linux.gradle' line: 78


* What went wrong:

A problem occurred evaluating script.

Cannot invoke method split() on null object

* Try:

Run with --stacktrace option to get the stack trace. Run with --info or
--debug option to get more log output.


BUILD FAILED


Total time: 8.96 secs


If anyone has any tips or suggestions to get this compiling on Centos 6.x
they would be most appreciated.


--
David Hill<david.h...@oracle.com>
Java Embedded Development

"A man's feet should be planted in his country, but his eyes should survey the 
world."
-- George Santayana (1863 - 1952)

Reply via email to