how to understand the java code wrapping around C or other dependency libraries?

Discussion in 'Java' started by zyng, Jan 10, 2014.

  1. zyng

    zyng Guest

    Our java program(running on linux) needs calling a C program installed on our linux machine. It works fine!

    The thing I don't understand is when we deliver our product(the Java program) to our clients, who are using the same version Red Hat linux machines asus, but don't have that C program installed(it's very painful to install that C program for us due to the fact that the Red Hat version was old and the dependency library files are either out-of-dated or just not there. It took us a great amount of effort to install that C program. So we cannot assume or require our clients to install that program)

    I sort of know that no need to ask the clients to install the C program on their linux machine. We can wrap all the needed *.o library files in the delivered JAR files and in our Java code, use this code:
    System.load("the_c_program")
    and set environment variable "LD_LIBRARY_PATH" to point to the location of those *.o files within the JAR file

    But I just feel unclear about this procedure. If you know this and willing to explain to me all this is doing, I will greatly appreciate it.

    This C program has its library files and its library files needs other library files on the system. So, which library files needs to be selected and packed inside our JAR is unclear for me right now.

    Thank you very much.
     
    zyng, Jan 10, 2014
    #1
    1. Advertisements

  2. zyng

    Roedy Green Guest

    The easier way to do it is to use Java Web Start. It will install the
    C programs for you. Another way is to use an installer.

    see http://mindprod.com/jgloss/javawebstart.html
    http://mindprod.com/jgloss/installer.html
     
    Roedy Green, Jan 11, 2014
    #2
    1. Advertisements

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments (here). After that, you can post your question and our members will help you out.