jcuda / jcuda-main

Summarizes the main JCuda libraries
MIT License
99 stars 20 forks source link

Is there a way to build with other glibc versions other than 2.14? #10

Closed longtengz closed 7 years ago

longtengz commented 7 years ago

Hi, so the following error is what I got while build from source, I'm currently working on a machine with glibc 2.12 installed and I'm not root, so I would really appreciate to build jcuda with glibc 2.12.

java.lang.UnsatisfiedLinkError: /tmp/libJCudaRuntime-0.8.0-linux-x86_64.so: /lib64/libc.so.6: version `GLIBC_2.14' not found (required by /tmp/libJCudaRuntime-0.8.0-linux-x86_64.so)
jcuda commented 7 years ago

Sorry for the delayed response.

I don't have the possibility to build the linux binaries with the desired glibc version right now. I'm not sure whether you can build them on your own, the process should not be so difficult, if you know how to use CMake. Otherwise, I can contact the contributor who provided the linux binaries, and ask whether he can build them with the desired glibc version.

longtengz commented 7 years ago

@jcuda I was able to compile JCuda against glibc 2.14 and link JCuda with it during runtime.

jcuda commented 7 years ago

Great to hear that (and sorry for the inconvenience). OK to close this issue?

aelkayesh commented 6 years ago

@longtengz I am facing the exact issue, how could you resolve yours?

jcuda commented 6 years ago

@localmaxima This issue is pretty old, and there have been some changes in the build infrastructure in the meantime. Could you share some more details about the setup and error message? (I'm not sure whether I could give real help, but maybe others can...)

aelkayesh commented 6 years ago

I am trying to run a JCuda example in a machine with a GPU. It does not work because it looks for GLIBC v 2.14 and the one installed is v 2.12. I managed to get v 2.14 installed alongside but the one that's always loaded is v 2.12 and it can't be replaced by v 2.14 using LD_PRELOAD.

I build JCuda from source on a VM with the same OS and GLIBC "v 2.12" as the GPU machine. I took the jars and tried to run my example on the GPU machine again, it failed for the same reason, it's looking for v 2.14 of GLIBC.