octave-bug-tracker
[Top][All Lists]
Advanced

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

[Octave-bug-tracker] [bug #65696] (sparsersb) does not handle C++17 prop


From: Dmitri A. Sergatskov
Subject: [Octave-bug-tracker] [bug #65696] (sparsersb) does not handle C++17 properly
Date: Mon, 6 May 2024 09:35:53 -0400 (EDT)

URL:
  <https://savannah.gnu.org/bugs/?65696>

                 Summary: (sparsersb) does not handle C++17 properly
                   Group: GNU Octave
               Submitter: dasergatskov
               Submitted: Mon 06 May 2024 01:35:53 PM UTC
                Category: Octave Package
                Severity: 3 - Normal
                Priority: 5 - Normal
              Item Group: None
                  Status: None
             Assigned to: None
         Originator Name: 
        Originator Email: 
             Open/Closed: Open
                 Release: stable
         Discussion Lock: Any
        Operating System: GNU/Linux
           Fixed Release: None
         Planned Release: None


    _______________________________________________________

Follow-up Comments:


-------------------------------------------------------
Date: Mon 06 May 2024 01:35:53 PM UTC By: Dmitri A. Sergatskov <dasergatskov>
When building sparsersb with C++17 (and pmr) I see:


octave:1> pkg install -forge -verbose sparsersb
downloading tarball(s) from:
- https://packages.octave.org/download/sparsersb-1.0.9.tar.gz
mkdir (/tmp/oct-HU0kRV)
untar (/tmp/sparsersb-1.0.9-mBoo6t.tar.gz, /tmp/oct-HU0kRV)
checking whether the C++ compiler works... yes
checking for C++ compiler default output file name... a.out
checking for suffix of executables... 
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether the compiler supports GNU C++... yes
checking whether g++ -std=gnu++17 accepts -g... yes
checking for g++ -std=gnu++17 option to enable C++11 features... none needed
checking for octave... /usr/local/bin/octave-9.1.91
checking for mkoctfile... /usr/local/bin/mkoctfile-9.1.91 --verbose
configure: No user-set LIBRSB_TARBALL environment variable detected (set it to
build using a custom librsb tarball).
configure: No librsb tarball provided: following the default procedure.
checking for librsb-config... yes
configure: Setting SPARSERSB_CXXFLAGS from librsb-config --I_opts...
configure: Adding -D RSBOI_DETECTED_LONG_IDX to SPARSERSB_CXXFLAGS ...
configure: Setting SPARSERSB_LDFLAGS from --L_opts --libs
configure: SPARSERSB_CXXFLAGS is -I/usr/local/include/ -D
RSBOI_DETECTED_LONG_IDX=1
configure: SPARSERSB_LDFLAGS  is -L/usr/local/lib -lrsb
checking for octave_value function iscomplex... yes
configure: creating ./config.status
config.status: creating Makeconf
configure:

octave sparsersb package is configured with:
  SPARSERSB_LDFLAGS:     -L/usr/local/lib -lrsb
  SPARSERSB_CXXFLAGS:    -I/usr/local/include/ -D RSBOI_DETECTED_LONG_IDX=1
  SPARSERSB_CXX11:       -std=gnu++11
  OCTAVE:                /usr/local/bin/octave-9.1.91
  MKOCTFILE:             /usr/local/bin/mkoctfile-9.1.91 --verbose -g


Note "SPARSERSB_CXX11:       -std=gnu++11"

That fails later on:

make: Entering directory '/tmp/oct-HU0kRV/sparsersb-1.0.9/src'
LFLAGS=" -L/usr/local/lib -shared -Wl,-Bsymbolic -L/usr/local/lib -lrsb"
LDFLAGS=" -L/usr/local/lib -shared -Wl,-Bsymbolic -L/usr/local/lib -lrsb"
CXXFLAGS="-I/usr/local/include/ -D RSBOI_DETECTED_LONG_IDX=1
-DHAVE_OCTAVE_VALUE_ISCOMPLEX -std=gnu++11" /usr/local/bin/mkoctfile-9.1.91
--verbose -g -v -D'RSB_SPARSERSB_LABEL=sparsersb' -o sparsersb.oct
sparsersb.cc
g++ -std=gnu++17 -c  -fPIC -I/usr/local/include/octave-9.1.91/octave/..
-I/usr/local/include/octave-9.1.91/octave -I/usr/local/include  -pthread
-fopenmp -I/usr/local/include/ -D RSBOI_DETECTED_LONG_IDX=1
-DHAVE_OCTAVE_VALUE_ISCOMPLEX -std=gnu++11 -g   
-DRSB_SPARSERSB_LABEL=sparsersb sparsersb.cc -o /tmp/oct-kxDyIR.o
In file included from
/usr/local/include/octave-9.1.91/octave/../octave/Array.h:38,
                 from
/usr/local/include/octave-9.1.91/octave/../octave/Array-util.h:31,
                 from
/usr/local/include/octave-9.1.91/octave/../octave/MSparse.h:31,
                 from
/usr/local/include/octave-9.1.91/octave/../octave/MatrixType.h:33,
                 from
/usr/local/include/octave-9.1.91/octave/../octave/mx-base.h:33,
                 from
/usr/local/include/octave-9.1.91/octave/../octave/Matrix.h:34,
                 from
/usr/local/include/octave-9.1.91/octave/../octave/oct.h:33,
                 from sparsersb.cc:71:
/usr/local/include/octave-9.1.91/octave/../octave/Array-fwd.h:34:45: error:
‘pmr’ in namespace ‘std’ does not name a type
   34 | template <typename T, typename Alloc =
std::pmr::polymorphic_allocator<T>>
      |                                             ^~~


Dmitri.
-- 








    _______________________________________________________

Reply to this item at:

  <https://savannah.gnu.org/bugs/?65696>

_______________________________________________
Message sent via Savannah
https://savannah.gnu.org/




reply via email to

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