Menu

PythonQt requires too much of Qt (i.e. webkit)

gambr
2016-04-02
2016-08-04
  • gambr

    gambr - 2016-04-02

    Dear All,
    I tried to build PythonQt 3.0 but it seems it requires all Qt5 dlls including webkit. Looking at the code there isn't a way to select only some modules of Qt: it simply initalizes ALL!. I have a Qt commercial license and I can say building Qt including webkit (we need to build Qt since there isn't a pre-compiled version available for our compiler) it is quite tricky even with Qt support. So, please make PythonQt reasonably modular to select which Qt module take in account for building PythonQt! I can't believe it is not already like that.

    Cheers,
    Gianni

     
  • Florian Link

    Florian Link - 2016-04-02

    It's all there, you just need to modify PythonQt_All minimally.
    If you want to make this nicer, go for it, it is all open source.

     
    • gambr

      gambr - 2016-04-04

      I know, but from one hand I would like to use an official version of pythonqt, second I hope you all accept suggestions to improve the actual version, right?

       
  • Sergey

    Sergey - 2016-05-23

    And yet, how to avoid mistakes?

    g++ -c -pipe -fno-keep-inline-dllexport -O2 -std=gnu++0x -frtti -Wall -Wextra -fexceptions -mthreads -DUNICODE -DPYTHONQT_EXPORTS -DQT_NO_DEBUG -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_CORE_LIB -DQT_QML_DEBUG -I. -I. -IC:\Python27/PC -I....\Python27\include -I. -I....\Qt\5.6\mingw49_32\include -I....\Qt\5.6\mingw49_32\include\QtWidgets -I....\Qt\5.6\mingw49_32\include\QtGui -I....\Qt\5.6\mingw49_32\include\QtANGLE -I....\Qt\5.6\mingw49_32\include\QtCore -Irelease -I....\Qt\5.6\mingw49_32\mkspecs\win32-g++ -o release\PythonQtStdDecorators.o PythonQtStdDecorators.cpp
    In file included from C:/Qt/Tools/mingw492_32/i686-w64-mingw32/include/c++/random:38:0,
    from C:/Qt/Tools/mingw492_32/i686-w64-mingw32/include/c++/bits/stl_algo.h:66,
    from C:/Qt/Tools/mingw492_32/i686-w64-mingw32/include/c++/algorithm:62,
    from ....\Qt\5.6\mingw49_32\include/QtCore/qglobal.h:85,
    from ....\Qt\5.6\mingw49_32\include/QtCore/qatomic.h:34,
    from ....\Qt\5.6\mingw49_32\include/QtCore/qrefcount.h:37,
    from ....\Qt\5.6\mingw49_32\include\QtCore/qbytearray.h:37,
    from ....\Qt\5.6\mingw49_32\include\QtCore/QByteArray:1,
    from PythonQtUtils.h:48,
    from PythonQt.h:45,
    from PythonQtStdDecorators.h:47,
    from PythonQtStdDecorators.cpp:42:
    C:/Qt/Tools/mingw492_32/i686-w64-mingw32/include/c++/cmath:1094:11: error: '::hypot' has not been declared
    using ::hypot;
    ^
    Makefile.Release:1481: recipe for target 'release/PythonQtStdDecorators.o' failed
    mingw32-make[2]: [release/PythonQtStdDecorators.o] Error 1
    mingw32-make[2]: Leaving directory 'C:/pythonqt/src'
    Makefile:34: recipe for target 'release' failed
    mingw32-make[1]: [release] Error 2
    mingw32-make[1]: Leaving directory 'C:/pythonqt/src'
    makefile:85: recipe for target 'sub-src-makefirst-ordered' failed
    mingw32-make: [sub-src-makefirst-ordered] Error 2***

    Qt 5.6 open source.
    Thank.

     

    Last edit: Sergey 2016-05-29
  • Sergey

    Sergey - 2016-05-29

    Is there anyone, who has built PythonQt in Qt 5.6?

     
  • Florian Link

    Florian Link - 2016-05-30

    Yes, I use it with Qt 5.6. I added some fixes to the generator to the svn trunk of PythonQt to allow running the generator on Qt 5.6, it would crash on Qt 5.6 because there were some C++ templates that the parser could need understand. I did not yet commit the Qt 5.6 wrappers, but the Qt 5.4 wrappers should work as well.

    But if you don't want to have QtWebKit, you need to modify the pro file of PythonQt_All.

     
  • Sergey

    Sergey - 2016-06-09

    Hi!
    Tried to build with Qt 5.6, mingw32, trunk r431:

    mingw32-make[2]: Entering directory 'C:/pythonqt/src'
    g++ -c -pipe -fno-keep-inline-dllexport -O2 -std=gnu++0x -frtti -Wall -Wextra -fexceptions -mthreads -DUNICODE -DPYTHONQT_EXPORTS -DQT_NO_DEBUG -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_CORE_LIB -I. -I. -IC:\Python27/PC -I....\Python27\include -I. -I....\Qt\5.6\mingw49_32\include -I....\Qt\5.6\mingw49_32\include\QtWidgets -I....\Qt\5.6\mingw49_32\include\QtGui -I....\Qt\5.6\mingw49_32\include\QtANGLE -I....\Qt\5.6\mingw49_32\include\QtCore\5.6.0 -I....\Qt\5.6\mingw49_32\include\QtCore\5.6.0\QtCore -I....\Qt\5.6\mingw49_32\include\QtCore -Irelease -I....\Qt\5.6\mingw49_32\mkspecs\win32-g++ -o release\PythonQtStdDecorators.o PythonQtStdDecorators.cpp
    In file included from C:/Qt/Tools/mingw492_32/i686-w64-mingw32/include/c++/random:38:0,
    from C:/Qt/Tools/mingw492_32/i686-w64-mingw32/include/c++/bits/stl_algo.h:66,
    from C:/Qt/Tools/mingw492_32/i686-w64-mingw32/include/c++/algorithm:62,
    from ....\Qt\5.6\mingw49_32\include/QtCore/qglobal.h:85,
    from ....\Qt\5.6\mingw49_32\include/QtCore/qatomic.h:34,
    from ....\Qt\5.6\mingw49_32\include/QtCore/qrefcount.h:37,
    from ....\Qt\5.6\mingw49_32\include\QtCore/qbytearray.h:37,
    from ....\Qt\5.6\mingw49_32\include\QtCore/QByteArray:1,
    from PythonQtUtils.h:48,
    from PythonQt.h:45,
    from PythonQtStdDecorators.h:47,
    from PythonQtStdDecorators.cpp:42:
    C:/Qt/Tools/mingw492_32/i686-w64-mingw32/include/c++/cmath:1094:11: error: '::hypot' has not been declared
    using ::hypot;
    ^
    Makefile.Release:1489: recipe for target 'release/PythonQtStdDecorators.o' failed
    mingw32-make[2]: [release/PythonQtStdDecorators.o] Error 1
    mingw32-make[2]: Leaving directory 'C:/pythonqt/src'
    Makefile:34: recipe for target 'release' failed
    mingw32-make[1]: [release] Error 2
    mingw32-make[1]: Leaving directory 'C:/pythonqt/src'
    makefile:85: recipe for target 'sub-src-makefirst-ordered' failed
    mingw32-make: [sub-src-makefirst-ordered] Error 2

    Nothing happens :((

     
  • Florian Link

    Florian Link - 2016-06-10

    I never tried building PythonQt with mingw, I think you are having problems with different compiler defines.

     
  • Sergey

    Sergey - 2016-06-10

    Thanks.

     
  • Brad Elliott

    Brad Elliott - 2016-08-02

    Hi Sergey, did you manage to find a workaround for this this? I modified cmath in mingw to comment out the includes and it was enough to allow me to build but was curious as to whether you found a cleaner fix since modifying the compiler is not my preferred resolution.

    In this file:

        mingw492_32\i686-w64-mingw32\include\c++\cmath
    

    I commented out these lines:

    //using ::hypot;
    //using ::hypotf;
    //using ::hypotl;
    
     
  • Sergey

    Sergey - 2016-08-04

    No, it is not found.

     

Log in to post a comment.

Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.