Skip to content
This repository has been archived by the owner on Oct 12, 2021. It is now read-only.

qmake point to qmake-qt5 on some linux distributions #5

Closed
ColinDuquesnoy opened this issue Oct 28, 2014 · 13 comments
Closed

qmake point to qmake-qt5 on some linux distributions #5

ColinDuquesnoy opened this issue Oct 28, 2014 · 13 comments

Comments

@ColinDuquesnoy
Copy link

Hello,

Today I've tried to build pygs on another arch linux pc (but with gnome instead of KDE4). The issue on that system is that Qt5 is the default Qt framework and qmake actually points to qmake-qt5 instead of qmake-qt4.

I've managed to build pygs by replacing qmake by qmake-qt4 in setup.py and configure.py but that is not a proper fix.

Maybe we should add a QMAKE_EXECUTABLE environement var? (similar to what I did with QT_API)?

@Asvel
Copy link
Owner

Asvel commented Oct 30, 2014

Is this working in this case?
(Sorry, I'm not familiar with Arch Linux.)

@ColinDuquesnoy
Copy link
Author

Yep that works fine:

[colin@arch pygs-master]$ export QT_API=pyqt4
[colin@arch pygs-master]$ export QT_SELECT=4
[colin@arch pygs-master]$ python setup.py build
running build
running build_clib
building 'QxtGlobalShortcut' library
g++ -c -pipe -march=x86-64 -mtune=generic -O2 -pipe -fstack-protector --param=ssp-buffer-size=4 -fPIC -D_REENTRANT -Wall -W -DBUILD_QXT_CORE -DBUILD_QXT_GUI -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_CORE_LIB -DQT_SHARED -I/usr/share/qt4/mkspecs/linux-g++ -I../../lib -I/usr/include/qt4/QtCore -I/usr/include/qt4/QtGui -I/usr/include/qt4 -I../../libqxt/src/core -I../../libqxt/src/widgets -I. -I../../lib -I. -o qxtglobal.o ../../libqxt/src/core/qxtglobal.cpp
g++ -c -pipe -march=x86-64 -mtune=generic -O2 -pipe -fstack-protector --param=ssp-buffer-size=4 -fPIC -D_REENTRANT -Wall -W -DBUILD_QXT_CORE -DBUILD_QXT_GUI -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_CORE_LIB -DQT_SHARED -I/usr/share/qt4/mkspecs/linux-g++ -I../../lib -I/usr/include/qt4/QtCore -I/usr/include/qt4/QtGui -I/usr/include/qt4 -I../../libqxt/src/core -I../../libqxt/src/widgets -I. -I../../lib -I. -o qxtglobalshortcut.o ../../libqxt/src/widgets/qxtglobalshortcut.cpp
g++ -c -pipe -march=x86-64 -mtune=generic -O2 -pipe -fstack-protector --param=ssp-buffer-size=4 -fPIC -D_REENTRANT -Wall -W -DBUILD_QXT_CORE -DBUILD_QXT_GUI -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_CORE_LIB -DQT_SHARED -I/usr/share/qt4/mkspecs/linux-g++ -I../../lib -I/usr/include/qt4/QtCore -I/usr/include/qt4/QtGui -I/usr/include/qt4 -I../../libqxt/src/core -I../../libqxt/src/widgets -I. -I../../lib -I. -o qxtglobalshortcut_x11.o ../../libqxt/src/widgets/x11/qxtglobalshortcut_x11.cpp
/usr/lib/qt4/bin/moc -DBUILD_QXT_CORE -DBUILD_QXT_GUI -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_CORE_LIB -DQT_SHARED -I/usr/share/qt4/mkspecs/linux-g++ -I../../lib -I/usr/include/qt4/QtCore -I/usr/include/qt4/QtGui -I/usr/include/qt4 -I../../libqxt/src/core -I../../libqxt/src/widgets -I. -I../../lib -I. ../../libqxt/src/widgets/qxtglobalshortcut.h -o moc_qxtglobalshortcut.cpp
g++ -c -pipe -march=x86-64 -mtune=generic -O2 -pipe -fstack-protector --param=ssp-buffer-size=4 -fPIC -D_REENTRANT -Wall -W -DBUILD_QXT_CORE -DBUILD_QXT_GUI -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_CORE_LIB -DQT_SHARED -I/usr/share/qt4/mkspecs/linux-g++ -I../../lib -I/usr/include/qt4/QtCore -I/usr/include/qt4/QtGui -I/usr/include/qt4 -I../../libqxt/src/core -I../../libqxt/src/widgets -I. -I../../lib -I. -o moc_qxtglobalshortcut.o moc_qxtglobalshortcut.cpp
rm -f libQxtGlobalShortcut.a
ar cqs libQxtGlobalShortcut.a qxtglobal.o qxtglobalshortcut.o qxtglobalshortcut_x11.o moc_qxtglobalshortcut.o
running build_ext
building 'pygs' extension
building for PyQt4
g++ -c -pipe -fPIC -O2 -Wall -W -D_REENTRANT -DNDEBUG -DQT_NO_DEBUG -DQT_CORE_LIB -DQT_GUI_LIB -I. -I/home/colin/Downloads/pygs-master/pygs/../libqxt/src/core -I/home/colin/Downloads/pygs-master/pygs/../libqxt/src/widgets -I/usr/include/python3.4m -I/usr/share/qt4/mkspecs/default -I/usr/include/qt4/QtCore -I/usr/include/qt4/QtGui -I/usr/include/qt4 -I/usr/X11R6/include -o sippygscmodule.o sippygscmodule.cpp
g++ -c -pipe -fPIC -O2 -Wall -W -D_REENTRANT -DNDEBUG -DQT_NO_DEBUG -DQT_CORE_LIB -DQT_GUI_LIB -I. -I/home/colin/Downloads/pygs-master/pygs/../libqxt/src/core -I/home/colin/Downloads/pygs-master/pygs/../libqxt/src/widgets -I/usr/include/python3.4m -I/usr/share/qt4/mkspecs/default -I/usr/include/qt4/QtCore -I/usr/include/qt4/QtGui -I/usr/include/qt4 -I/usr/X11R6/include -o sippygsQxtGlobalShortcut.o sippygsQxtGlobalShortcut.cpp
g++ -Wl,-O1,--sort-common,--as-needed,-z,relro -shared -Wl,-rpath,/home/colin/Downloads/pygs-master/build/temp.linux-x86_64-3.4 -Wl,-rpath,/usr/lib -Wl,--version-script=pygs.exp -o pygs.so sippygscmodule.o sippygsQxtGlobalShortcut.o -L/home/colin/Downloads/pygs-master/build/temp.linux-x86_64-3.4 -L/usr/lib -L/usr/X11R6/lib -lQxtGlobalShortcut -lQtCore -lQtGui -lXext -lX11 -lm -lpthread
colin@arch pygs-master]$ 

