This is the mail archive of the java@gcc.gnu.org mailing list for the Java project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: CNI problem on MS Windows (GCC 3.4)


Amir Bukhari wrote:
>
>>Amir> I am try to learn CNI. I have just tried a very simple  example:
>>Amir> I compiled it like c++ test.cc -lgcj
>>Amir> but I got a number of undefined reference like

Use "gcj" to compile it instead of "g++" or "c++", like so:

  gcj test.cc

That aside, I have a few comments on your example:


> #include <gcj/cni.h>
> #include <java/lang/System.h>

Add "#include <java/io/PrintStream.h>" if you
want to use "System.out.println()".


> int main(int argc, char *argv)

Pedantic nit: "argv" should be declared "char* argv[]" (it's
an *array* of pointers to characters).


> {
>     using namespace java::lang;
>     
>        
>     JvCreateJavaVM(NULL);
>     JvAttachCurrentThread(NULL, NULL);
>      
>     String *message = JvNewStringLatin1("Hello from C++");

How about adding "System::out->println (message);" to
actually use this string? ;-)


>     JvDetachCurrentThread();
>        
>        
> }

You missed a "return 0;" statement here. The
program should not have compiled without warnings.

HTH,
Ranjit.

-- 
Ranjit Mathew      Email: rmathew AT gmail DOT com

Bangalore, INDIA.    Web: http://ranjitmathew.hostingzero.com/


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]