Re: [Jepp-users] Problem with JRE 1.6 (64 bit) + JEP (2.4)
Brought to you by:
mrjohnson0
From: Mike J. <mi...@pu...> - 2012-06-25 20:26:00
|
I'm sure there's a way but it would require a Windows expert, which is definitely not me. The problem is you have to use the same MSVCRT runtime library as Java or bad things happen when memory is shared between two runtimes. But on x64 Windows, they are distributing Java with some version of the dll that I can't find a tool to link to. There doesn't seem to be any VS version that links it. The closest I could find were some people trying to build using some Windows Driver Kit compiler, because it linked using the right MSVCRT.dll. I had been compiling with an old copy of Visual Studio 6 that I had. For a long time this was the only way I had to build for Windows. It was given to me when I was in high school (it's old!). I don't even have disks anymore, just an iso image on an old backup drive. But it doesn't work on x64, of course, because there's no x64 MSVC 6. Using MSVC is probably a dead end unless somebody knows more than me. Mingw is probably the best hope because it has switches to control the runtime linking. The second best hope is Microsoft rethinks their policy and adds a runtime version selector in the IDE (ha). This is how things are on Windows and why I keep encouraging people to use Jep on Linux -- it's so much easier: $ pip install jep On Jun 24, 2012, at 10:49 PM, Prasanth Narra wrote: > Hi Mike, > > Any other way that i can build the jep.dll & jep.jar (for 64 bit JRE & WIN7 OS-64 bit)? Can i use MSVC? > > Thanks, > Prasanth Narra > > On Sat, Jun 23, 2012 at 4:24 AM, Mike Johnson <mi...@pu...> wrote: > Hi, > > Sorry, I am not really familiar with that tool. I've just used it once or twich, but I can't tell you much about it. > > On Jun 21, 2012, at 11:42 PM, Prasanth Narra wrote: > >> Hi Mike, >> >> I've run pexports (for jvm.dll) & was able to generate jvm.def >> But when i use dlltool to generate import library (dlltool -D jvm.dll -d jvm.def -l jvm.a), it creates jvm.a with 0kb (nothing in it). >> >> Can you help me with this. >> >> Thanks, >> Prasanth Narra >> >> On Tue, Jun 19, 2012 at 12:38 PM, Mike Johnson <mi...@pu...> wrote: >> Hi, >> >> You'll need to see the mingw faq: http://www.mingw.org/wiki/FAQ in the section called "How do I create Python extensions?" >> >> Run pexports and dlltool to create the files you'll need to link with on both the python dll and java. That should solve your link problem. >> >> Mike >> >> >> >> On Jun 18, 2012, at 11:27 PM, Prasanth Narra wrote: >> >>> Hi Mike, >>> >>> I've changed src/jep/winconfig.h by commenting the following: >>> >>> //#define USE_DEALLOC 1 >>> //#define USE_MAPPED_EXCEPTIONS 1 >>> //#define VERSION "2.5" >>> >>> & when i try building, i get the following error: >>> >>> gcc.exe -mno-cygwin -mdll -O -Wall -DPACKAGE=jep -DUSE_DEALLOC=1 -DVERSION="3.0. >>> 0" -IC:\Progra~1\Java\jdk1.6.0_32\include -Isrc/jep -Ibuild/include -Ic:\Python2 >>> 6\include -Ic:\Python26\PC -c src\jep\python\jep_object.c -o build\temp.win32-2. >>> 6\Release\src\jep\python\jep_object.o >>> writing build\temp.win32-2.6\Release\src\jep\jep.def >>> gcc.exe -mno-cygwin -shared -s build\temp.win32-2.6\Release\src\jep\invocationha >>> ndler.o build\temp.win32-2.6\Release\src\jep\jep.o build\temp.win32-2.6\Release\ >>> src\jep\pyembed.o build\temp.win32-2.6\Release\src\jep\pyjarray.o build\temp.win >>> 32-2.6\Release\src\jep\pyjclass.o build\temp.win32-2.6\Release\src\jep\pyjfield. >>> o build\temp.win32-2.6\Release\src\jep\pyjmethod.o build\temp.win32-2.6\Release\ >>> src\jep\pyjobject.o build\temp.win32-2.6\Release\src\jep\util.o build\temp.win32 >>> -2.6\Release\src\jep\python\jep_object.o build\temp.win32-2.6\Release\src\jep\je >>> p.def -Lc:\Python26\libs -Lc:\Python26\PCbuild -ljvm -lpython26 -ldl -lpython26 >>> -lmsvcr90 -o build\lib.win32-2.6\jep.pyd >>> c:/mingw/bin/../lib/gcc/mingw32/4.5.2/../../../../mingw32/bin/ld.exe: cannot fin >>> d -ljvm >>> c:/mingw/bin/../lib/gcc/mingw32/4.5.2/../../../../mingw32/bin/ld.exe: cannot fin >>> d -ldl >>> collect2: ld returned 1 exit status >>> error: command 'gcc' failed with exit status 1 >>> >>> I guess there is some problem with linker. >>> So is there anything which i'm still missing? >>> >>> Thanks, >>> Prasanth Narra >>> >>> On Sat, Jun 9, 2012 at 9:39 AM, Mike Johnson <mi...@pu...> wrote: >>> Hi, >>> >>> I haven't had much luck running Jep recently on Windows due to compiler incompatibilities (difficulty building with the correct MSVCRT). Maybe Mingw will be better. >>> >>> It looks like you'll need to change src/jep/winconfig.h. Remove lines 18-25. This file hasn't been updated since the switch to using distutils to build. That should be it. >>> >>> Please let me know if you are successful. I'd love to see a good Windows build again, and there has been a lot of interest from others as well. >>> >>> Thanks, >>> Mike >>> >>> >>> On Jun 7, 2012, at 1:07 AM, Prasanth Narra wrote: >>> >>>> Hi Mike, >>>> >>>> I've downloaded JEP 3.0.0 source. When i try building it with MinGW / JDK 1.6 (64 bit) / Python 2.6, i get the following error. >>>> >>>> In file included from src\jep\pyjfield.c:35:0: >>>> src\jep\/winconfig.h:25:0: warning: "VERSION" redefined >>>> <command-line>:0:0: note: this is the location of the previous definition >>>> gcc.exe -mno-cygwin -mdll -O -Wall -DPACKAGE=jep -DUSE_DEALLOC=1 -DVERSION="3.0. >>>> 0" -IC:\Progra~1\Java\jdk1.6.0_32\include -Isrc/jep -Ibuild/include -Ic:\Python2 >>>> 6\include -Ic:\Python26\PC -c src\jep\pyjmethod.c -o build\temp.win32-2.6\Releas >>>> e\src\jep\pyjmethod.o >>>> In file included from src\jep\pyjmethod.c:30:0: >>>> src\jep\/winconfig.h:25:0: warning: "VERSION" redefined >>>> <command-line>:0:0: note: this is the location of the previous definition >>>> src\jep\pyjmethod.c: In function 'pyjmethod_init': >>>> src\jep\pyjmethod.c:278:8: error: 'methodGetExceptions' undeclared (first use in >>>> this function) >>>> src\jep\pyjmethod.c:278:8: note: each undeclared identifier is reported only onc >>>> e for each function it appears in >>>> src\jep\pyjmethod.c:287:5: error: 'exceptions' undeclared (first use in this fun >>>> ction) >>>> error: command 'gcc' failed with exit status 1 >>>> >>>> C:\MinGW\bin> >>>> >>>> Build command used: python setup.py install build --compiler=mingw32 >>>> >>>> Can you please help me with this, also let me know if i need anything else for building JEP.jar (64-bit JRE compatable) & JEP.dll (64-bit) >>>> >>>> Thanks, >>>> Prasanth Narra >>>> >>>> On Mon, May 28, 2012 at 4:39 PM, Mike Johnson <mi...@pu...> wrote: >>>> Hi Prasanth, >>>> >>>> Make sure you recompile Jep with the 64 bit JDK as your JAVA_HOME, or >>>> they can't work together... >>>> >>>> Thanks, >>>> Mike >>>> >>>> >>>> On Mon, May 28, 2012 at 10:12 AM, Prasanth Narra <nar...@gm...> wrote: >>>> > Hi, >>>> > >>>> > When i try running my java class with JRE 1.6 (64 bit) with JEP 2.4, i get >>>> > an java.lang.UnsatisfiedLinkError (which says unable to load/find dependent >>>> > libraries). >>>> > >>>> > But everything is fine with 32 bit JRE. But now that i have to upgrade to 64 >>>> > bit, i can't use 32- bit JRE. >>>> > >>>> > -- >>>> > Thanks, >>>> > Prasanth Narra >>>> > >>>> > >>>> > ------------------------------------------------------------------------------ >>>> > Live Security Virtual Conference >>>> > Exclusive live event will cover all the ways today's security and >>>> > threat landscape has changed and how IT managers can respond. Discussions >>>> > will include endpoint security, mobile security and the latest in malware >>>> > threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ >>>> > _______________________________________________ >>>> > Jepp-users mailing list >>>> > Jep...@li... >>>> > https://lists.sourceforge.net/lists/listinfo/jepp-users >>>> > >>>> >>>> >>>> >>>> -- >>>> Thanks, >>>> Prasanth Narra >>>> >>> >>> >>> >>> >>> -- >>> Thanks, >>> Prasanth Narra >>> >> >> >> >> >> -- >> Thanks, >> Prasanth Narra >> > > > > > -- > Thanks, > Prasanth Narra > |