octave-maintainers
[Top][All Lists]
Advanced

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

Re: pending optiminterp-0.3.5 release


From: Olaf Till
Subject: Re: pending optiminterp-0.3.5 release
Date: Wed, 23 Aug 2017 17:10:02 +0200
User-agent: Mutt/1.5.23 (2014-03-12)

Please keep all technical discussions triggered by releases on the
maintainers mailing list. I think it's better to have them here, for
all to see them. And we should not get locked into sourceforges
tracker. I think the release tracker should only be used for very
simple issues, ideally only to post the release and to mark it
finished.

On Sun, Aug 20, 2017 at 05:51:31PM +0200, Oliver Heimlich wrote:
> I can't confirm this problem on my computer.  I do not see warnings
> during installation.  I can load optiminterp in Octave and run the
> example_optiminterp function without errors.
> 
> I am not familiar with Fortran.  Could this be a compiler problem?  I am
> testing on Debian Jessie with GCC 4.9.2.

Probably got it: optimerp.oct got linked to wrong Octave libraries (to
those in the system library directories). I've been struck by this
subtle problem before. If not cared for, it will always be triggered
if the currently used Octave is under a 'local' path but there is
another Octave installed under the standard system path. A not so
unusual situation, possibly.

The culprit in optiminterp is probably FLIBS in src/Makefile, which
contains -L directives for the standard system library directories and
is placed in the commandline of the mkoctfile call. The problem with
this is that mkoctfile places these -L directives _before_ the -L
directives for the native Octave libraries in linker calls.

The solution I had used before is to query for 'mkoctfile -p
OCT_LINK_OPTS', put the -L directives for external libraries (now in
FLIBS in the case of optiminterp) at the end of OCT_LINK_OPTS, and
call mkoctfile like:

OCT_LINK_OPTS="$(OCT_LINK_OPTS)" $(MKOCTFILE)...

This will place these -L directives _after_ those for the native
Octave libraries.

Alexander, it's an external package, do you want me to supply a patch
anyway? If so, please synchronize the OF repository of optiminterp,
I'll only rely on this repository clone.

What I'd also like to change in the same go is:

- renaming autogen.sh to bootstrap to be able to use the standard root
  Makefile  without changes

- renaming configure.in to configure.ac in bootstrap to work around a
  probable bug in some autoconf versions (and to use the now preferred
  naming scheme)

Olaf

-- 
public key id EAFE0591, e.g. on x-hkp://pool.sks-keyservers.net

Attachment: signature.asc
Description: Digital signature


reply via email to

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