PS: I am looking into packaging pygs for the AUR. I can either keep the PKGBUIL in a personal respository or submit it here as pull request when it is ready. What would you prefer?

@ColinDuquesnoy
Copy link
Author

Reopening because it actually does not work for PyQt5:

[colin@laptop-arch pygs]$ ls
examples/  lib/  libqxt/  pygs/  test/  LICENSE.txt  MANIFEST.in  pytest.ini  README.rst  setup.py  tox.ini
[colin@laptop-arch pygs]$ export QT_SELECT=5
[colin@laptop-arch pygs]$ qmake --version
QMake version 3.0
Using Qt version 5.3.2 in /usr/lib
[colin@laptop-arch pygs]$ python setup.py build
running build
running build_clib
building 'QxtGlobalShortcut' library
g++ -c -pipe -march=x86-64 -mtune=generic -O2 -pipe -fstack-protector-strong --param=ssp-buffer-size=4 -fPIC -D_REENTRANT -Wall -W -DBUILD_QXT_CORE -DBUILD_QXT_GUI -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_CORE_LIB -I/usr/lib/qt/mkspecs/linux-g++ -I../../lib -I../../libqxt/src/core -I../../libqxt/src/widgets -isystem /usr/include/qt -isystem /usr/include/qt/QtGui -isystem /usr/include/qt/QtCore -I. -I. -o qxtglobal.o ../../libqxt/src/core/qxtglobal.cpp
g++ -c -pipe -march=x86-64 -mtune=generic -O2 -pipe -fstack-protector-strong --param=ssp-buffer-size=4 -fPIC -D_REENTRANT -Wall -W -DBUILD_QXT_CORE -DBUILD_QXT_GUI -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_CORE_LIB -I/usr/lib/qt/mkspecs/linux-g++ -I../../lib -I../../libqxt/src/core -I../../libqxt/src/widgets -isystem /usr/include/qt -isystem /usr/include/qt/QtGui -isystem /usr/include/qt/QtCore -I. -I. -o qxtglobalshortcut.o ../../libqxt/src/widgets/qxtglobalshortcut.cpp
g++ -c -pipe -march=x86-64 -mtune=generic -O2 -pipe -fstack-protector-strong --param=ssp-buffer-size=4 -fPIC -D_REENTRANT -Wall -W -DBUILD_QXT_CORE -DBUILD_QXT_GUI -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_CORE_LIB -I/usr/lib/qt/mkspecs/linux-g++ -I../../lib -I../../libqxt/src/core -I../../libqxt/src/widgets -isystem /usr/include/qt -isystem /usr/include/qt/QtGui -isystem /usr/include/qt/QtCore -I. -I. -o qxtglobalshortcut_x11.o ../../libqxt/src/widgets/x11/qxtglobalshortcut_x11.cpp
../../libqxt/src/widgets/x11/qxtglobalshortcut_x11.cpp:37:27: fatal error: QApplication: No such file or directory
 #   include <QApplication>
                           ^
