After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 784453 - openexr: does not compile with gcc 7.X
openexr: does not compile with gcc 7.X
Status: RESOLVED NOTGNOME
Product: GStreamer
Classification: Platform
Component: gst-plugins-bad
git master
Other Linux
: Normal normal
: git master
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2017-07-02 18:39 UTC by Stefan Sauer (gstreamer, gtkdoc dev)
Modified: 2017-07-03 05:57 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Stefan Sauer (gstreamer, gtkdoc dev) 2017-07-02 18:39:18 UTC
Also on debian (https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=853589)

Below what happens on opensuse tumbleweed:
gcc --version
gcc (SUSE Linux) 7.1.1 20170530 [gcc-7-branch revision 248621]

Information for package openexr:
--------------------------------
Repository     : openSUSE:Factory                                    
Name           : openexr                                             
Version        : 2.2.0-1.9                                           
Arch           : x86_64                                              
Vendor         : openSUSE                                            
Installed Size : 1.4 MiB                                             
Installed      : Yes                                                 
Status         : up-to-date                                          
Source package : openexr-2.2.0-1.9.src                               


make[3]: Verzeichnis „/home/ensonic/projects/gstreamer/gst-plugins-bad/ext/openexr“ wird betreten
  CXX      libgstopenexr_la-gstopenexrdec.lo
In file included from /usr/include/OpenEXR/ImfHeader.h:51:0,
                 from /usr/include/OpenEXR/ImfRgbaFile.h:50,
                 from gstopenexrdec.cpp:30:
/usr/include/OpenEXR/ImathVec.h:228:34: error: dynamic exception specifications are deprecated in C++11 [-Werror=deprecated]
     const Vec2 & normalizeExc () throw (IEX_NAMESPACE::MathExc);
                                  ^~~~~
/usr/include/OpenEXR/ImathVec.h:232:37: error: dynamic exception specifications are deprecated in C++11 [-Werror=deprecated]
     Vec2<T>  normalizedExc () const throw (IEX_NAMESPACE::MathExc);
                                     ^~~~~
/usr/include/OpenEXR/ImathVec.h:440:34: error: dynamic exception specifications are deprecated in C++11 [-Werror=deprecated]
     const Vec3 & normalizeExc () throw (IEX_NAMESPACE::MathExc);
                                  ^~~~~
/usr/include/OpenEXR/ImathVec.h:444:37: error: dynamic exception specifications are deprecated in C++11 [-Werror=deprecated]
     Vec3<T>  normalizedExc () const throw (IEX_NAMESPACE::MathExc);
                                     ^~~~~
/usr/include/OpenEXR/ImathVec.h:622:37: error: dynamic exception specifications are deprecated in C++11 [-Werror=deprecated]
     const Vec4 &    normalizeExc () throw (IEX_NAMESPACE::MathExc);
                                     ^~~~~
/usr/include/OpenEXR/ImathVec.h:626:44: error: dynamic exception specifications are deprecated in C++11 [-Werror=deprecated]
     Vec4<T>         normalizedExc () const throw (IEX_NAMESPACE::MathExc);
                                            ^~~~~
/usr/include/OpenEXR/ImathVec.h:714:30: error: dynamic exception specifications are deprecated in C++11 [-Werror=deprecated]
 Vec2<short>::normalizeExc () throw (IEX_NAMESPACE::MathExc);
                              ^~~~~
/usr/include/OpenEXR/ImathVec.h:723:37: error: dynamic exception specifications are deprecated in C++11 [-Werror=deprecated]
 Vec2<short>::normalizedExc () const throw (IEX_NAMESPACE::MathExc);
                                     ^~~~~
/usr/include/OpenEXR/ImathVec.h:738:28: error: dynamic exception specifications are deprecated in C++11 [-Werror=deprecated]
 Vec2<int>::normalizeExc () throw (IEX_NAMESPACE::MathExc);
                            ^~~~~
/usr/include/OpenEXR/ImathVec.h:747:35: error: dynamic exception specifications are deprecated in C++11 [-Werror=deprecated]
 Vec2<int>::normalizedExc () const throw (IEX_NAMESPACE::MathExc);
                                   ^~~~~
/usr/include/OpenEXR/ImathVec.h:762:30: error: dynamic exception specifications are deprecated in C++11 [-Werror=deprecated]
 Vec3<short>::normalizeExc () throw (IEX_NAMESPACE::MathExc);
                              ^~~~~
/usr/include/OpenEXR/ImathVec.h:771:37: error: dynamic exception specifications are deprecated in C++11 [-Werror=deprecated]
 Vec3<short>::normalizedExc () const throw (IEX_NAMESPACE::MathExc);
                                     ^~~~~
/usr/include/OpenEXR/ImathVec.h:786:28: error: dynamic exception specifications are deprecated in C++11 [-Werror=deprecated]
 Vec3<int>::normalizeExc () throw (IEX_NAMESPACE::MathExc);
                            ^~~~~
/usr/include/OpenEXR/ImathVec.h:795:35: error: dynamic exception specifications are deprecated in C++11 [-Werror=deprecated]
 Vec3<int>::normalizedExc () const throw (IEX_NAMESPACE::MathExc);
                                   ^~~~~
/usr/include/OpenEXR/ImathVec.h:809:30: error: dynamic exception specifications are deprecated in C++11 [-Werror=deprecated]
 Vec4<short>::normalizeExc () throw (IEX_NAMESPACE::MathExc);
                              ^~~~~
/usr/include/OpenEXR/ImathVec.h:818:37: error: dynamic exception specifications are deprecated in C++11 [-Werror=deprecated]
 Vec4<short>::normalizedExc () const throw (IEX_NAMESPACE::MathExc);
                                     ^~~~~
/usr/include/OpenEXR/ImathVec.h:833:28: error: dynamic exception specifications are deprecated in C++11 [-Werror=deprecated]
 Vec4<int>::normalizeExc () throw (IEX_NAMESPACE::MathExc);
                            ^~~~~
/usr/include/OpenEXR/ImathVec.h:842:35: error: dynamic exception specifications are deprecated in C++11 [-Werror=deprecated]
 Vec4<int>::normalizedExc () const throw (IEX_NAMESPACE::MathExc);
                                   ^~~~~
/usr/include/OpenEXR/ImathVec.h:1212:26: error: dynamic exception specifications are deprecated in C++11 [-Werror=deprecated]
 Vec2<T>::normalizeExc () throw (IEX_NAMESPACE::MathExc)
                          ^~~~~
/usr/include/OpenEXR/ImathVec.h:1249:33: error: dynamic exception specifications are deprecated in C++11 [-Werror=deprecated]
 Vec2<T>::normalizedExc () const throw (IEX_NAMESPACE::MathExc)
                                 ^~~~~
/usr/include/OpenEXR/ImathVec.h:1704:26: error: dynamic exception specifications are deprecated in C++11 [-Werror=deprecated]
 Vec3<T>::normalizeExc () throw (IEX_NAMESPACE::MathExc)
                          ^~~~~
/usr/include/OpenEXR/ImathVec.h:1743:33: error: dynamic exception specifications are deprecated in C++11 [-Werror=deprecated]
 Vec3<T>::normalizedExc () const throw (IEX_NAMESPACE::MathExc)
                                 ^~~~~
/usr/include/OpenEXR/ImathVec.h:2109:26: error: dynamic exception specifications are deprecated in C++11 [-Werror=deprecated]
 Vec4<T>::normalizeExc () throw (IEX_NAMESPACE::MathExc)
                          ^~~~~
/usr/include/OpenEXR/ImathVec.h:2150:33: error: dynamic exception specifications are deprecated in C++11 [-Werror=deprecated]
 Vec4<T>::normalizedExc () const throw (IEX_NAMESPACE::MathExc)
                                 ^~~~~
cc1plus: all warnings being treated as errors
Comment 1 Stefan Sauer (gstreamer, gtkdoc dev) 2017-07-02 18:41:43 UTC
Workaround: 
make CXXFLAGS=-Wno-error
Comment 2 Sebastian Dröge (slomo) 2017-07-03 05:57:03 UTC
This is a bug in the OpenEXR headers, not on our side.