bugGNU Octave - Bugs: bug #49294, [octave forge] (level-set) fails...

 
 

bug #49294: [octave forge] (level-set) fails to install in octave 4.2.0rc2

Submitted by:  John Donoghue <lostbard>
Submitted on:  Fri 07 Oct 2016 08:31:37 PM UTC  
 
Category:  Octave Forge Package Severity:  3 - Normal
Priority:  5 - Normal Item Group:  Build Failure
Status:  Patch Submitted Assigned to:  None
Originator Name:  JohnD Open/Closed:  Open
Release:  4.2.0 Operating System:  Microsoft Windows

Add a New Comment (Rich Markup)
   

You are not logged in

Please log in, so followups can be emailed to you.

 

( Jump to the original submission)

Sat 13 Apr 2019 07:07:29 AM UTC, comment #8: 

Regarding the deprecated functions:  I've had it in my mind to go and update everything to a current version of Octave (i.e. 5.0 or 5.1), but haven't found time yet.  I'll try to do so "soon".

Daniel Kraft <domob>
Fri 12 Apr 2019 07:34:32 PM UTC, comment #7: 

In octave 5.1, windows:

checking whether g++ supports C++11 features by default... yes

And it installs OK (level-set 0.3.0), with a number warning about depreciated functions and texi warnings.

John Donoghue <lostbard>
Project Member
Tue 18 Jul 2017 05:41:09 PM UTC, comment #6: 

Thanks for the patch, I've merged it into the master branch and pushed to Sourceforge.

Daniel Kraft <domob>
Tue 18 Jul 2017 05:19:04 PM UTC, comment #5: 

Patch attached

