The output of otool appears to indicate that it is built such that it can only be loaded by changing the working directory (because of ./). This is not advisable from a package distribution standpoint, but we see that this is what Intel did, unfortunately. I think you could use install_name_tool from Xcode to edit it
I have some thoughts for improving this in 0.4. On Thursday, July 3, 2014, Jay Kickliter <[email protected]> wrote: > I misspoke, here's the output of tool: > > $ otool -L /opt/intel/ipp/lib/libipps.dylib > /opt/intel/ipp/lib/libipps.dylib: > ./libipps-8.1.dylib (compatibility version 8.1.0, current version 8.1.0) > ./libippcore-8.1.dylib (compatibility version 8.1.0, current version 8.1.0) > /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version > 169.3.0) > > > I can load both libippcore and libSystem when I start Julia from ~/, but I > have to cd( "/opt/intel/ipp/lib" ) in order to to open libipps: > > julia> DL_LOAD_PATH > 5-element Array{Union(ASCIIString,UTF8String),1}: > "@executable_path/../lib/julia" > "@executable_path/../lib" > "/opt/local/bin" > "/opt/intel/lib/intel64" > "/opt/intel/ipp/lib" > > julia> dlopen("libSystem.B") > Ptr{Void} @0x00007fe7ee2a7070 > > julia> dlopen("libippcore") > Ptr{Void} @0x00007fe7ee011160 > > julia> dlopen("libipps") > ERROR: could not load module libipps: dlopen(libipps.dylib, 1): image not > found > in dlopen at c.jl:19 > > julia> cd( "/opt/intel/ipp/lib/" ) > > julia> dlopen("libipps") > Ptr{Void} @0x00007fe7ea69cc10 > > I've exhausted my limited troubleshooting skills in this area. Any > suggestions? > > I forgot to mention that IPP is Intel Integrated Performance Primitives. > > On Thursday, July 3, 2014 7:30:44 AM UTC-6, Jay Kickliter wrote: >> >> I'm trying to open libipps.dylib in OS X. If I push the path to >> DL_LOAD_PATH, Julia can't find it. But if I cd() to that path, it loads it >> fine. The weird thing is that it can find libippcore.dylib just fine with >> without having to cd() to the libraries' location. >> >> Here's what I tried: >> >> julia> push!( DL_LOAD_PATH, "/opt/intel/ipp/lib" ) >> 4-element Array{Union(ASCIIString,UTF8String),1}: >> "@executable_path/../lib/julia" >> "@executable_path/../lib" >> "/opt/local/lib" >> "/opt/intel/ipp/lib" >> >> julia> dlopen( "libipps" ) >> ERROR: could not load module libipps: dlopen(libipps.dylib, 1): image not >> found >> in dlopen at c.jl:19 >> >> julia> cd( "/opt/intel/ipp/lib" ) >> >> julia> dlopen( "libipps" ) >> Ptr{Void} @0x00007fc5aad99330 >> >> Am I making a rookie mistake? I tried first loading the two other >> libraries that libipps depends on. I could't only get one of them to load >> (libippcore). >> >
