Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner AT cygwin DOT com Mail-Followup-To: cygwin AT cygwin DOT com Delivered-To: mailing list cygwin AT cygwin DOT com From: "Thomas X. Hoban" To: Subject: Linking with JNI Invoke Using Cygwin gcc Date: Thu, 5 Jun 2003 16:21:18 -0500 Message-ID: MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 8bit X-Priority: 3 (Normal) X-MSMail-Priority: Normal X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1165 Importance: Normal I have written a DLL and a test program that uses the JNI api to invoke a JVM. When I try to link with a test program, I get an error indicating that a reference to __imp__JNI_CreateJavaVM AT 12 is undefined. $ export JAVA_HOME=/cygdrive/c/j2sdk1.4.1_02 $ g++ -c –I$JAVA_HOME/include –I$JAVA_HOME/include/win32 JavaGateway.c++ $ g++ -I$JAVA_HOME/include –I$JAVA_HOME/include/win32 –L$JAVA_HOME/lib \ -ljvm JavaGateway.o -o testGateway testGateway.c++ The link command above produces these errors: JavaGateway.o(.text+0x171):JavaGateway.c++: undefined reference to `__imp__JNI_CreateJavaVM AT 12' JavaGateway.o(.text+0x251):JavaGateway.c++: undefined reference to `__imp__JNI_CreateJavaVM AT 12' collect2: ld returned 1 exit status I assume that the jvm.lib file provided with the sdk was compiled with MS VC++. Does the cygwin gcc compiler massage the symbol references differently from MS? Does anyone have a suggestion on how I can make this work? Thanks, Tom -- Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple Problem reports: http://cygwin.com/problems.html Documentation: http://cygwin.com/docs.html FAQ: http://cygwin.com/faq/