(file #41235)

John Donoghue <lostbard>
Project Member
Thu 24 Nov 2016 02:58:59 PM UTC, comment #4: 

Also fails to install in OS X with Homebrew:

In file included from FastMarching.cpp:19:
In file included from ./FastMarching.hpp:56:
./Heap.hpp:78:15: warning: deleted function definitions are a C++11 extension
      [-Wc++11-extensions]
    Heap () = delete;
              ^
./Heap.hpp:79:28: warning: deleted function definitions are a C++11 extension
      [-Wc++11-extensions]
    Heap (const Heap& o) = delete;
                           ^
./Heap.hpp:80:39: warning: deleted function definitions are a C++11 extension
      [-Wc++11-extensions]
    Heap& operator= (const Heap& o) = delete;
                                      ^
./Heap.hpp:205:20: warning: deleted function definitions are a C++11 extension
      [-Wc++11-extensions]
    EntryData () = delete;
                   ^
./Heap.hpp:206:38: warning: deleted function definitions are a C++11 extension
      [-Wc++11-extensions]
    EntryData (const EntryData& o) = delete;
                                     ^
./Heap.hpp:207:49: warning: deleted function definitions are a C++11 extension
      [-Wc++11-extensions]
    EntryData& operator= (const EntryData& o) = delete;
                                                ^
In file included from FastMarching.cpp:19:
In file included from ./FastMarching.hpp:56:
In file included from ./Heap.hpp:260:
./Heap.tpp:35:8: warning: 'auto' type specifier is a C++11 extension
      [-Wc++11-extensions]
  for (auto e : data)
       ^
./Heap.tpp:35:15: warning: range-based for loop is a C++11 extension
      [-Wc++11-extensions]
  for (auto e : data)
              ^
./Heap.tpp:169:13: warning: 'auto' type specifier is a C++11 extension
      [-Wc++11-extensions]
      const auto child = down (i);
            ^
./Heap.tpp:192:9: warning: 'auto' type specifier is a C++11 extension
      [-Wc++11-extensions]
  const auto indexA = a.index;
        ^
./Heap.tpp:193:9: warning: 'auto' type specifier is a C++11 extension
      [-Wc++11-extensions]
  const auto indexB = b.index;
        ^
./Heap.tpp:228:9: warning: 'auto' type specifier is a C++11 extension
      [-Wc++11-extensions]
  const auto ind = 2 * index + c + 1;
        ^
In file included from FastMarching.cpp:19:
./FastMarching.hpp:162:44: warning: deleted function definitions are a C++11
      extension [-Wc++11-extensions]
  UpdateEquation (const UpdateEquation&) = delete;
                                           ^
./FastMarching.hpp:163:55: warning: deleted function definitions are a C++11
      extension [-Wc++11-extensions]
  UpdateEquation& operator= (const UpdateEquation&) = delete;
                                                      ^
./FastMarching.hpp:241:17: warning: deleted function definitions are a C++11
      extension [-Wc++11-extensions]
  EqnEntry () = delete;
                ^
./FastMarching.hpp:242:32: warning: deleted function definitions are a C++11
      extension [-Wc++11-extensions]
  EqnEntry (const EqnEntry&) = delete;
                               ^
./FastMarching.hpp:243:43: warning: deleted function definitions are a C++11
      extension [-Wc++11-extensions]
  EqnEntry& operator= (const EqnEntry&) = delete;
                                          ^
./FastMarching.hpp:347:14: warning: deleted function definitions are a C++11
      extension [-Wc++11-extensions]
  Entry () = delete;
             ^
./FastMarching.hpp:348:28: warning: deleted function definitions are a C++11
      extension [-Wc++11-extensions]
  Entry (const Entry& o) = delete;
                           ^
./FastMarching.hpp:349:39: warning: deleted function definitions are a C++11
      extension [-Wc++11-extensions]
  Entry& operator= (const Entry& o) = delete;
                                      ^
./FastMarching.hpp:534:13: warning: deleted function definitions are a C++11
      extension [-Wc++11-extensions]
  Grid () = delete;
            ^
./FastMarching.hpp:535:26: warning: deleted function definitions are a C++11
      extension [-Wc++11-extensions]
  Grid (const Grid& o) = delete;
                         ^
./FastMarching.hpp:536:37: warning: deleted function definitions are a C++11
      extension [-Wc++11-extensions]
  Grid& operator= (const Grid& o) = delete;
                                    ^
In file included from FastMarching.cpp:19:
In file included from ./FastMarching.hpp:614:
./FastMarching.tpp:69:13: warning: 'auto' type specifier is a C++11 extension
      [-Wc++11-extensions]
      const auto oldValue = neighbour[d];
            ^
FastMarching.cpp:40:8: warning: 'auto' type specifier is a C++11 extension
      [-Wc++11-extensions]
  for (auto e : entries)
       ^
FastMarching.cpp:40:15: warning: range-based for loop is a C++11 extension
      [-Wc++11-extensions]
  for (auto e : entries)
              ^
FastMarching.cpp:56:3: warning: 'auto' type specifier is a C++11 extension
      [-Wc++11-extensions]
  auto iter = entries.find (d);
  ^
FastMarching.cpp:81:14: warning: 'auto' type specifier is a C++11 extension
      [-Wc++11-extensions]
  for (const auto& e : entries)
             ^
FastMarching.cpp:81:22: warning: range-based for loop is a C++11 extension
      [-Wc++11-extensions]
  for (const auto& e : entries)
                     ^
FastMarching.cpp:105:18: warning: 'auto' type specifier is a C++11 extension
      [-Wc++11-extensions]
      for (const auto cur : sortedEntries)
                 ^
FastMarching.cpp:105:27: warning: range-based for loop is a C++11 extension
      [-Wc++11-extensions]
      for (const auto cur : sortedEntries)
                          ^
FastMarching.cpp:117:7: error: no matching function for call to 'issueWarning'
      issueWarning ("level-set:fast-marching:too-far-alive",
      ^~~~~~~~~~~~
./FastMarching.hpp:102:6: note: candidate function not viable: no known
      conversion from 'const char [38]' to 'const std::string' (aka 'const
      basic_string<char, char_traits<char>, allocator<char> >') for 1st argument
void issueWarning (const std::string& id, const std::string& fmt, ...);
     ^
FastMarching.cpp:156:14: warning: 'auto' type specifier is a C++11 extension
      [-Wc++11-extensions]
  for (const auto cur : sortedEntries)
             ^
FastMarching.cpp:156:23: warning: range-based for loop is a C++11 extension
      [-Wc++11-extensions]
  for (const auto cur : sortedEntries)
                      ^
FastMarching.cpp:220:9: warning: 'auto' type specifier is a C++11 extension
      [-Wc++11-extensions]
  const auto buildEqn
        ^
FastMarching.cpp:221:7: error: expected expression
    = [&eqn, &grid] (const IndexTuple& neighbour, dimensionT d, indexT)
      ^
FastMarching.cpp:240:9: error: no matching function for call to 'issueWarning'
        issueWarning ("level-set:fast-marching:increased-distance",
        ^~~~~~~~~~~~
./FastMarching.hpp:102:6: note: candidate function not viable: no known
      conversion from 'const char [43]' to 'const std::string' (aka 'const
      basic_string<char, char_traits<char>, allocator<char> >') for 1st argument
void issueWarning (const std::string& id, const std::string& fmt, ...);
     ^
FastMarching.cpp:305:9: warning: 'auto' type specifier is a C++11 extension
      [-Wc++11-extensions]
  const auto updateIt
        ^
FastMarching.cpp:306:7: error: expected expression
    = [this] (const IndexTuple& neighbour, dimensionT, indexT)
      ^
FastMarching.cpp:345:8: warning: 'auto' type specifier is a C++11 extension
      [-Wc++11-extensions]
  for (auto i : s)
       ^
FastMarching.cpp:345:15: warning: range-based for loop is a C++11 extension
      [-Wc++11-extensions]
  for (auto i : s)
              ^
FastMarching.cpp:349:8: warning: 'auto' type specifier is a C++11 extension
      [-Wc++11-extensions]
  for (auto& p : entries)
       ^
FastMarching.cpp:349:16: warning: range-based for loop is a C++11 extension
      [-Wc++11-extensions]
  for (auto& p : entries)
               ^
FastMarching.cpp:363:8: warning: 'auto' type specifier is a C++11 extension
      [-Wc++11-extensions]
  for (auto p : entries)
       ^
FastMarching.cpp:363:15: warning: range-based for loop is a C++11 extension
      [-Wc++11-extensions]
  for (auto p : entries)
              ^
FastMarching.cpp:407:14: warning: 'auto' type specifier is a C++11 extension
      [-Wc++11-extensions]
  for (const auto center : entries)
             ^
FastMarching.cpp:407:26: warning: range-based for loop is a C++11 extension
      [-Wc++11-extensions]
  for (const auto center : entries)
                         ^
43 warnings and 4 errors generated.
make: *** [FastMarching.o] Error 1
make: *** Waiting for unfinished jobs....
Utils.cpp:36:19: warning: 'va_start' has undefined behavior with reference types
      [-Wvarargs]
  va_start (args, fmt);
                  ^
Utils.cpp:33:57: note: parameter of type 'const std::string &' (aka 'const
      basic_string<char, char_traits<char>, allocator<char> > &') is declared
      here
issueWarning (const std::string& id, const std::string& fmt, ...)
                                                        ^
1 warning generated.
c++ -g -O2 -Wall -Wextra -Weffc++ -pedantic -fPIC -c FastMarching.cpp -o FastMarching.o
CXXFLAGS="-g -O2 -Wall -Wextra" /usr/local/Cellar/octave/4.2.0/bin/mkoctfile-4.2.0 -c Utils.cpp -o Utils.o

pkg: error running `make' for the level-set package.
error: called from
    install at line 200 column 5
    pkg at line 394 column 9

Nir Krakauer <nir_krakauer>
Thu 24 Nov 2016 02:49:16 PM UTC, comment #3: 

still an issue with the 4.2.0 official release

John Donoghue <lostbard>
Project Member
Thu 27 Oct 2016 07:14:09 PM UTC, comment #2: 

Ok this is pretty much the same issue as seen in this bug: https://savannah.gnu.org/bugs/?47355

GNU make ALWAYS defines CC and CXX even if they are not set, so
CXX ?= somethingoptional_if_CXX_is_not_set, is never actually used.

Changing the Makefile from:

CXX ?= @CXX@

to:

CXX = @CXX@

Makes it compile in windows as it then uses the CXX values that were worked out in configure.

John Donoghue <lostbard>
Project Member
Fri 07 Oct 2016 09:01:39 PM UTC, comment #1: 

Looks like it working in Linux.

Perhaps related:

windows:

checking whether g++ supports C++11 features by default... no
checking whether g++ supports C++11 features with -std=c++11... yes

Fedora Linux:

checking whether g++ supports C++11 features by default... yes

John Donoghue <lostbard>
Project Member
Fri 07 Oct 2016 08:31:37 PM UTC, original submission:  

Attempting to install level-set 0.3.0 in windows (although it might not be just a windows issue) using Octave 4.2.0rc2 via:

pkg install -forge level-set

Install fails with a number of compile errors based on not finding M_PI.

 

CXXFLAGS="-g -O2 -std=c++11 -Wall -Wextra" C:/Octave/Octave-4.2.0-rc2/bin/mkoctfile-4.2.0-rc2.exe --verbose -c Utils.cpp -o Utils.o
g++ -std=gnu++11 -c -I/home/johnd/mxe-octave/build-dev/usr/i686-w64-mingw32/include  -IC:\Octave\Octave-4.2.0-rc2\include\octave-4.2.0-rc2\octave\.. -IC:\Oct
ave\Octave-4.2.0-rc2\include\octave-4.2.0-rc2\octave -IC:\Octave\Octave-4.2.0-rc2\include  -pthread -fopenmp -mieee-fp -g -O2 -std=c++11 -Wall -Wextra    Uti
ls.cpp -o Utils.o
In file included from C:\Octave\Octave-4.2.0-rc2\include\octave-4.2.0-rc2\octave\../octave/lo-utils.h:36:0,
                 from C:\Octave\Octave-4.2.0-rc2\include\octave-4.2.0-rc2\octave\../octave/Array.h:41,
                 from C:\Octave\Octave-4.2.0-rc2\include\octave-4.2.0-rc2\octave\../octave/Sparse.h:37,
                 from C:\Octave\Octave-4.2.0-rc2\include\octave-4.2.0-rc2\octave\../octave/MSparse.h:31,
                 from C:\Octave\Octave-4.2.0-rc2\include\octave-4.2.0-rc2\octave\../octave/MatrixType.h:29,
                 from C:\Octave\Octave-4.2.0-rc2\include\octave-4.2.0-rc2\octave\../octave/mx-base.h:30,
                 from C:\Octave\Octave-4.2.0-rc2\include\octave-4.2.0-rc2\octave\../octave/Matrix.h:32,
                 from C:\Octave\Octave-4.2.0-rc2\include\octave-4.2.0-rc2\octave\../octave/oct.h:30,
                 from Utils.hpp:26,
                 from Utils.cpp:19:
C:\Octave\Octave-4.2.0-rc2\include\octave-4.2.0-rc2\octave\../octave/oct-cmplx.h: In function 'bool operator>(const std::complex<_Tp>&, const std::complex<_T
p>&)':
C:\Octave\Octave-4.2.0-rc2\include\octave-4.2.0-rc2\octave\../octave/oct-cmplx.h:55:36: error: 'M_PI' was not declared in this scope
         if (ay == static_cast<T> (-M_PI))

                                    ^
C:\Octave\Octave-4.2.0-rc2\include\octave-4.2.0-rc2\octave\../octave/oct-cmplx.h:100:1: note: in expansion of macro 'DEF_COMPLEXR_COMP'
DEF_COMPLEXR_COMP (>, >)
^
C:\Octave\Octave-4.2.0-rc2\include\octave-4.2.0-rc2\octave\../octave/oct-cmplx.h: In function 'bool operator>(const std::complex<_Tp>&, T)':
C:\Octave\Octave-4.2.0-rc2\include\octave-4.2.0-rc2\octave\../octave/oct-cmplx.h:77:36: error: 'M_PI' was not declared in this scope
         if (ay == static_cast<T> (-M_PI))                               \
                                    ^
C:\Octave\Octave-4.2.0-rc2\include\octave-4.2.0-rc2\octave\../octave/oct-cmplx.h:100:1: note: in expansion of macro 'DEF_COMPLEXR_COMP'
DEF_COMPLEXR_COMP (>, >)
^
C:\Octave\Octave-4.2.0-rc2\include\octave-4.2.0-rc2\octave\../octave/oct-cmplx.h: In function 'bool operator>(T, const std::complex<_Tp>&)':
C:\Octave\Octave-4.2.0-rc2\include\octave-4.2.0-rc2\octave\../octave/oct-cmplx.h:92:36: error: 'M_PI' was not declared in this scope
         if (by == static_cast<T> (-M_PI))                               \
                                    ^
C:\Octave\Octave-4.2.0-rc2\include\octave-4.2.0-rc2\octave\../octave/oct-cmplx.h:100:1: note: in expansion of macro 'DEF_COMPLEXR_COMP'
DEF_COMPLEXR_COMP (>, >)
^
C:\Octave\Octave-4.2.0-rc2\include\octave-4.2.0-rc2\octave\../octave/oct-cmplx.h: In function 'bool operator<(const std::complex<_Tp>&, const std::complex<_T
p>&)':
C:\Octave\Octave-4.2.0-rc2\include\octave-4.2.0-rc2\octave\../octave/oct-cmplx.h:55:36: error: 'M_PI' was not declared in this scope
         if (ay == static_cast<T> (-M_PI))                               \
                                    ^
C:\Octave\Octave-4.2.0-rc2\include\octave-4.2.0-rc2\octave\../octave/oct-cmplx.h:101:1: note: in expansion of macro 'DEF_COMPLEXR_COMP'
DEF_COMPLEXR_COMP (<, <)
^
C:\Octave\Octave-4.2.0-rc2\include\octave-4.2.0-rc2\octave\../octave/oct-cmplx.h: In function 'bool operator<(const std::complex<_Tp>&, T)':
C:\Octave\Octave-4.2.0-rc2\include\octave-4.2.0-rc2\octave\../octave/oct-cmplx.h:77:36: error: 'M_PI' was not declared in this scope
         if (ay == static_cast<T> (-M_PI))                               \
                                    ^
C:\Octave\Octave-4.2.0-rc2\include\octave-4.2.0-rc2\octave\../octave/oct-cmplx.h:101:1: note: in expansion of macro 'DEF_COMPLEXR_COMP'
DEF_COMPLEXR_COMP (<, <)
^
C:\Octave\Octave-4.2.0-rc2\include\octave-4.2.0-rc2\octave\../octave/oct-cmplx.h: In function 'bool operator<(T, const std::complex<_Tp>&)':
C:\Octave\Octave-4.2.0-rc2\include\octave-4.2.0-rc2\octave\../octave/oct-cmplx.h:92:36: error: 'M_PI' was not declared in this scope
         if (by == static_cast<T> (-M_PI))
                                    ^
C:\Octave\Octave-4.2.0-rc2\include\octave-4.2.0-rc2\octave\../octave/oct-cmplx.h:101:1: note: in expansion of macro 'DEF_COMPLEXR_COMP'
DEF_COMPLEXR_COMP (<, <)
^
C:\Octave\Octave-4.2.0-rc2\include\octave-4.2.0-rc2\octave\../octave/oct-cmplx.h: In function 'bool operator<=(const std::complex<_Tp>&, const std::complex<_
Tp>&)':
C:\Octave\Octave-4.2.0-rc2\include\octave-4.2.0-rc2\octave\../octave/oct-cmplx.h:55:36: error: 'M_PI' was not declared in this scope
         if (ay == static_cast<T> (-M_PI))
                                    ^

John Donoghue <lostbard>
Project Member

 

(Note: upload size limit is set to 16384 kB, after insertion of the required escape characters.)

Attach Files:
   
   
Comment:
   

Attached Files

 

Depends on the following items: None found

Items that depend on this one: None found

 

Carbon-Copy List
  • -email is unavailable- added by jwe (Updated the item)
  • -email is unavailable- added by domob (Posted a comment)
  • -email is unavailable- added by nir_krakauer (Posted a comment)
  • -email is unavailable- added by mtmiller (Updated the item)
  • -email is unavailable- added by lostbard (Adding package maintainer)
  • -email is unavailable- added by lostbard (Submitted the item)
  •  

    Do you think this task is very important?
    If so, you can add your encouragement to it.
    This task has 0 encouragements so far.

    Only project members can vote.

     

     

     

    Follow 5 latest changes.

    Date Changed by Updated Field Previous Value => Replaced by
    2017-08-11 jwe Summary[octave forge] level-set fails to install in octave 4.2.0rc2 => [octave forge] (level-set) fails to install in octave 4.2.0rc2
    2017-07-18 lostbard Attached File- => Added 0001-src-Makefile.in-use-CXX-CXX-Bug-49294.patch, #41235
    2016-11-17 mtmiller StatusNone => Patch Submitted
        Release4.2.0-rc2 => 4.2.0
    2016-10-19 lostbard Carbon-Copy- => Added domob

    Back to the top


    Powered by Savane 3.5