Using Octave API

classic Classic list List threaded Threaded
6 messages Options
Reply | Threaded
Open this post in threaded view
|

Using Octave API

christoph-2

Hi all,

 

I have a piece of C++ code which compiles/links with Octave 3.4.3.

I try to migrate this to Octave 4.4.1

I was able to remove the problems during compilation, but linking is not successful.

 

I get a lot of error messages like

 

undefined reference to `dim_vector::nil_rep()'

relocation truncated to fit: R_X86_64_PC32 against undefined symbol `dim_vector::nil_rep()'

 

How could I resolve these issues?

 

Thanks

Christoph



Reply | Threaded
Open this post in threaded view
|

Re: Using Octave API

Andreas Weber-6
Am 29.09.18 um 16:44 schrieb [hidden email]:
> I have a piece of C++ code which compiles/links with Octave 3.4.3.

Can you please add a link to your software so someone could try to
compile it?

-- Andy


Reply | Threaded
Open this post in threaded view
|

Re: Using Octave API

siko1056
On Sun, Sep 30, 2018 at 9:48 AM Andreas Weber <[hidden email]> wrote:
Am 29.09.18 um 16:44 schrieb [hidden email]:
> I have a piece of C++ code which compiles/links with Octave 3.4.3.

Can you please add a link to your software so someone could try to
compile it?

-- Andy


Two peaces of information I can contribute to this issue:

1. The symbol "dim_vector::nil_rep()" is private [1], thus should to my understanding not be accessible from any non-dim_vector class code.  Therefore I agree with Andy, you should describe which code leads to this issue to find a solution.  For example a simple comparison with "nil_rep" is impossible, but one can call "empty_2d()" [2] to check whether a "dim_vector" is empty.

2. Since Octave 3.4.3 (from 2011-10-10) there happened several changes.  A relevant one might be the 2016 fix of bug #47372 [3], which really prevents the accidental use of duplicate static nil_rep symbols.

HTH,
Kai

 


Reply | Threaded
Open this post in threaded view
|

Fwd: Using Octave API

siko1056
On Mon, Oct 1, 2018 at 3:45 PM <[hidden email]> wrote:

Meanwhile I have solved my problems.

Working with Octave 4.4.1 and 5.0.0 I see error messaages mostly with respect to ‚ocatve_idx_type‘.

It looks like the correspondinh h-file is not included in the right way.

Could you please advice wher to look for.

 

See an extraction of the error messages below.

 

Thanks

Christoph

 

 
Please keep this mailing list in the CC, so others may benefit from your question and on this mailing list we use "bottom-posting" style [2] for each conversation.

If you are using Octave as shared library for a standalone application [1], you basically should include octave/oct.h and get many features for free, including ocatve_idx_type, which is specified in octave/octave-config.h (but already included by octave/oct.h).

HTH,
Kai



Reply | Threaded
Open this post in threaded view
|

AW: Using Octave API

christoph-2

I have solved my problem. My code is now compiling/linking on Octave 4.4.1/5.0.0.

The solution was the g++ switch ‚ -std=gnu++11‘.

 

Thanks for your help.

Christoph

 

Von: Kai Torben Ohlhus [mailto:[hidden email]]
Gesendet: Montag, 1. Oktober 2018 16:00
An: [hidden email]
Cc: [hidden email]
Betreff: Fwd: Using Octave API

 

On Mon, Oct 1, 2018 at 3:45 PM <[hidden email]> wrote:

Meanwhile I have solved my problems.

Working with Octave 4.4.1 and 5.0.0 I see error messaages mostly with respect to ‚ocatve_idx_type‘.

It looks like the correspondinh h-file is not included in the right way.

Could you please advice wher to look for.

 

See an extraction of the error messages below.

 

Thanks

Christoph

 

 

Please keep this mailing list in the CC, so others may benefit from your question and on this mailing list we use "bottom-posting" style [2] for each conversation.

 

If you are using Octave as shared library for a standalone application [1], you basically should include octave/oct.h and get many features for free, including ocatve_idx_type, which is specified in octave/octave-config.h (but already included by octave/oct.h).

 

HTH,

Kai

 



Reply | Threaded
Open this post in threaded view
|

Re: Using Octave API

sdorsher
Hi— I really appreciate the help of the members of this list. My octave version is many months out of date. It was broken in some manner when I last tried to use it. 

I don’t really mind getting the emails but I’m not sure I need to get them either. Provided it’s possible to resubscribe at a later date, can I unsubscribe now? Thanks,

Steven (Susan) Dorsher
[hidden email]

On Oct 2, 2018, at 1:02 AM, <[hidden email]> <[hidden email]> wrote:

I have solved my problem. My code is now compiling/linking on Octave 4.4.1/5.0.0.
The solution was the g++ switch ‚ -std=gnu++11‘.
 
Thanks for your help.
Christoph
 
Von: Kai Torben Ohlhus [[hidden email]] 
Gesendet: Montag, 1. Oktober 2018 16:00
An: [hidden email]
Cc: [hidden email]
Betreff: Fwd: Using Octave API
 
On Mon, Oct 1, 2018 at 3:45 PM <[hidden email]> wrote:
Meanwhile I have solved my problems.
Working with Octave 4.4.1 and 5.0.0 I see error messaages mostly with respect to ‚ocatve_idx_type‘.
It looks like the correspondinh h-file is not included in the right way.
Could you please advice wher to look for.
 
See an extraction of the error messages below.
 
Thanks
Christoph
 
 
Please keep this mailing list in the CC, so others may benefit from your question and on this mailing list we use "bottom-posting" style [2] for each conversation.
 
If you are using Octave as shared library for a standalone application [1], you basically should include octave/oct.h and get many features for free, including ocatve_idx_type, which is specified in octave/octave-config.h (but already included by octave/oct.h).
 
HTH,
Kai