compilation terminated.
Makefile:380: recipe for target 'qxtglobalshortcut_x11.o' failed
make: *** [qxtglobalshortcut_x11.o] Error 1
Traceback (most recent call last):
  File "setup.py", line 139, in <module>
    'build_ext': build_ext_with_sip,
  File "/usr/lib/python3.4/distutils/core.py", line 148, in setup
    dist.run_commands()
  File "/usr/lib/python3.4/distutils/dist.py", line 955, in run_commands
    self.run_command(cmd)
  File "/usr/lib/python3.4/distutils/dist.py", line 974, in run_command
    cmd_obj.run()
  File "/usr/lib/python3.4/distutils/command/build.py", line 126, in run
    self.run_command(cmd_name)
  File "/usr/lib/python3.4/distutils/cmd.py", line 313, in run_command
    self.distribution.run_command(command)
  File "/usr/lib/python3.4/distutils/dist.py", line 974, in run_command
    cmd_obj.run()
  File "/usr/lib/python3.4/distutils/command/build_clib.py", line 115, in run
    self.build_libraries(self.libraries)
  File "setup.py", line 55, in build_libraries
    check_call([make], cwd=self.build_temp)
  File "setup.py", line 30, in check_call
    subprocess.check_call(command, cwd=cwd)
  File "/usr/lib/python3.4/subprocess.py", line 561, in check_call
    raise CalledProcessError(retcode, cmd)
subprocess.CalledProcessError: Command '['make']' returned non-zero exit status 2
[colin@laptop-arch pygs]$ 

Changing qmake to qmake-qt5 in setu.py/configure.py does not help so this might be another issue...

@ColinDuquesnoy
Copy link
Author

