cocoa-xu / evision

Evision: An OpenCV-Erlang/Elixir binding
https://evision.app
Apache License 2.0
323 stars 22 forks source link

Not able to use Evision Library with Elixir 1.14.4-otp25 #196

Closed Jitesh-Srivastava closed 11 months ago

Jitesh-Srivastava commented 1 year ago

Hi creator, I have did the installation process of Evision v0.1.15 with command "{:evision, "~> 0.1.15", github: "cocoa-xu/evision", branch: "main"}" with the exporting of "export EVISION_PREFER_PRECOMPILED=false" and installing cmake but always find this error and could not able to resolve this. Please help to resolve the error

image

Even i've tried to delete and rebuilt it

cocoa-xu commented 1 year ago

Hi @Jitesh-Srivastava, I'll look into this later today! And could you please let me know the CMake's version on your machine?

Jitesh-Srivastava commented 1 year ago

@cocoa-xu It's showing cmake version is 3.10. Also if I am trying to use "export EVISION_PREFER_PRECOMPILED=true" then it shows failed to load nif library:

image

cocoa-xu commented 1 year ago

@cocoa-xu It's showing cmake version is 3.10. Also if I am trying to use "export EVISION_PREFER_PRECOMPILED=true" then it shows failed to load nif library:

image

Oh I see, the Linux precompiled binaries were compiled on Ubuntu 20.04, which links to GLIBC 2.29, and it seems that you were using an old Linux distro. Could you please let me know your OS and its version?

Jitesh-Srivastava commented 1 year ago

I am using Ubuntu 18.04

cocoa-xu commented 1 year ago

Sorry I'm afraid that you may need to build it from source for now. The Ubuntu 18.04 GitHub action runner has been deprecated since 12/1/22 see this link.

One possible way to fix this is to use zig as the C++ compiler, and then we can specify the version of glibc it links to.

However, Ubuntu 18.04 itself is also deprecated since April 30, 2023. So I'm not sure if it's worth to make all the changes for it...

cocoa-xu commented 11 months ago
Screenshot 2023-08-01 at 09 09 47

It should work now, w/ and w/o contrib modules, except for the CUDA ones.