Mostly likely, libpardiso isn't linked to libgomp. Check with ldd, and try 
dlopen'ing libgomp first. If this is the version of Pardiso from MKL, then 
it's probably using libiomp instead.

A Pardiso wrapper package would be quite useful, though it's a pretty messy 
situation since Intel MKL includes an implementation of Pardiso that uses 
an older incompatible API. Based on availability and licensing, I suspect 
the MKL version of Pardiso would be more widely usable.


On Tuesday, May 12, 2015 at 2:07:53 AM UTC-7, Kristoffer Carlsson wrote:
>
> Hello everyone,
>
> I am trying to call the Pardiso library (sparse solver library) in the 
> following way:
>
> julia> l = Libdl.dlopen("libparadiso", Libdl.RTLD_GLOBAL)
> Ptr{Void} @0x00000000014e9510
>
> julia> init = Libdl.dlsym(l, "pardisoinit")
> Ptr{Void} @0x00007f920f989f50
>
> julia> pt = [0]
>
> julia> dparm = zeros(64)
>
> julia> err = [0]
>
> julia> ccall(init, Void, (Ptr{Int}, Ptr{Int}, Ptr{Int}, Ptr{Float64}, 
> Ptr{Int}) , pt, &1, &0, dparm, err)
>
> julia: symbol lookup error: /usr/lib/libparadiso.so: undefined symbol: 
> omp_get_wtime_
>
> and then julia crashes.
>
> Can anyone tell me how I get the openmp symbols into julia or what I have 
> to do to fix the problem.
>
> Or even better if someone knows of an already existing Pardiso wrapper for 
> julia.
>
> Best regards,
>
> Kristoffer
>

Reply via email to