Skip to content
This repository has been archived by the owner on Jan 15, 2021. It is now read-only.

Will the Eclipse option work on Linux #2

Closed
gxedwards opened this issue Jan 17, 2018 · 4 comments
Closed

Will the Eclipse option work on Linux #2

gxedwards opened this issue Jan 17, 2018 · 4 comments

Comments

@gxedwards
Copy link

I followed the instructions on the wiki to see how it would run but I am getting jni errors on ubuntu.
Stack trace is below. Don't want to blow time if this is a windows only option as I see the native-windows jar in the quickstart

2018-01-17 14:31:16 FATAL JniLibraryResourceLoader:93 - Could not find resource at /linux/x86-64/libwpiutil.so
2018-01-17 14:31:16 FATAL JniLibraryResourceLoader:93 - Could not find resource at /linux/x86-64/libwpiHal.so
2018-01-17 14:31:16 FATAL JniLibraryResourceLoader:93 - Could not find resource at /linux/x86-64/libhalsim_adx_gyro_accelerometer.so
2018-01-17 14:31:16 FATAL JniLibraryResourceLoader:93 - Could not find resource at /linux/x86-64/libnavx_simulator.so
2018-01-17 14:31:16 FATAL JniLibraryResourceLoader:93 - Could not find resource at /linux/x86-64/libCtreMockHooks.so
2018-01-17 14:31:16 FATAL JniLibraryResourceLoader:93 - Could not find resource at /linux/x86-64/libsnobotSimJavaJni.so
Exception in thread "main" java.lang.UnsatisfiedLinkError: com.snobot.simulator.jni.RegisterCallbacksJni.resetWpiHal()V
at com.snobot.simulator.jni.RegisterCallbacksJni.resetWpiHal(Native Method)
at com.snobot.simulator.jni.RegisterCallbacksJni.reset(RegisterCallbacksJni.java:19)
at com.snobot.simulator.jni.BaseSnobotJni.(BaseSnobotJni.java:16)
at com.snobot.simulator.wrapper_accessors.java.JavaDataAccessor.(JavaDataAccessor.java:31)
at com.snobot.simulator.DefaultDataAccessorFactory.initalize(DefaultDataAccessorFactory.java:20)
at com.snobot.simulator.Main.main(Main.java:28)

In addition the instructions mention the simulator_config.properties but that file is not in the quickstart, I think I can make one up from looking in the code, just did not see one.

@pjreiniger
Copy link
Collaborator

Linux can be tricky. I pull in the things that are built on TravisCI, as well as the libraries built by WPI on their Jenkins server, so they may not always be compatible with eachother, let alone your computer.

I will add the linux library to the quick start, but you could also try to get the library from from the "maven repo" manually, and add it to the /depencies folder, and add it to the build path.
https://github.com/pjreiniger/maven_repo/tree/master/com/snobot/simulator/snobot_sim_java/0.7.3

There is the unfortunate possibility that you will have to build it yourself for linux. If the above tip doesn't work let me know and I will make instructions how to build it locally.

@pjreiniger
Copy link
Collaborator

Did that end up working for you, or did you have to build from source? Or did it all just crash and burn?

@brettle
Copy link

brettle commented Jan 27, 2018

Fyi, I ran into this same issue under Fedora 27 and can confirm that adding the 0.8.0 version of the linux native libs from the maven repo (https://github.com/pjreiniger/maven_repo/blob/master/com/snobot/simulator/snobot_sim_java/0.8.0/snobot_sim_java-0.8.0-uber_native-linux.jar) to the snobot build path fixed the error. I haven't done any additional testing yet, but it does at least avoid the reported error and display the gui.

@pjreiniger
Copy link
Collaborator

Linux is always tricky when dealing with .so files, but I'll call this one fixed since no one has complained since. Especially given the improvements for OSX in Release 2018-2.0.0, and the fact that I got TravisCI to work on Xenial systems.

If not, please create a new issue.

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

No branches or pull requests

3 participants