I fear print(Sys.dlliist()) is not an option in julia. There's lots of 
other options (Sys,MACHINE, Sys.init, etc) but no Sys.dllist(). 

My Julia install is Version 0.3.0-prerelease+308 if that is relevant :)

Also, nm /usr/local/lib/libsundials_cvode.so just gives me a long list like 
this:

0000000000200e40 a _DYNAMIC
0000000000200fe8 a _GLOBAL_OFFSET_TABLE_
                 w _Jv_RegisterClasses
0000000000200e20 d __CTOR_END__
0000000000200e18 d __CTOR_LIST__
0000000000200e30 d __DTOR_END__
0000000000200e28 d __DTOR_LIST__
00000000000005f0 r __FRAME_END__
0000000000200e38 d __JCR_END__
0000000000200e38 d __JCR_LIST__
0000000000201010 A __bss_start
                 w __cxa_finalize@@GLIBC_2.2.5
0000000000000550 t __do_global_ctors_aux
00000000000004a0 t __do_global_dtors_aux
0000000000201008 d __dso_handle
                 w __gmon_start__
0000000000201010 A _edata
0000000000201020 A _end
0000000000000588 T _fini
0000000000000448 T _init
0000000000000480 t call_gmon_start
0000000000201010 b completed.6531
0000000000201018 b dtor_idx.6533
0000000000000520 t frame_dummy

Thanks again

Tom


On Tuesday, 11 March 2014 22:57:57 UTC+10, Ivar Nesje wrote:
>
> Your code works for me, so I think there is still a problem on your system 
> configuration.
>
> The error is about the C function `CVodeCreate`, not the Julia function 
> with the same name, and apparently Julia finds the sundials library, but it 
> does not contain the function.
>
> Try to run `print(Sys.dllist())` after running your test code to see what 
> libraries are actually loaded. When you know what library gets loaded, you 
> can inspect the library with eg. `nm 
> /usr/local/lib/libsundials_cvode.dylib`, and see if you can find the `
> CVodeCreate` function.
>
> Ivar
>
>
> kl. 11:35:46 UTC+1 tirsdag 11. mars 2014 skrev Thomas Moore følgende:
>>
>> OK, running 
>>
>> push!(DL_LOAD_PATH, "/usr/local/lib/") 
>>
>> has improved the situation a little: now we get this error:
>>
>> ERROR: ccall: could not find function CVodeCreate in library 
>> libsundials_cvode
>>  in ode at /home/thomas/.julia/Sundials/src/Sundials.jl:250
>>
>> At least the shared library is recognised :) 
>>
>> Sundials.CVodeCreate seems to be a generic function, but in Sundials.jl 
>> at line 250 the call to it doesn't seem to be recognised - the error is 
>> driven by this call to it:
>>
>>  mem = CVodeCreate(CV_BDF, CV_NEWTON)
>>
>> Any more ideas? :D
>>
>> Again, a massive thanks! I'm sure this will be useful to others looking 
>> for a nice DAE solver in Julia in the near future :)
>>
>> Tom
>>
>> On Monday, 10 March 2014 23:25:25 UTC+10, Isaiah wrote:
>>>
>>> try:
>>>
>>> julia> push!(DL_LOAD_PATH, "/usr/local/lib/")
>>>
>>> you can also double-check whether it is loadable:
>>>
>>> julia> dlopen("/usr/local/lib/libsundials_cvode.so")
>>>
>>> clang.jl is only a dependency for generating the bindings, not at 
>>> runtime.
>>>
>>>
>>> On Mon, Mar 10, 2014 at 8:42 AM, Thomas Moore <tomm...@live.com.au>wrote:
>>>
>>>> Thanks for your help everyone! I couldn't find the .so file originally, 
>>>> but after building it again with ./configure --enable-shared there was a 
>>>> libsundials_cvode.so in my /usr/local/lib. However I still have the same 
>>>> problem. So far I have:
>>>>
>>>> removed sundials with Pkg.rm("Sundials")
>>>> reinstalled it with Pkg.add("Sundials")
>>>>
>>>> And then run:
>>>>
>>>> push!(DL_LOAD_PATH, "/usr/local/lib/libsundials_cvode.so")
>>>>
>>>> And then run the function I copied above. I fear I'm still getting the 
>>>> exact same error though. It seems it's not recognising the existence of 
>>>> the 
>>>> .so file :(
>>>>
>>>> Any recommendations? My (novice) thoughts are: possibly julia doesn't 
>>>> have permission to access libsundials_cvode.so, I don't know why not 
>>>> though. Also maybe I need some other package installed: for instance, is 
>>>> Clang.jl a dependency - it isn't listed as such?
>>>>
>>>> Thanks!
>>>>
>>>>
>>>>
>>>> On Monday, 10 March 2014 21:53:54 UTC+10, Isaiah wrote:
>>>>
>>>>> Ah, good call. Use `./configure --enable-shared` for the Makefile 
>>>>> build.
>>>>>
>>>>>
>>>>> On Mon, Mar 10, 2014 at 3:34 AM, Ivar Nesje <iva...@gmail.com> wrote:
>>>>>
>>>>>> I do not know CMake, but now that I have a computer I found out that 
>>>>>> I probably used
>>>>>>
>>>>>> BUILD_SHARED_LIBS:BOOL=on
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> kl. 07:43:38 UTC+1 mandag 10. mars 2014 skrev Ivar Nesje følgende:
>>>>>>
>>>>>>> Sundials does not compile a shared library by default. You must look 
>>>>>>> in the PDF manual to find the right option to send to make or 
>>>>>>> configure. 
>>>>>>> (Large pdf is hard to read on phone)
>>>>>>
>>>>>>
>>>>>
>>>

Reply via email to