User a174ecf01f
28-02-2011 11:20:01
Dear ChemAxon team,
i have built a simple web application that is working on my workstation (Linux 32)
Now I wanted to deploy it internally on our web servers (Linux 64)
When I am calling the mthods I get the following error
Caused by: java.lang.UnsatisfiedLinkError: ${JBOSS_HOME}/.chemaxon/lib/inchi-1_2/libinchi.so: ${JBOSS_HOME}.chemaxon/lib/inchi-1_2/libinchi.so: wrong ELF class: ELFCLASS32 (Possible cause: architecture word width mismatch)
I have aded in the LIBRARY_PATH ${JBOSS_HOME}/.chemaxon/lib
But I still get the error. This chemaxon that created the ${JBOSS_HOME}/.chemaxon/lib with the stuff inside.
How can I know where comes the problem? How can I check that libinchi.so is 32 or 64 ?
Thank a lot.
User a174ecf01f
28-02-2011 11:25:07
I have found how to detect if the library was 32 or 64
on my computer
flefevre@tx132: inchi-1_2 $ file libinchi.so
libinchi.so: ELF 32-bit LSB shared object, Intel 80386, version 1 (SYSV), dynamically linked, stripped
on the server
[flefevre@www3 lib]$ file inchi-1_2/libinchi.so
inchi-1_2/libinchi.so: ELF 32-bit LSB shared object, Intel 80386, version 1 (SYSV), stripped
How can I tell Chemaxon automatic procedure to generate a 64 version?
Can I download it some where? Or do I need to change my java program?
Thank again
ChemAxon fa971619eb
28-02-2011 11:29:10
As this is not a question about Instant JChem I have moved to topic to the JChem forum where your question should get answered.
Tim
ChemAxon 0a9e2a55e1
28-02-2011 13:55:34
Hi,
For faster download we pack the inchi native libraries into jars.
On linux the 32 bit version creates the
{HOME}/.chemaxon/lib/inchi-{version}/libinchi.so
the 64 bit version creates the
{HOME}/.chemaxon/lib/inchi-{version}/libinchi64.so
right after You use inchi and java downloads the file. So you can get the 64 bit version of the library the fastest way if You open any of our applet examples (or if installed the application) draw something and in Edit/Source view the inchi of the molecule in a browser using 64 bit java plugin.
But if You use it the recommended way - from the ChemAxon inchi import, export classes - it will handle these classes, jars, etc automatically.
Best Regards,
Peter
User a174ecf01f
28-02-2011 17:28:23
OK,
I have downloaded the application and installed it back in a linux 64 machine.
I have made the operation you proposed me and be able to generate the .chemaxon/lib/inchi-1_2r/libinchi64.so
Then I went back to my web server.
And I made a symbolic link between .chemaxon/lib/inchi-1_2/libinchi.so --> .chemaxon/lib/inchi-1_2r/libinchi64.so
Because the application looks everytime to the inchi-1_2/libinchi.so
What is the differences between inchi-1_2r/ and inchi-1_2 ?
It works.
Thank a lot
ChemAxon 0a9e2a55e1
01-03-2011 08:36:44
Hi,
I'm glad it works.
The difference is that as we integrated the different inchi versions, we have given them similar names inchi-1_0, inchi-1_1, and inchi-1_2, and after a bug we have had to make a revised version of the last, it is inchi-1_2r. The Inchi class handles these so any version of Marvin uses the natives made for that version, even if You use different version simultaneously.
What version of Marvin does Your web server use? I recommend to use a new version of Marvin using 1_2r inchi because the old one had some problems with multiple threads, and a minor memory leak.
Best Regards,
Peter
User a174ecf01f
01-03-2011 08:42:17
I use the last one Marvin using 1_2r inchi thanks to the symbolic link
Have a good day.
Francois