AppletTalk.com Forum Index AppletTalk.com
Java discussions newsgroups
 
Archives   FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

How to Compile JNI program on windows/cygwin

 
Post new topic   Reply to topic    AppletTalk.com Forum Index -> Java Language Programming
View previous topic :: View next topic  
Author Message
Suresh
Guest





PostPosted: Wed May 31, 2006 8:10 pm    Post subject: How to Compile JNI program on windows/cygwin Reply with quote



Hi,

I am working on windows xp, java(jdk1.5.0_06) installed on it. I dont
have developer studio. i installed cygwin and gcc, make working fine on
cygwin.

now i would like to compile a simple JNI program. but i am getting so
many errors like this.

JavaSide.java:
public class JavaSide {
public native void sayHello();

static {
System.loadLibrary("NativeSideImpl");
}

public static void main(String[] args) {
JavaSide app = new JavaSide();
app.sayHello();
}
}
------------------------------------------
NativeSideImpl.cpp:

#include <stdio.h>
#include "JavaSide.h"

JNIEXPORT void JNICALL Java_JavaSide_sayHello
(JNIEnv *env, jobject obj)
{
printf("Hello Native World!");
}
---------------------------------------------

steps i followed is:
1) javac JavaSide.java
2) javah JavaSide
3) gcc -I /cygdrive/c/Program Files/Java/jdk1.5.0_06/include/ -I
/cygdrive/c/Program Files/Java/jdk1.5.0_06/include/win32
NativeSideImpl.cpp

Now i am getting so may errors like this

In file included from /cygdrive/c/Program
Files/Java/jdk1.5.0_06/include/jni.h:27,
from JavaSide.h:2,
from NativeSideImpl.cpp:2:
/cygdrive/c/Program Files/Java/jdk1.5.0_06/include/win32/jni_md.h:16:
error: `__int64' does not name a type
In file included from JavaSide.h:2,
from NativeSideImpl.cpp:2:
/cygdrive/c/Program Files/Java/jdk1.5.0_06/include/jni.h:108: error:
`jlong' does not name a type
/cygdrive/c/Program Files/Java/jdk1.5.0_06/include/jni.h:307: error:
expected identifier before '*' token
/cygdrive/c/Program Files/Java/jdk1.5.0_06/include/jni.h:308: error:
ISO C++ forbids declaration of `jlong' with no type
/cygdrive/c/Program Files/Java/jdk1.5.0_06/include/jni.h:308: error:
`jlong' declared as function returning a function
/cygdrive/c/Program Files/Java/jdk1.5.0_06/include/jni.h:308: error:
ISO C++ forbids declaration of `CallLongMethod' with no type
/cygdrive/c/Program Files/Java/jdk1.5.0_06/include/jni.h:308: warning:
`__stdcall__' attribute only applies to function types


Can any one please help me in compiling this simple program.

Thanks in advance.
Suresh
Back to top
Gordon Beaton
Guest





PostPosted: Wed May 31, 2006 9:10 pm    Post subject: Re: How to Compile JNI program on windows/cygwin Reply with quote



On 31 May 2006 13:08:26 -0700, Suresh wrote:
Quote:
I am working on windows xp, java(jdk1.5.0_06) installed on it. I dont
have developer studio. i installed cygwin and gcc, make working fine on
cygwin.

now i would like to compile a simple JNI program. but i am getting
so many errors like this.

I googled for cygwin gcc jni and this was the second hit:

http://www.inonit.com/cygwin/jni/helloWorld/c.html

/gordon

--
[ do not email me copies of your followups ]
g o r d o n + n e w s @ b a l d e r 1 3 . s e
Back to top
Suresh
Guest





PostPosted: Thu Jun 01, 2006 12:10 am    Post subject: Re: How to Compile JNI program on windows/cygwin Reply with quote



Thank you Mr Gordon.

This link helped me solving my problem.

--Suresh
Back to top
Display posts from previous:   
Post new topic   Reply to topic    AppletTalk.com Forum Index -> Java Language Programming All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © 2001, 2006 phpBB Group
SEO toolkit © 2004-2006 webmedic.