jblas-project / jblas

Linear Algebra for Java
http://jblas.org
BSD 3-Clause "New" or "Revised" License
590 stars 149 forks source link

Win64 mmul() fuction UnsatisfiedLinkError #14

Closed ghost closed 11 years ago

ghost commented 12 years ago

It happens when I call x.mmul(y)

-- org.jblas ERROR Couldn't load copied link file: java.lang.UnsatisfiedLinkError: C:\Users\MarkNV\AppData\Local\Temp\jblas7739628082596798714jblas.dll: Can't find dependent libraries.

Exception in thread "main" java.lang.UnsatisfiedLinkError: org.jblas.NativeBlas.dgemm(CCIIID[DII[DIID[DII)V at org.jblas.NativeBlas.dgemm(Native Method) at org.jblas.SimpleBlas.gemm(SimpleBlas.java:245) at org.jblas.DoubleMatrix.mmuli(DoubleMatrix.java:1673) at mobios.index.algorithms.JLLE.main(JLLE.java:42)

unfortunately, i've got no idea about it. it's just a simple matrix-matrix multiplication, so pls help~

mikiobraun commented 12 years ago

Sorry for the late reply. That does in fact look pretty odd... . Let me check, I'll get back to you...

boris-wang commented 12 years ago

I faced the same problem. -- org.jblas CONFIG Loading jblas_arch_flavor.dll from /lib/static/Windows/amd64/. -- org.jblas CONFIG Loading jblas.dll from /lib/static/Windows/amd64/. -- org.jblas ERROR Couldn't load copied link file: java.lang.UnsatisfiedLinkError: C:\Users\Boris\AppData\Local\Temp\jblas815039611048530734jblas.dll: %1 is not a valid Win32 application.

Exception in thread "main" java.lang.UnsatisfiedLinkError: org.jblas.NativeBlas.dgemm(CCIIID[DII[DIID[DII)V at org.jblas.NativeBlas.dgemm(Native Method) at org.jblas.SimpleBlas.gemm(SimpleBlas.java:245) at org.jblas.DoubleMatrix.mmuli(DoubleMatrix.java:1673) at org.jblas.DoubleMatrix.mmul(DoubleMatrix.java:3004) at org.jblas.util.SanityChecks.checkMatrixMultiplication(SanityChecks.java:91) at org.jblas.util.SanityChecks.main(SanityChecks.java:182) at org.jblas.benchmark.Main.main(Main.java:109)

I use windows 7 64-bit with intel chips. jdk1.6.0_21. I have added /usr/x86_64-w64-mingw32/sys-root/mingw/bin to path, and jar file to classpath. The same setting works on my x201i, which also has windows 7 64-bit, intel chips, jdk 1.6.0_23.

I simply use the jblas-1.2.0.jar on these machine, didn't try to compile the git clones on my machine.

mikiobraun commented 12 years ago

Hi,

probably you're facing seperate issues. mkwc1m4, have you installed the gcc and gfortran libraries as explained in the following page?

https://github.com/mikiobraun/jblas/wiki/Missing-Libraries

boris-wang, win64 isn't really supported yet anyways, so you probably want to stick with the 32 bit jvm even for a 64bit system. More info:

https://github.com/mikiobraun/jblas/wiki/Why-There-Is-No-64bit-Support-for-Windows

-M