If I'm reading the error message correctly, when libopencv_videoio was
built, it incorrectly specified it's path as a relative location to the
current working directory. Accordingly, you need to chdir("/usr/local") to
be able to use this library or use `install_name_tool` to fix the internal
name of the library and/or relink everything.

On Tue, May 5, 2015 at 2:42 PM Max Suster <[email protected]> wrote:

>
> I realize that it might be useful to include the code for the error I
> observed, so here it is.
> All .dylib libraries are listed by pkg-config in the terminal and work
> with XCode.
>
> This works
> julia> lib = "/usr/local/lib/libopencv_core"
> "/usr/local/lib/libopencv_core"
>
> julia> Libdl.dlopen(lib, Libdl.RTLD_GLOBAL)
> Ptr{Void} @0x00007fd4ad333de0
>
> This does NOT work
> julia> lib = "/usr/local/lib/libopencv_highgui"
> "/usr/local/lib/libopencv_highgui"
>
> julia> Libdl.dlopen(lib, Libdl.RTLD_GLOBAL)
> ERROR: could not load module /usr/local/lib/libopencv_highgui:
> dlopen(/usr/local/lib/libopencv_highgui.dylib, 9): Library not loaded:
> lib/libopencv_videoio.3.0.dylib
>
> Referenced from: /usr/local/lib/libopencv_highgui.dylib
> Reason: image not found
> in dlopen at ./libdl.jl:33
>
> I will be grateful for any tips on what is going on.
>
>
> On Tuesday, May 5, 2015 at 5:33:10 PM UTC+2, Max Suster wrote:
>>
>>
>> When trying to load 8 shared .dylibs from my OpenCV.jl package on the
>> most recent v0.4-dev (OSX 10.10.3), I got an error indicating that dlopen_e
>> and dlopen are deprecated. So I added the Libdl. to each, and tried again.
>>
>>
>> Now it seems that only the core library, libopencv-core.dylib, can be
>> loaded but not the rest.  I also tried adding the libs path to Julia, and
>> cd to /usr/local/lib which contains the libraries, but still I can not load
>> the libs.
>>
>> The error I get is "Image can not be found, see Lidl.jl line 33".  The
>> libs are properly compiled - pkg-config lists all of them and they work
>> when linked to my C++ OpenCV projects in Xcode.
>>
>> Any thoughts on why dlopen is not working this way?  Thanks in advance.
>>
>>

Reply via email to