I thought it is just going to be a few native calls, but it has a bunch of native calls.
After all of your replies on this scenario, I deduce that: 1. It will be easy if the author could provide a port to Linux/390 2. If not the above, it may be easy if I have the source myself 3. If not both of the above two, I should have a lot of time I would rather shelve this project for now and focus on getting a CVS setup on Linux/390. Thanks A Bunch, Samy Rengasamy. -----Original Message----- From: Marc-Arthur Pierre-Louis [mailto:[EMAIL PROTECTED]] Sent: Friday, January 11, 2002 2:14 PM To: [EMAIL PROTECTED] Subject: Re: Porting a Solaris .so to Linux .so Not necessarily, the purpose of a JNI library is to do platform-specific stuff that isn't available in Java - although people abuse that. So even if you were able to successfully disassemble the DLL what you would find in there would not apply directly to Linux. Your best bet is to understand the Java application and identify what calls it is making via JNI and try to provide an equivalent libray under Linux. What is the purpose of this DLL (you said that the DLL has platform-specific data, do you mean that it has very little code?). Marc-Arthur Pierre-Louis Senior Software Engineer Architect, IBM Solution Technologies (Linux Integration Center) Internet: [EMAIL PROTECTED] (512)838-9320 "Rengasamy, Samy" <[EMAIL PROTECTED]>@VM.MARIST.EDU> on 01/11/2002 11:57:43 AM Please respond to Linux on 390 Port <[EMAIL PROTECTED]> Sent by: Linux on 390 Port <[EMAIL PROTECTED]> To: [EMAIL PROTECTED] cc: Subject: Re: Porting a Solaris .so to Linux .so It looks like the application was developed by some contractor and I am afraid, we may not be able to trace the author. In that case if I get the DLL disassembled to an asm source, will I be able to manipulate it for porting to Linux. Thanks, Samy Rengasamy. -----Original Message----- From: Marc-Arthur Pierre-Louis [mailto:[EMAIL PROTECTED]] Sent: Thursday, January 10, 2002 10:26 AM To: [EMAIL PROTECTED] Subject: Re: Porting a Solaris .so to Linux .so Well, It would seem to me that the vendor of this application is doing JNI and is providing the libraries on a platform-specific basis. These are the risk and perils that one undergoes when the choice is made to run applications relying on JNI code - although sometimes one is left with no other choice. Perhaps the vendor will get to write a Linux/390 shared object. You won't loose anything by asking. "Ask and ye shall receive..." -:) Marc-Arthur Pierre-Louis Senior Software Engineer Architect, IBM Solution Technologies (Linux Integration Center) Internet: [EMAIL PROTECTED] (512)838-9320 David Boyes <[EMAIL PROTECTED]>@VM.MARIST.EDU> on 01/10/2002 10:04:56 AM Please respond to Linux on 390 Port <[EMAIL PROTECTED]> Sent by: Linux on 390 Port <[EMAIL PROTECTED]> To: [EMAIL PROTECTED] cc: Subject: Re: Porting a Solaris .so to Linux .so > Can anybody give a solution for this scenario? > We have a java application running on NT. > The vendor does have some platform specific data in a DLL. > The application could be run on a Solaris platform also. > And I do have the .so file for Solaris platform. > I did try to run the application on Linux/390 with the > Solaris .so file, > but I am getting 'invalid ELF Header message'. > I do not have access to the source code. > How can I port this application to Linux/390? So much for "write once, run anywhere" Java applications, hmm? The answer is: you can't. If there is platform specific info in a compiled file and you don't have source code for that module, you can't port the application unless you can write replacement routines. If you can figure out what the platform-specific code does and write replacements, you should be able to link those classes into your application in place of the compiled stuff. -- db