Seems like the issue is with the include path. QApplication is defined in QtWidgets not QtGui. This require some fix in the libqxt .pro file (I've never used qmake and .pro files and I am unsure what needs to be changed exactly).

@Asvel
Copy link
Owner

Asvel commented Oct 31, 2014

I edit the .pro file in an attempt to fix this issue, please test it, thanks.

As to the PKGBUILD file, after some surveys, I still have no idea where is the proper place for it, so please do it at your convenience 😊.

@ColinDuquesnoy
Copy link
Author

Hello. Unfortunately this is not fixed yet. The error is different, now it finds QApplication header but fail to find qpa/qplatformnativeinterface.h. According to the qt5-base package files list (https://www.archlinux.org/packages/extra/x86_64/qt5-base/files/), the qplatfromnativeinterface.h can be found under QtGui/qpa.

Here is the relevant error log:

g++ -c -pipe -march=x86-64 -mtune=generic -O2 -pipe -fstack-protector-strong --param=ssp-buffer-size=4 -fPIC -D_REENTRANT -Wall -W -DBUILD_QXT_CORE -DBUILD_QXT_GUI -DQT_NO_DEBUG -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_CORE_LIB -I/usr/lib/qt/mkspecs/linux-g++ -I../../lib -I../../libqxt/src/core -I../../libqxt/src/widgets -isystem /usr/include/qt -isystem /usr/include/qt/QtWidgets -isystem /usr/include/qt/QtGui -isystem /usr/include/qt/QtCore -I. -I. -o qxtglobal.o ../../libqxt/src/core/qxtglobal.cpp
g++ -c -pipe -march=x86-64 -mtune=generic -O2 -pipe -fstack-protector-strong --param=ssp-buffer-size=4 -fPIC -D_REENTRANT -Wall -W -DBUILD_QXT_CORE -DBUILD_QXT_GUI -DQT_NO_DEBUG -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_CORE_LIB -I/usr/lib/qt/mkspecs/linux-g++ -I../../lib -I../../libqxt/src/core -I../../libqxt/src/widgets -isystem /usr/include/qt -isystem /usr/include/qt/QtWidgets -isystem /usr/include/qt/QtGui -isystem /usr/include/qt/QtCore -I. -I. -o qxtglobalshortcut.o ../../libqxt/src/widgets/qxtglobalshortcut.cpp
g++ -c -pipe -march=x86-64 -mtune=generic -O2 -pipe -fstack-protector-strong --param=ssp-buffer-size=4 -fPIC -D_REENTRANT -Wall -W -DBUILD_QXT_CORE -DBUILD_QXT_GUI -DQT_NO_DEBUG -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_CORE_LIB -I/usr/lib/qt/mkspecs/linux-g++ -I../../lib -I../../libqxt/src/core -I../../libqxt/src/widgets -isystem /usr/include/qt -isystem /usr/include/qt/QtWidgets -isystem /usr/include/qt/QtGui -isystem /usr/include/qt/QtCore -I. -I. -o qxtglobalshortcut_x11.o ../../libqxt/src/widgets/x11/qxtglobalshortcut_x11.cpp
In file included from /usr/include/qt/QtCore/qstringlist.h:46:0,
                 from /usr/include/qt/QtCore/qvariant.h:52,
                 from /usr/include/qt/QtCore/qlocale.h:45,
                 from /usr/include/qt/QtGui/qguiapplication.h:48,
                 from /usr/include/qt/QtWidgets/qapplication.h:56,
                 from /usr/include/qt/QtWidgets/QApplication:1,
                 from ../../libqxt/src/widgets/x11/qxtglobalshortcut_x11.cpp:37:
/usr/include/qt/QtCore/qdatastream.h:50:2: error: #error qdatastream.h must be included before any header file that defines Status
 #error qdatastream.h must be included before any header file that defines Status
  ^
../../libqxt/src/widgets/x11/qxtglobalshortcut_x11.cpp:38:45: fatal error: qpa/qplatformnativeinterface.h: No such file or directory
 #   include <qpa/qplatformnativeinterface.h>
                                             ^
compilation terminated.
Makefile:486: recipe for target 'qxtglobalshortcut_x11.o' failed

Asvel added a commit that referenced this issue Oct 31, 2014
@Asvel
Copy link
Owner

Asvel commented Oct 31, 2014

What about this?

@ColinDuquesnoy
Copy link
Author

Nope 😢

[colin@laptop-arch pygs]$ python setup.py build
running build
running build_clib
building 'QxtGlobalShortcut' library
Project MESSAGE: This project is using private headers and will therefore be tied to this specific Qt module build version.
Project MESSAGE: Running this project against other versions of the Qt modules may crash at any arbitrary point.
Project MESSAGE: This is not a bug, but a result of using Qt internals. You have been warned!
g++ -c -pipe -march=x86-64 -mtune=generic -O2 -pipe -fstack-protector-strong --param=ssp-buffer-size=4 -fPIC -D_REENTRANT -Wall -W -DBUILD_QXT_CORE -DBUILD_QXT_GUI -DQT_NO_DEBUG -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_CORE_LIB -I/usr/lib/qt/mkspecs/linux-g++ -I../../lib -I../../libqxt/src/core -I../../libqxt/src/widgets -isystem /usr/include/qt/QtGui/5.3.2 -isystem /usr/include/qt/QtGui/5.3.2/QtGui -isystem /usr/include/qt -isystem /usr/include/qt/QtWidgets -isystem /usr/include/qt/QtGui -isystem /usr/include/qt/QtCore -I. -I. -o qxtglobal.o ../../libqxt/src/core/qxtglobal.cpp
g++ -c -pipe -march=x86-64 -mtune=generic -O2 -pipe -fstack-protector-strong --param=ssp-buffer-size=4 -fPIC -D_REENTRANT -Wall -W -DBUILD_QXT_CORE -DBUILD_QXT_GUI -DQT_NO_DEBUG -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_CORE_LIB -I/usr/lib/qt/mkspecs/linux-g++ -I../../lib -I../../libqxt/src/core -I../../libqxt/src/widgets -isystem /usr/include/qt/QtGui/5.3.2 -isystem /usr/include/qt/QtGui/5.3.2/QtGui -isystem /usr/include/qt -isystem /usr/include/qt/QtWidgets -isystem /usr/include/qt/QtGui -isystem /usr/include/qt/QtCore -I. -I. -o qxtglobalshortcut.o ../../libqxt/src/widgets/qxtglobalshortcut.cpp
g++ -c -pipe -march=x86-64 -mtune=generic -O2 -pipe -fstack-protector-strong --param=ssp-buffer-size=4 -fPIC -D_REENTRANT -Wall -W -DBUILD_QXT_CORE -DBUILD_QXT_GUI -DQT_NO_DEBUG -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_CORE_LIB -I/usr/lib/qt/mkspecs/linux-g++ -I../../lib -I../../libqxt/src/core -I../../libqxt/src/widgets -isystem /usr/include/qt/QtGui/5.3.2 -isystem /usr/include/qt/QtGui/5.3.2/QtGui -isystem /usr/include/qt -isystem /usr/include/qt/QtWidgets -isystem /usr/include/qt/QtGui -isystem /usr/include/qt/QtCore -I. -I. -o qxtglobalshortcut_x11.o ../../libqxt/src/widgets/x11/qxtglobalshortcut_x11.cpp
In file included from /usr/include/qt/QtCore/qstringlist.h:46:0,
                 from /usr/include/qt/QtCore/qvariant.h:52,
                 from /usr/include/qt/QtCore/qlocale.h:45,
                 from /usr/include/qt/QtGui/qguiapplication.h:48,
                 from /usr/include/qt/QtWidgets/qapplication.h:56,
                 from /usr/include/qt/QtWidgets/QApplication:1,
                 from ../../libqxt/src/widgets/x11/qxtglobalshortcut_x11.cpp:37:
/usr/include/qt/QtCore/qdatastream.h:50:2: error: #error qdatastream.h must be included before any header file that defines Status
 #error qdatastream.h must be included before any header file that defines Status
  ^
In file included from /usr/include/X11/Xlib.h:44:0,
                 from ../../libqxt/src/widgets/x11/qxtglobalshortcut_x11.cpp:33:
/usr/include/qt/QtCore/qcoreevent.h:66:9: error: expected identifier before numeric constant
         None = 0,                               // invalid event
         ^
/usr/include/qt/QtCore/qcoreevent.h:66:9: error: expected ‘}’ before numeric constant
/usr/include/qt/QtCore/qcoreevent.h:66:9: error: expected unqualified-id before numeric constant
In file included from /usr/include/qt/QtCore/qcoreapplication.h:49:0,
                 from /usr/include/qt/QtWidgets/qapplication.h:45,
                 from /usr/include/qt/QtWidgets/QApplication:1,
                 from ../../libqxt/src/widgets/x11/qxtglobalshortcut_x11.cpp:37:
/usr/include/qt/QtCore/qcoreevent.h:290:26: error: expected ‘)’ before ‘type’
     explicit QEvent(Type type);
                          ^
