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

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

[Octave-bug-tracker] [bug #54124] Build fails against Qt 5.11.0 with "in


From: Andrew Janke
Subject: [Octave-bug-tracker] [bug #54124] Build fails against Qt 5.11.0 with "incomplete type 'QButtonGroup'" error
Date: Sat, 16 Jun 2018 07:59:47 -0400 (EDT)
User-agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/67.0.3396.87 Safari/537.36

URL:
  <http://savannah.gnu.org/bugs/?54124>

                 Summary: Build fails against Qt 5.11.0 with "incomplete type
'QButtonGroup'" error
                 Project: GNU Octave
            Submitted by: andrewjanke
            Submitted on: Sat 16 Jun 2018 11:59:45 AM UTC
                Category: Configuration and Build System
                Severity: 3 - Normal
                Priority: 5 - Normal
              Item Group: Build Failure
                  Status: None
             Assigned to: None
         Originator Name: Andrew Janke
        Originator Email: 
             Open/Closed: Open
         Discussion Lock: Any
                 Release: 4.4.0
        Operating System: Mac OS

    _______________________________________________________

Details:

When attempting to build Octave 4.4.0 on macOS against Qt 5.11.0, the build is
erroring out with a complaint about "error: allocation of incomplete type
'QButtonGroup'".


libtool: compile:  clang++ -std=gnu++11 -DHAVE_CONFIG_H -I.
-I/usr/local/opt/freetype/include/freetype2
-I/usr/local/opt/freetype/include/freetype2
-I/usr/local/Cellar/fontconfig/2.13.0/include
-I/usr/local/Cellar/qt/5.11.0/include/QtNetwork
-I/usr/local/Cellar/qt/5.11.0/include
-I/usr/local/Cellar/qt/5.11.0/include/QtOpenGL
-I/usr/local/Cellar/qt/5.11.0/include
-I/usr/local/Cellar/qt/5.11.0/include/QtPrintSupport
-I/usr/local/Cellar/qt/5.11.0/include
-I/usr/local/Cellar/qt/5.11.0/include/QtHelp
-I/usr/local/Cellar/qt/5.11.0/include
-I/usr/local/Cellar/qt/5.11.0/include/QtWidgets
-I/usr/local/Cellar/qt/5.11.0/include
-I/usr/local/Cellar/qt/5.11.0/include/QtGui
-I/usr/local/Cellar/qt/5.11.0/include
-I/usr/local/Cellar/qt/5.11.0/include/QtSql
-I/usr/local/Cellar/qt/5.11.0/include
-I/usr/local/Cellar/qt/5.11.0/include/QtCore
-I/usr/local/Cellar/qt/5.11.0/include -I./libgui/qterminal/libqterminal
-Ilibgui/src -I./libgui/src -I./libgui/src/m-editor -I./libgui/src/qtinfo
-I./libgui/graphics -I./liboctave/array -Iliboctave/numeric
-I./liboctave/numeric -Iliboctave/operators -I./liboctave/operators
-I./liboctave/system -I./liboctave/util -Ilibinterp -I./libinterp
-Ilibinterp/parse-tree -I./libinterp/parse-tree -Ilibinterp/corefcn
-I./libinterp/corefcn -I./libinterp/octave-value -I./liboctave/wrappers -fPIC
-D_THREAD_SAFE -pthread -Wall -W -Wshadow -Wold-style-cast -Wformat
-Wpointer-arith -Wwrite-strings -Wcast-align -Wcast-qual
-I/Library/Java/JavaVirtualMachines/jdk-10.0.1.jdk/Contents/Home/include
-I/Library/Java/JavaVirtualMachines/jdk-10.0.1.jdk/Contents/Home/include/darwin
-c libgui/src/settings-dialog.cc  -fno-common -DPIC -o
libgui/src/.libs/libgui_src_libgui_src_la-settings-dialog.o
libgui/src/settings-dialog.cc:302:39: error: allocation of incomplete type
'QButtonGroup'
  QButtonGroup *icon_size_group = new QButtonGroup (this);
                                      ^~~~~~~~~~~~
/usr/local/Cellar/qt/5.11.0/include/QtWidgets/qabstractbutton.h:53:7: note:
forward declaration of 'QButtonGroup'
class QButtonGroup;
      ^
libgui/src/settings-dialog.cc:303:18: error: member access into incomplete
type 'QButtonGroup'
  icon_size_group->addButton (ui->icon_size_small);
                 ^
/usr/local/Cellar/qt/5.11.0/include/QtWidgets/qabstractbutton.h:53:7: note:
forward declaration of 'QButtonGroup'
class QButtonGroup;
      ^
libgui/src/settings-dialog.cc:304:18: error: member access into incomplete
type 'QButtonGroup'
  icon_size_group->addButton (ui->icon_size_normal);
                 ^
/usr/local/Cellar/qt/5.11.0/include/QtWidgets/qabstractbutton.h:53:7: note:
forward declaration of 'QButtonGroup'
class QButtonGroup;
      ^
libgui/src/settings-dialog.cc:305:18: error: member access into incomplete
type 'QButtonGroup'
  icon_size_group->addButton (ui->icon_size_large);
                 ^
/usr/local/Cellar/qt/5.11.0/include/QtWidgets/qabstractbutton.h:53:7: note:
forward declaration of 'QButtonGroup'
class QButtonGroup;
      ^
libgui/src/settings-dialog.cc:312:34: error: allocation of incomplete type
'QButtonGroup'
  QButtonGroup *icon_group = new QButtonGroup (this);
                                 ^~~~~~~~~~~~
/usr/local/Cellar/qt/5.11.0/include/QtWidgets/qabstractbutton.h:53:7: note:
forward declaration of 'QButtonGroup'
class QButtonGroup;
      ^
libgui/src/settings-dialog.cc:313:13: error: member access into incomplete
type 'QButtonGroup'
  icon_group->addButton (ui->general_icon_octave);
            ^
/usr/local/Cellar/qt/5.11.0/include/QtWidgets/qabstractbutton.h:53:7: note:
forward declaration of 'QButtonGroup'
class QButtonGroup;
      ^
libgui/src/settings-dialog.cc:314:13: error: member access into incomplete
type 'QButtonGroup'
  icon_group->addButton (ui->general_icon_graphic);
            ^
/usr/local/Cellar/qt/5.11.0/include/QtWidgets/qabstractbutton.h:53:7: note:
forward declaration of 'QButtonGroup'
class QButtonGroup;
      ^
libgui/src/settings-dialog.cc:315:13: error: member access into incomplete
type 'QButtonGroup'
  icon_group->addButton (ui->general_icon_letter);
            ^
/usr/local/Cellar/qt/5.11.0/include/QtWidgets/qabstractbutton.h:53:7: note:
forward declaration of 'QButtonGroup'
class QButtonGroup;
      ^
8 errors generated.
make[2]: *** [libgui/src/libgui_src_libgui_src_la-settings-dialog.lo] Error 1
make[1]: *** [all-recursive] Error 1
make: *** [all] Error 2


I suspect this is because Qt 5.11.0 rearranged some of their internal
includes, so a previously indirectly-included <QButtonGroup> is no longer
being picked up. I think it could be fixed by adding an explicit "#include
<QButtonGroup>" to libgui/src/settings-dialog.h.


diff --git a/libgui/src/settings-dialog.h b/libgui/src/settings-dialog.h
index b66f5b0..61d5a1c 100644
--- a/libgui/src/settings-dialog.h
+++ b/libgui/src/settings-dialog.h
@@ -23,6 +23,7 @@ along with Octave; see the file COPYING.  If not, see
 #if ! defined (octave_settings_dialog_h)
 #define octave_settings_dialog_h 1

+#include <QButtonGroup>
 #include <QDialog>
 #include <QSettings>
 #include <QLineEdit>





    _______________________________________________________

Reply to this item at:

  <http://savannah.gnu.org/bugs/?54124>

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




reply via email to

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