I am trying to install the frontPanel API on linux. I found the FrontPanel-FC7-3.0.10 files, and found the /API/Java directory. When I start my application, the startup script sets java.library.path to the directory containing the .so file and the .jar is put in the class path.
When I attempt to run in this manner, I get an UnsatisfiedLinkError:
com.opalkelly.frontpanel.okjFrontPanelJNI.new_okFrontPanel()J
when attempting to connect to the driver. Note that all the java code involved has been debugged and successfully run using the windows version of your product so I don’t think it is a bug in our Java code.
Can someone help me out here?
Thank you.
OH! I forgot to mention I am using Red Hat Enterprise Linux 5
java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at waf.start.Main.main(Main.java:322)
Caused by: java.lang.UnsatisfiedLinkError: com.opalkelly.frontpanel.okjFrontPanelJNI.new_okFrontPanel()J
at com.opalkelly.frontpanel.okjFrontPanelJNI.new_okFrontPanel(Native Method)
at com.opalkelly.frontpanel.okFrontPanel.(okFrontPanel.java:37)
at fast.drivers.audio.okDAQ.Connect(okDAQ.java:121)
at fast.drivers.audio.AudioDAQDeviceDriver.nativeConnectWrapper(AudioDAQDeviceDriver.java:512)
at fast.drivers.audio.AudioDAQDeviceDriverUSB.nativeConnectWrapper(AudioDAQDeviceDriverUSB.java:150)
at fast.drivers.DeviceDriver.connect(DeviceDriver.java:367)
at fast.device.implementation.DeviceDataChannelImplementation.connectAndStart(DeviceDataChannelImplementation.java:135)
at fast.device.implementation.DeviceDataChannelImplementation.startChannel(DeviceDataChannelImplementation.java:196)
at fast.device.implementation.DeviceDataSource.sourceInit(DeviceDataSource.java:87)
at fast.data.implementation.DataSourceImplementation.start(DataSourceImplementation.java:108)
at waf.WAFserver$SvcDesc.start(WAFserver.java:124)
at waf.WAFserver$SvcDesc.start(WAFserver.java:118)
at waf.WAFserver$SvcDesc.start(WAFserver.java:118)
at waf.WAFserver$SvcDesc.start(WAFserver.java:118)
at waf.WAFserver$SvcDesc.access$13(WAFserver.java:100)
at waf.WAFserver.start(WAFserver.java:512)
at waf.WAFserver.serverStartup(WAFserver.java:641)
at waf.starters.WAFStart.mainStartup(WAFStart.java:154)
… 5 more
@ptt - Software downloads of the latest software can be found in the forum titled “Software Downloads”. Please read the announcement posted at the top of that forum titled “User access” to see that you need to email [email protected] with your order information to be granted access to download.
You state in your first post that you are using Red Hat Enterprise Linux 5. The software you tried to install, however, is built for Fedora Core 7. I would suspect that this is a contributing factor to your difficulties.
If you know, off the top of your head, how to determine which core enterprise is based on (5 or something else?) I would appreciate it. Of course, more to the point would be which version of your software should I use.
I’m primarily a Java developer and an embedded system developer: I use Linux as a development platform but not a target, so I apologize for my ignorance on details of Linux .so management and builds, cores, etc.
Recent builds of the Java wrapper have changed the way the enumeration gets wrapped (much to our surprise). The correct syntax for the enumerations is:
okFrontPanel.ErrorCode.NoError
The sample code itself will be fixed in the next relaese.