/usr/include/qt/QtCore/qcoreevent.h:291:12: error: expected unqualified-id before ‘const’
     QEvent(const QEvent &other);
            ^
/usr/include/qt/QtCore/qcoreevent.h:291:12: error: expected ‘)’ before ‘const’
/usr/include/qt/QtCore/qcoreevent.h:292:21: error: declaration of ‘~QEvent’ as non-member
     virtual ~QEvent();
                     ^
/usr/include/qt/QtCore/qcoreevent.h:293:42: error: ‘QEvent& operator=(const QEvent&)’ must be a nonstatic member function
     QEvent &operator=(const QEvent &other);
                                          ^
/usr/include/qt/QtCore/qcoreevent.h:294:12: error: ‘Type’ does not name a type
     inline Type type() const { return static_cast<Type>(t); }
            ^
/usr/include/qt/QtCore/qcoreevent.h:295:31: error: non-member function ‘bool spontaneous()’ cannot have cv-qualifier
     inline bool spontaneous() const { return spont; }
                               ^
/usr/include/qt/QtCore/qcoreevent.h: In function ‘bool spontaneous()’:
/usr/include/qt/QtCore/qcoreevent.h:295:46: error: ‘spont’ was not declared in this scope
     inline bool spontaneous() const { return spont; }
                                              ^
