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

Re: [Debian-science-sagemath] Sagemath Build-Depends backported - unfortunately build error (Was: Help needed to backport ipywidgets ... (Was: Backporting sagemath))



On Wed, Apr 12, 2017 at 10:57:58AM +0100, Tobias Hansen wrote:
> As the error message says, with gcc 4.9 one needs to use the flag
> -std=c++11 to have support for this. I added that flag in the git branch
> debian/jessie-backports-c++11, please try. Here with gcc 6.3 this breaks
> the pruner check for lcalc, but maybe it's fine with gcc 4.9. If that
> does not work we can probably get it to work by applying -std=c++11 more
> carefully.

pdebuild says:

...
checking fplll/fplll.h usability... yes
checking fplll/fplll.h presence... no
configure: WARNING: fplll/fplll.h: accepted by the compiler, rejected by the preprocessor!
configure: WARNING: fplll/fplll.h: proceeding with the compiler's result
checking for fplll/fplll.h... yes
...


debian/pruner/config.log says


...
configure:4739: checking fplll/fplll.h usability
configure:4739: g++ -c -g -O2 -fstack-protector-strong -Wformat -Werror=format-security -std=c++11 -D_FORTIFY_SOURCE=2 conftest.cpp >&5
configure:4739: $? = 0
configure:4739: result: yes
configure:4739: checking fplll/fplll.h presence
configure:4739: g++ -E -D_FORTIFY_SOURCE=2 conftest.cpp
In file included from conftest.cpp:19:0:
/usr/include/fplll/fplll.h:22:2: error: #error fplll needs at least a C++11 compliant compiler
 #error fplll needs at least a C++11 compliant compiler
  ^
In file included from /usr/include/c++/4.9/array:35:0,
                 from /usr/include/fplll/enum/enumerate.h:21,
                 from /usr/include/fplll/bkz.h:23,
                 from /usr/include/fplll/fplll.h:28,
                 from conftest.cpp:19:
/usr/include/c++/4.9/bits/c++0x_warning.h:32:2: error: #error This file requires compiler and library support for the ISO C++ 2011 standard. This support is currently experimental, and must be enabled with the -std=c++11 or -std=gnu++11 compiler options.
 #error This file requires compiler and library support for the \
  ^
configure:4739: $? = 1
configure: failed program was:
| /* confdefs.h */
...


Seems the change in d/rules is not sufficient.

I've pushed the changes I needed to do for jessie-backports to branch
debian/jessie-backports which I consider the default branch for
backports.  Could we agree upon this branch for changes?


Kind regards

        Andreas.

> Best,
> Tobias
> 
> On 04/12/2017 10:15 AM, Andreas Tille wrote:
> > Hi Tobias,
> > 
> > On Wed, Apr 12, 2017 at 08:59:06AM +0100, Tobias Hansen wrote:
> >>> This check does not find the header for some reason:
> >>>
> >>> checking fplll/fplll.h usability... no
> >>> checking fplll/fplll.h presence... no
> >>> checking for fplll/fplll.h... no
> >>>
> >>> However the file exists in the backported libfplll-dev package. Not sure
> >>> yet what's the problem.
> >>
> >> You should be able to see what's happening in debian/pruner/config.log.
> > 
> > This log says:
> > 
> > In file included from conftest.cpp:52:0:
> > /usr/include/fplll/fplll.h:22:2: error: #error fplll needs at least a C++11 compliant compiler
> >  #error fplll needs at least a C++11 compliant compiler
> >   ^
> > In file included from /usr/include/c++/4.9/array:35:0,
> >                  from /usr/include/fplll/enum/enumerate.h:21,
> >                  from /usr/include/fplll/bkz.h:23,
> >                  from /usr/include/fplll/fplll.h:28,
> >                  from conftest.cpp:52:
> > /usr/include/c++/4.9/bits/c++0x_warning.h:32:2: error: #error This file requires compiler and library support for the ISO C++ 2011 standard. This support is currently experimental, and must be enabled with the -std=c++11 or -std=gnu++11 compiler options.
> >  #error This file requires compiler and library support for the \
> >   ^
> > In file included from /usr/include/fplll/nr/nr.h:17:0,
> >                  from /usr/include/fplll/nr/numvect.h:19,
> >                  from /usr/include/fplll/nr/matrix.h:21,
> >                  from /usr/include/fplll/util.h:23,
> >                  from /usr/include/fplll/fplll.h:25,
> >                  from conftest.cpp:52:
> > /usr/include/fplll/nr/nr_FP.inl:326:35: error: expected unqualified-id before '&&' token
> >  template <class F> inline FP_NR<F>&& operator+(FP_NR<F> &&a, const FP_NR<F> &b)
> >                                    ^
> > /usr/include/fplll/nr/nr_FP.inl:413:35: error: expected unqualified-id before '&&' token
> >  template <class F> inline FP_NR<F>&& operator*(FP_NR<F> &&a, const FP_NR<F> &b) {
> >                                    ^
> > ...
> > 
> > 
> > Do I need to backport even a compiler since the issue seems to be
> > triggered by[1]
> > 
> > ...
> >  #if __cplusplus < 201103L
> >  #error fplll needs at least a C++11 compliant compiler
> >  #endif
> > ...
> > 
> > 
> > Any ideas?
> > 
> > Kind regards
> > 
> >        Andreas.
> > 
> > [1] https://fplll.github.io/fplll/fplll_8h_source.html
> > 
> > 
> 
> 

-- 
http://fam-tille.de


Reply to: