Updates to JPL
[email protected] Fri, 2 Jun 2000 07:47:28 -0400
| Newsgroups | perl.jpl |
|---|---|
| Message-ID | <[email protected]> |
For the benefit of others, I submit this snippet of conversation I had with Brian Jepson re: JPL, Perl 5.6, and Win32. ==================================================== M. Scott Roth, <[email protected]> Information Systems Engineer Science Applications International Corporation 703-375-2260 ========================<><========================= ----- Forwarded by Scott Roth/NMSD on 06/02/00 07:47 AM ----- Brian Jepson <bjepson@jeps To: [email protected] tone.net> cc: Subject: Re: Updates to JPL 05/31/00 03:35 PM Scott, Thanks for your note - one thing I forgot to mention or update in the README is that you should not take the step of copying typemap.win32 to typemap, since that step existed only to take care of the C vs. C++ calling conventions. The default typemap (aka typemap.gcc) should work OK, and it might make it possible for you to get right of the "left of '->NewStringUTF'" errors. Thanks! On Wed, 31 May 2000 [email protected] wrote: > > Brian, I have had a little more success in getting JNI to compile using > your latest copy in CVS. Although, as seen below, I still have a few > problems. At first glance it looks like these might be related the (*env) > ->FUNCTIONNAME(env, args) fix you made. I didn't get to the linking stage > but it looks like some of the errors you encountered might be from a > missing library (MSCVRT.lib?). Hope this helps. > > Scott. > > JNI.xs(77) : warning C4133: 'function' : incompatible types - from 'struct > _PerlIO *' to 'struct _iobuf *' > JNI.c(5310) : error C2223: left of '->NewStringUTF' must point to > struct/union > JNI.c(5339) : error C2223: left of '->NewStringUTF' must point to > struct/union > JNI.c(5400) : error C2223: left of '->NewStringUTF' must point to > struct/union > JNI.c(5428) : error C2223: left of '->NewStringUTF' must point to > struct/union > JNI.xs(3135) : warning C4133: 'function' : incompatible types - from > 'struct _PerlIO *' to 'struct _iobuf *' > JNI.xs(3145) : warning C4133: 'function' : incompatible types - from > 'struct _PerlIO *' to 'struct _iobuf *' > JNI.xs(3169) : warning C4133: 'function' : incompatible types - from > 'struct _PerlIO *' to 'struct _iobuf *' > JNI.xs(3170) : warning C4133: 'function' : incompatible types - from > 'struct _PerlIO *' to 'struct _iobuf *' > JNI.xs(3177) : warning C4133: 'function' : incompatible types - from > 'struct _PerlIO *' to 'struct _iobuf *' > JNI.xs(3178) : warning C4133: 'function' : incompatible types - from > 'struct _PerlIO *' to 'struct _iobuf *' > JNI.xs(3214) : warning C4133: 'function' : incompatible types - from > 'struct _PerlIO *' to 'struct _iobuf *' > JNI.xs(3215) : warning C4133: 'function' : incompatible types - from > 'struct _PerlIO *' to 'struct _iobuf *' > JNI.xs(3218) : warning C4047: 'function' : 'void ** ' differs in levels of > indirection from 'const struct JNINativeInterface_ *** ' > JNI.xs(3218) : warning C4022: 'JNI_CreateJavaVM' : pointer mismatch for > actual parameter 2 > JNI.xs(3220) : warning C4133: 'function' : incompatible types - from > 'struct _PerlIO *' to 'struct _iobuf *' > NMAKE : fatal error U1077: 'cl.exe' : return code '0x2' > Stop. > ==================================================== > M. Scott Roth, > <[email protected]> > Information Systems Engineer > Science Applications International Corporation > 703-375-2260 > ========================<><========================= > > > > > Brian Jepson > <bjepson@jeps To: [email protected] > tone.net> cc: > Subject: Updates to JPL > 05/29/00 > 01:04 PM > > > > > > > > I had a chance to mess around with the JPL code today (but I didn't get > in very deep). > > * I have incorporated the code from the latest.tar.gz Perl distribution. > > * On Win32, I tried to work with ActivePerl 5.6 and JDK 1.2.2. > > I fixed the C++ style function calls that were wrapped in a #ifdef WIN32 > block - these seem to work now as (*env)->FUNCTIONNAME(env, args) where > I previously had these env->FUNCTIONAME(args) under WIN32. > > However, a number of errors still occur under Win32: > > O:\Projects\jpl\jpl\JNI>nmake > > Microsoft (R) Program Maintenance Utility Version 6.00.8168.0 > Copyright (C) Microsoft Corp 1988-1998. All rights reserved. > > "Running Mkbootstrap for JNI ()" > C:\Perl\bin\Perl.exe -IC:\Perl\lib -IC:\Perl\lib > -MExtUtils::Command -e chmod 644 JNI.bs > > C:\Perl\bin\Perl.exe "-IC:\Perl\lib" "-IC:\Perl\lib" > -MExtUtils::Mksymlists -e "Mksymlists('NAME' => 'JNI', 'DLBASE' > => 'JNI', 'DL_FUNCS' => { }, 'FUNCLIST' => [], 'IMPORTS' => { }, > 'DL_VARS' => []);" > link -out:blib\arch\auto\JNI\JNI.dll -dll -nologo -nodefaultlib > -release -libpath:"C:\Perl\lib\CORE" -machine:x86 JNI.obj > C:\Perl\lib\CORE\perl56.lib C:\\JDK1.2.2\\lib\\\jvm.lib > -def:JNI.def > Creating library blib\arch\auto\JNI\JNI.lib and object > blib\arch\auto\JNI\JNI.exp > JNI.obj : error LNK2001: unresolved external symbol __imp__strncmp > JNI.obj : error LNK2001: unresolved external symbol __imp__fprintf > JNI.obj : error LNK2001: unresolved external symbol __fltused > JNI.obj : error LNK2001: unresolved external symbol __ftol > JNI.obj : error LNK2001: unresolved external symbol _strcmp > JNI.obj : error LNK2001: unresolved external symbol __imp___errno > JNI.obj : error LNK2001: unresolved external symbol __imp__LoadLibraryA@4 > LINK : error LNK2001: unresolved external symbol __DllMainCRTStartup@12 > blib\arch\auto\JNI\JNI.dll : fatal error LNK1120: 8 unresolved externals > NMAKE : fatal error U1077: 'link' : return code '0x460' > Stop. > > * On Linux, I worked with RedHat 6.1, the Perl that comes with RedHat 6.1, > and IBM JDK 1.1.8. The instructions in README.JUST-JNI work through > 'make test' and 'make install', but I have not tried to stress it too > much. > > The latest changes are now in the CVS archive, and you can get > instructions for accessing it at: > > http://users.ids.net/~bjepson/jpl/cvs.html > > Cheers, > > -- > Brian Jepson * ([email protected]) * http://www.jepstone.net/ > > > > -- Brian Jepson * ([email protected]) * http://www.jepstone.net/