/usr/include/qt/QtCore/qcoreevent.h: In function ‘void setAccepted(bool)’:
/usr/include/qt/QtCore/qcoreevent.h:297:46: error: ‘m_accept’ was not declared in this scope
     inline void setAccepted(bool accepted) { m_accept = accepted; }
                                              ^
/usr/include/qt/QtCore/qcoreevent.h: At global scope:
/usr/include/qt/QtCore/qcoreevent.h:298:30: error: non-member function ‘bool isAccepted()’ cannot have cv-qualifier
     inline bool isAccepted() const { return m_accept; }
                              ^
/usr/include/qt/QtCore/qcoreevent.h: In function ‘bool isAccepted()’:
/usr/include/qt/QtCore/qcoreevent.h:298:45: error: ‘m_accept’ was not declared in this scope
     inline bool isAccepted() const { return m_accept; }
                                             ^
/usr/include/qt/QtCore/qcoreevent.h: In function ‘void accept()’:
/usr/include/qt/QtCore/qcoreevent.h:300:28: error: ‘m_accept’ was not declared in this scope
     inline void accept() { m_accept = true; }
                            ^
/usr/include/qt/QtCore/qcoreevent.h: In function ‘void ignore()’:
/usr/include/qt/QtCore/qcoreevent.h:301:28: error: ‘m_accept’ was not declared in this scope
     inline void ignore() { m_accept = false; }
                            ^
/usr/include/qt/QtCore/qcoreevent.h: At global scope:
/usr/include/qt/QtCore/qcoreevent.h:305:1: error: expected unqualified-id before ‘protected’
 protected:
 ^
/usr/include/qt/QtCore/qcoreevent.h:309:1: error: expected unqualified-id before ‘private’
 private:
 ^
/usr/include/qt/QtCore/qcoreevent.h:311:18: error: expected initializer before ‘:’ token
     ushort spont : 1;
                  ^
