2

Before anyone states duplicate. Please be aware that other questions are windows based and complain about DLLs or are not related to this library.

I have downloaded the EOCFI JAVA API from ESA which I would like to use. These include some example .java files.

I'm simply loading their entire API directory, adding the external JARs, and trying to run their examples. But I run into the following error: java.lang.UnsatisfiedLinkError: no JCfiLib in java.library.path

I can't seem to find JCfiLib anywhere in the API or on the internet. I would imagine if I could I would simply add it to the java library path as the error states, but I have no idea what it is or where I can get it.

How can I get around this error?

enter image description here

I'm using eclipse on Debian Wheezy.

Any help would be greatly appreciated. Please be patient I'm not a Java programmer.

UPDATE (more details)

I realize now JCfiLib stands for "Java CFI Library" it's the library i'm using. But when I download it it's made up of 7 separate .jar files. (Visibility.jar, Pointing.jar, etc...) I reference them all as external jars.

The line it throws an error on is modelId = new ModelId(); (VisibilityExample.java:221) error:

Exception in thread "main" java.lang.UnsatisfiedLinkError: no JCfiLib in java.library.path
    at java.lang.ClassLoader.loadLibrary(Unknown Source)
    at java.lang.Runtime.loadLibrary0(Unknown Source)
    at java.lang.System.loadLibrary(Unknown Source)
    at EECFI.CfiId.<clinit>(CfiId.java:22)
    at Visibility.example.VisibilityExample.main(VisibilityExample.java:211)
capdragon
  • 14,565
  • 24
  • 107
  • 153
  • Where do I go on that website to download the API? Maybe it looks different if you are logged in. – Robin Green Nov 08 '13 at 21:21
  • +Robin Green yeah you need to register. (And be supporting an ESA mission) I added the download URL. – capdragon Nov 08 '13 at 21:28
  • don't think we can help you then, sadly - why don't you just ask them? – Robin Green Nov 08 '13 at 21:30
  • I was afraid it would be something like that. I don't think they have any support. – capdragon Nov 08 '13 at 21:33
  • +Robin Green If you register and download the API, solely for the purpose of helping me... I'd say that would be supporting the mission indirectly by supporting someone who supports the mission? Sounds legit to me. – capdragon Nov 08 '13 at 21:35
  • What, a budget of millions of euros (I'm guessing), and no technical support for programmers?! – Robin Green Nov 08 '13 at 21:36
  • +Robin Green I'm sure they support their own programmers. I don't work directly for ESA but I am trying to write software that supports their missions. – capdragon Nov 08 '13 at 21:37
  • 2
    Did you check in http://eop-cfi.esa.int/index.php/mission-cfi-software/eocfi-software/support-files ("additional libraries" is written here)? –  Nov 12 '13 at 21:18
  • +RC... I had not I will now :) Thanks for your comment. (I'll let you know if I find it there) – capdragon Nov 12 '13 at 21:26
  • @RC. I was hopeful, but nothing in those files with `JCfiLib`. Thanks. – capdragon Nov 12 '13 at 21:39

1 Answers1

2

There are some native library (including a libJCfiLib.so) in the package I downloaded (linux64, in libraries/LINUX64) and you need to tell Eclipse where to find them:

see How to add native library to "java.library.path" with Eclipse launch (instead of overriding it) for example.

Also note that there are some sample provided in the package with "run script", you can also check those in order to help you with your project.

Hope that helps.

Community
  • 1
  • 1