help-octave
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: msys, swig, cmake, and undefined octave dll routines


From: John Donoghue
Subject: Re: msys, swig, cmake, and undefined octave dll routines
Date: Mon, 2 Jan 2017 13:07:06 -0500
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.5.1

On 01/02/2017 12:00 PM, address@hidden wrote:
essage: 4
Date: Mon, 2 Jan 2017 08:29:18 -0700
From: Brad Bell <address@hidden>
To: address@hidden
Subject: msys, swig, cmake, and undefined octave dll routines
Message-ID: <address@hidden>
Content-Type: text/plain; charset=utf-8; format=flowed

I am not sure if this is the right list for the question below ?

I am working on a swig prototype that interfaces CppAD Algorithmic 
Differentiation to octave, python, and perl. That should be enough to 
know it would work in general; see
     https://github.com/bradbell/cppad_swig

The python version works under mingw-msys, but I am having some trouble 
linking the octave version. For example, I get the message
     swig_exampleOCTAVE_wrap.cxx:912: undefined reference to `
     octave_value::octave_value(std::__cxx11::basic_string<char, 
std::char_traits<char>, std::allocator<char> > const&, char)'

my CMakeLists.txt code is locating the octave libraries that have a 
dll.a extension, to be specific
     -- octave_liboctinterp = 
C:/Octave/Octave-4.0.0/lib/octave/4.0.0/liboctinterp.dll.a
     -- octave_liboctave = 
C:/Octave/Octave-4.0.0/lib/octave/4.0.0/liboctave.dll.a

It seems to me that these are import libraries because the have the 
'.dll.a' extension; see Answer 1 on
http://stackoverflow.com/questions/6422478/linking-a-lib-and-def-files
I cannot find the corresponding liboctinterp.dll and liboctave.dll to 
make sure they are in my windows path (so that the system can find them 
for dynamic linking). Is there some other dll that I am missing or do 
the '*dll.a' files contain the required routines and I just have the 
wrong linking conventions ?


Take a look in the C:/Octave/Octave-4.0.0/bin directory for the dlls, to link you should only need the export libs, unless cmake is trying to run some built executable whilst determining whether the libs work






reply via email to

[Prev in Thread] Current Thread [Next in Thread]