fingltd/4mc

Problem with Java on windows7 64-bit

Opened this issue · 4 comments

Hello, I load 2.0.0 version, rebuild it and try to use in my project. And I got following exception:

Exception in thread "Thread-1" java.lang.UnsatisfiedLinkError: C:\Users\User\AppData\Local\Temp\libhadoop-4mc4717395728020324256.dll: Can't load IA 32-bit .dll on a AMD 64-bit platform
at java.lang.ClassLoader$NativeLibrary.load(Native Method)
at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1937)
at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1822)
at java.lang.Runtime.load0(Runtime.java:809)
at java.lang.System.load(System.java:1086)
at com.hadoop.compression.fourmc.FourMcNativeCodeLoader.loadLibrary(FourMcNativeCodeLoader.java:140)
at com.hadoop.compression.fourmc.FourMcNativeCodeLoader.(FourMcNativeCodeLoader.java:166)

I check that temporary dll file is byte to byte equal to win32/amd64/libhadoop-4mc.dll

When I fall down to 1.4.0 everything works fine.

Most probably compilation went wrong on windows 64bit, while 32bit seems to work fine.
I will recompile it as soon as I can, unless you can do it yourself on a Cygwin (64-bit).

Hello,

I have try to recompile using cygwin on my win7 laptop.

I have got some problems:

  • with latest cygwin don't require add windows headers
  • if compile jni againist latest JDK (1.8), int64__ type declaration required

So I update sources to awoid declared problems and run "make all"

I got two files 4mc.exe and libhadoop-4mc.so.1.1.0
Las one looks like dll. I rename it to libhadoop-4mc.dll and put to ...\4MC\java\hadoop-4mc\src\main\resources\com\hadoop\compression\fourmc\win32\amd64\

But I got the same problem when try to run java app.

Inintialy I want to contribute ImputFormat implementation for old style mapred api. It is required to use 4mc with hadoop streaming. But I can't finish debugging because I cant't run on my win64 laptop.

My sources available here https://drive.google.com/file/d/0B2hpN40WsjuoVzFxQ0Vzc3Jpbkk/view?usp=sharing

I had read issues and found that old style api already exists in https://github.com/soomla/4mc =) But problem with win64 dll still actual.

I am not very friendly with C and I has no any expierence with GCC under CYGWIN, so I can't debug it =(((