/usr/include/qt/QtCore/qcoreevent.h:312:21: error: expected initializer before ‘:’ token
     ushort m_accept : 1;
                     ^
/usr/include/qt/QtCore/qcoreevent.h:313:21: error: expected initializer before ‘:’ token
     ushort reserved : 13;
                     ^
/usr/include/qt/QtCore/qcoreevent.h:315:5: error: ‘friend’ used outside of class
     friend class QCoreApplication;
     ^
/usr/include/qt/QtCore/qcoreevent.h:316:5: error: ‘friend’ used outside of class
     friend class QCoreApplicationPrivate;
     ^
/usr/include/qt/QtCore/qcoreevent.h:317:5: error: ‘friend’ used outside of class
     friend class QThreadData;
     ^
/usr/include/qt/QtCore/qcoreevent.h:318:5: error: ‘friend’ used outside of class
     friend class QApplication;
     ^
/usr/include/qt/QtCore/qcoreevent.h:319:5: error: ‘friend’ used outside of class
     friend class QApplicationPrivate;
     ^
/usr/include/qt/QtCore/qcoreevent.h:320:5: error: ‘friend’ used outside of class
     friend class QShortcutMap;
     ^
/usr/include/qt/QtCore/qcoreevent.h:321:5: error: ‘friend’ used outside of class
     friend class QETWidget;
     ^
/usr/include/qt/QtCore/qcoreevent.h:322:5: error: ‘friend’ used outside of class
     friend class QGraphicsView;
     ^
/usr/include/qt/QtCore/qcoreevent.h:323:5: error: ‘friend’ used outside of class
     friend class QGraphicsViewPrivate;
     ^
/usr/include/qt/QtCore/qcoreevent.h:324:5: error: ‘friend’ used outside of class
     friend class QGraphicsScene;
     ^
/usr/include/qt/QtCore/qcoreevent.h:325:5: error: ‘friend’ used outside of class
     friend class QGraphicsScenePrivate;
     ^
/usr/include/qt/QtCore/qcoreevent.h:326:5: error: ‘friend’ used outside of class
     friend class QWidgetWindow;
     ^
/usr/include/qt/QtCore/qcoreevent.h:328:5: error: ‘friend’ used outside of class
     friend class QGestureManager;
     ^
/usr/include/qt/QtCore/qcoreevent.h:330:1: error: expected declaration before ‘}’ token
 };
 ^
Makefile:486: recipe for target 'qxtglobalshortcut_x11.o' failed

@ColinDuquesnoy
Copy link
Author

If you would like to debug it yourself, you can easily install an archlinux based system using the user friendly derivate: Manjaro Linux (this is actually what I am using)

@Asvel
Copy link
Owner

Asvel commented Oct 31, 2014

Thanks for the advice, please wait for me to download Manjaro Linux and Qt.

@ColinDuquesnoy
Copy link
Author

Take your time ;) I am not in a hurry and I am not really impacted by this bug. I am using pygs for a PyQt4 based could music player application. It is not finished yet and I won't package it before a few days ;)

@Asvel Asvel reopened this Nov 1, 2014
@Asvel Asvel closed this as completed in 3f523e5 Nov 1, 2014
@Asvel
Copy link
Owner

Asvel commented Nov 1, 2014

Is it fixed now? It works under my linux environment.
I suspect it is a compatible issue of libqxt and Qt 5, but libqxt failed to compile due to another known bug, so I couldn't confirm this surmise.

@ColinDuquesnoy
Copy link
Author

Yes it works great! Nice work!

___________________________________ summary ____________________________________
  py27-pyqt4: commands succeeded
  py27-pyqt5: commands succeeded
ERROR:   py32-pyqt4: InterpreterNotFound: python3.2
ERROR:   py32-pyqt5: InterpreterNotFound: python3.2
ERROR:   py33-pyqt4: InterpreterNotFound: python3.3
ERROR:   py33-pyqt5: InterpreterNotFound: python3.3
  py34-pyqt4: commands succeeded
  py34-pyqt5: commands succeeded

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants