Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. Qt Development
  3. General and Desktop
  4. Using QWebkit for windows with mingw
Forum Updated to NodeBB v4.3 + New Features

Using QWebkit for windows with mingw

Scheduled Pinned Locked Moved Solved General and Desktop
25 Posts 5 Posters 4.4k Views 4 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • Thank YouT Thank You

    @artwaw
    Yes sir, I did that. Above mentioned errors are produced by using precompiled binaries

    That method din't work so I was thinking of building but couldn't clone the repo.

    Are there other options with QT with mingw and windows. I don't need any support for linux

    artwawA Offline
    artwawA Offline
    artwaw
    wrote on last edited by
    #6

    @Thank-You How did you install those precompiled binaries? Can you show your .pro file? It looks like those are not placed correctly, hence the fail.

    For more information please re-read.

    Kind Regards,
    Artur

    Thank YouT 1 Reply Last reply
    0
    • artwawA artwaw

      @Thank-You How did you install those precompiled binaries? Can you show your .pro file? It looks like those are not placed correctly, hence the fail.

      Thank YouT Offline
      Thank YouT Offline
      Thank You
      wrote on last edited by Thank You
      #7

      @artwaw

      How did you install those precompiled binaries?

      I just copied all files and moved to C:/Qt/Qt5.12.8/5.12.8/mingw73_32/ for 32 bit and on 64 bit C:/Qt/Qt5.12.8/5.12.8/mingw73_32/

      web.pro

      QT       += core gui webkitwidgets
      
      greaterThan(QT_MAJOR_VERSION, 4): QT += widgets
      
      CONFIG += c++11
      
      # You can make your code fail to compile if it uses deprecated APIs.
      # In order to do so, uncomment the following line.
      #DEFINES += QT_DISABLE_DEPRECATED_BEFORE=0x060000    # disables all the APIs deprecated before Qt 6.0.0
      
      SOURCES += \
          main.cpp \
          mainwindow.cpp
      
      HEADERS += \
          mainwindow.h
      
      FORMS += \
          mainwindow.ui
      

      mainwindow.h

      #ifndef MAINWINDOW_H
      #define MAINWINDOW_H
      
      #include <QMainWindow>
      #include<QWebView>
      #include<QtWebKit/QtWebKit>
      #include<QtWebChannel/QWebChannel>
      #include<QVBoxLayout>
      
      
      QT_BEGIN_NAMESPACE
      namespace Ui { class MainWindow; }
      QT_END_NAMESPACE
      
      class MainWindow : public QMainWindow
      {
          Q_OBJECT
      
      public:
          MainWindow(QWidget *parent = nullptr);
          ~MainWindow();
      
      private:
          Ui::MainWindow *ui;
           QWebView *view ;
           QVBoxLayout *layout;
           QWidget *wid;
      };
      #endif // MAINWINDOW_H
      
      

      mainwindow.cpp

      #include "mainwindow.h"
      #include "ui_mainwindow.h"
      #include<QHBoxLayout>
      
      MainWindow::MainWindow(QWidget *parent)
          : QMainWindow(parent)
          , ui(new Ui::MainWindow)
      {
          ui->setupUi(this);
          wid = new QWidget();
          layout = new QVBoxLayout(wid);
      
      
          view = new QWebView(this);
          view->load(QUrl("https://google.com"));
          layout->addWidget(view);
      
          wid->setLayout(layout);
          setCentralWidget(wid);
      }
      
      MainWindow::~MainWindow()
      {
          delete ui;
      }
      
      
      

      I hope it's correct 😂😂😂

      Let's make QT free or It will go forever

      TRUE AND FALSE <3

      artwawA 2 Replies Last reply
      0
      • Thank YouT Thank You

        @artwaw

        How did you install those precompiled binaries?

        I just copied all files and moved to C:/Qt/Qt5.12.8/5.12.8/mingw73_32/ for 32 bit and on 64 bit C:/Qt/Qt5.12.8/5.12.8/mingw73_32/

        web.pro

        QT       += core gui webkitwidgets
        
        greaterThan(QT_MAJOR_VERSION, 4): QT += widgets
        
        CONFIG += c++11
        
        # You can make your code fail to compile if it uses deprecated APIs.
        # In order to do so, uncomment the following line.
        #DEFINES += QT_DISABLE_DEPRECATED_BEFORE=0x060000    # disables all the APIs deprecated before Qt 6.0.0
        
        SOURCES += \
            main.cpp \
            mainwindow.cpp
        
        HEADERS += \
            mainwindow.h
        
        FORMS += \
            mainwindow.ui
        

        mainwindow.h

        #ifndef MAINWINDOW_H
        #define MAINWINDOW_H
        
        #include <QMainWindow>
        #include<QWebView>
        #include<QtWebKit/QtWebKit>
        #include<QtWebChannel/QWebChannel>
        #include<QVBoxLayout>
        
        
        QT_BEGIN_NAMESPACE
        namespace Ui { class MainWindow; }
        QT_END_NAMESPACE
        
        class MainWindow : public QMainWindow
        {
            Q_OBJECT
        
        public:
            MainWindow(QWidget *parent = nullptr);
            ~MainWindow();
        
        private:
            Ui::MainWindow *ui;
             QWebView *view ;
             QVBoxLayout *layout;
             QWidget *wid;
        };
        #endif // MAINWINDOW_H
        
        

        mainwindow.cpp

        #include "mainwindow.h"
        #include "ui_mainwindow.h"
        #include<QHBoxLayout>
        
        MainWindow::MainWindow(QWidget *parent)
            : QMainWindow(parent)
            , ui(new Ui::MainWindow)
        {
            ui->setupUi(this);
            wid = new QWidget();
            layout = new QVBoxLayout(wid);
        
        
            view = new QWebView(this);
            view->load(QUrl("https://google.com"));
            layout->addWidget(view);
        
            wid->setLayout(layout);
            setCentralWidget(wid);
        }
        
        MainWindow::~MainWindow()
        {
            delete ui;
        }
        
        
        

        I hope it's correct 😂😂😂

        artwawA Offline
        artwawA Offline
        artwaw
        wrote on last edited by
        #8

        @Thank-You said in Using QWebkit for windows with mingw:

        I just copied all files and moved to C:/Qt/Qt5.12.8/5.12.8/mingw73_32/ for 32 bit and on 64 bit C:/Qt/Qt5.12.8/5.12.8/mingw73_32/

        what

        For more information please re-read.

        Kind Regards,
        Artur

        1 Reply Last reply
        0
        • Thank YouT Thank You

          @artwaw

          How did you install those precompiled binaries?

          I just copied all files and moved to C:/Qt/Qt5.12.8/5.12.8/mingw73_32/ for 32 bit and on 64 bit C:/Qt/Qt5.12.8/5.12.8/mingw73_32/

          web.pro

          QT       += core gui webkitwidgets
          
          greaterThan(QT_MAJOR_VERSION, 4): QT += widgets
          
          CONFIG += c++11
          
          # You can make your code fail to compile if it uses deprecated APIs.
          # In order to do so, uncomment the following line.
          #DEFINES += QT_DISABLE_DEPRECATED_BEFORE=0x060000    # disables all the APIs deprecated before Qt 6.0.0
          
          SOURCES += \
              main.cpp \
              mainwindow.cpp
          
          HEADERS += \
              mainwindow.h
          
          FORMS += \
              mainwindow.ui
          

          mainwindow.h

          #ifndef MAINWINDOW_H
          #define MAINWINDOW_H
          
          #include <QMainWindow>
          #include<QWebView>
          #include<QtWebKit/QtWebKit>
          #include<QtWebChannel/QWebChannel>
          #include<QVBoxLayout>
          
          
          QT_BEGIN_NAMESPACE
          namespace Ui { class MainWindow; }
          QT_END_NAMESPACE
          
          class MainWindow : public QMainWindow
          {
              Q_OBJECT
          
          public:
              MainWindow(QWidget *parent = nullptr);
              ~MainWindow();
          
          private:
              Ui::MainWindow *ui;
               QWebView *view ;
               QVBoxLayout *layout;
               QWidget *wid;
          };
          #endif // MAINWINDOW_H
          
          

          mainwindow.cpp

          #include "mainwindow.h"
          #include "ui_mainwindow.h"
          #include<QHBoxLayout>
          
          MainWindow::MainWindow(QWidget *parent)
              : QMainWindow(parent)
              , ui(new Ui::MainWindow)
          {
              ui->setupUi(this);
              wid = new QWidget();
              layout = new QVBoxLayout(wid);
          
          
              view = new QWebView(this);
              view->load(QUrl("https://google.com"));
              layout->addWidget(view);
          
              wid->setLayout(layout);
              setCentralWidget(wid);
          }
          
          MainWindow::~MainWindow()
          {
              delete ui;
          }
          
          
          

          I hope it's correct 😂😂😂

          artwawA Offline
          artwawA Offline
          artwaw
          wrote on last edited by
          #9

          @Thank-You also if I am not mistaken you need not only webkitwidgets - I have a program that uses webkit as w page viewer, written some time ago, but its pro file had to have Qt += webkitwidgets webkit together to work properly. I am not certain if this might be the case but please try, as I said it was some time ago.

          For more information please re-read.

          Kind Regards,
          Artur

          Thank YouT 1 Reply Last reply
          0
          • artwawA artwaw

            @Thank-You also if I am not mistaken you need not only webkitwidgets - I have a program that uses webkit as w page viewer, written some time ago, but its pro file had to have Qt += webkitwidgets webkit together to work properly. I am not certain if this might be the case but please try, as I said it was some time ago.

            Thank YouT Offline
            Thank YouT Offline
            Thank You
            wrote on last edited by Thank You
            #10

            @artwaw said in Using QWebkit for windows with mingw:

            you need not only webkitwidgets

            Sorry, I was trying to tweak things if it will work after you asked about .pro file. I had actually have both

            what

            What Should I do?
            Isn't it correct.
            https://forum.qt.io/topic/119469/webkit-for-mingw-how-to-build/18

            Let's make QT free or It will go forever

            TRUE AND FALSE <3

            artwawA 1 Reply Last reply
            0
            • Thank YouT Thank You

              @artwaw said in Using QWebkit for windows with mingw:

              you need not only webkitwidgets

              Sorry, I was trying to tweak things if it will work after you asked about .pro file. I had actually have both

              what

              What Should I do?
              Isn't it correct.
              https://forum.qt.io/topic/119469/webkit-for-mingw-how-to-build/18

              artwawA Offline
              artwawA Offline
              artwaw
              wrote on last edited by
              #11

              @Thank-You Just to make sure: you copied 32bit files to 32bit mingw at mingw73_32 (which makes sense) and then you copied 64bit files to 32bit mingw folder, possibly overwriting 32bit libraries copied previously?

              For more information please re-read.

              Kind Regards,
              Artur

              Thank YouT 1 Reply Last reply
              0
              • artwawA artwaw

                @Thank-You Just to make sure: you copied 32bit files to 32bit mingw at mingw73_32 (which makes sense) and then you copied 64bit files to 32bit mingw folder, possibly overwriting 32bit libraries copied previously?

                Thank YouT Offline
                Thank YouT Offline
                Thank You
                wrote on last edited by Thank You
                #12

                @artwaw
                Single option is given:
                qtwebkit-Windows-Windows_10-Mingw73-Windows-Windows_10-X86_64.7z

                So I copied same things to both directories.

                ba573a5c-2872-4855-8292-6b80fb324a2b-image.png
                This is bin folder. It doesn't have any differences

                and others are also same. Files aren't seperated

                Let's make QT free or It will go forever

                TRUE AND FALSE <3

                artwawA 1 Reply Last reply
                0
                • Thank YouT Thank You

                  @artwaw
                  Single option is given:
                  qtwebkit-Windows-Windows_10-Mingw73-Windows-Windows_10-X86_64.7z

                  So I copied same things to both directories.

                  ba573a5c-2872-4855-8292-6b80fb324a2b-image.png
                  This is bin folder. It doesn't have any differences

                  and others are also same. Files aren't seperated

                  artwawA Offline
                  artwawA Offline
                  artwaw
                  wrote on last edited by
                  #13

                  @Thank-You said in Using QWebkit for windows with mingw:

                  X86_64.7z

                  Those are 64bit binaries. They will not work if you compile for 32bit target.

                  For more information please re-read.

                  Kind Regards,
                  Artur

                  Thank YouT 1 Reply Last reply
                  0
                  • artwawA artwaw

                    @Thank-You said in Using QWebkit for windows with mingw:

                    X86_64.7z

                    Those are 64bit binaries. They will not work if you compile for 32bit target.

                    Thank YouT Offline
                    Thank YouT Offline
                    Thank You
                    wrote on last edited by
                    #14

                    @artwaw

                    Ok But compiling with 64 bit also gives error on both debug and release.(Mentioned at the main post)
                    What about it?
                    Where can I get 32bit binaries?

                    Let's make QT free or It will go forever

                    TRUE AND FALSE <3

                    artwawA 1 Reply Last reply
                    0
                    • Christian EhrlicherC Offline
                      Christian EhrlicherC Offline
                      Christian Ehrlicher
                      Lifetime Qt Champion
                      wrote on last edited by
                      #15

                      @Thank-You said in Using QWebkit for windows with mingw:

                      Where can I get 32bit binaries?

                      On the same link from above I would guess.

                      Qt Online Installer direct download: https://download.qt.io/official_releases/online_installers/
                      Visit the Qt Academy at https://academy.qt.io/catalog

                      1 Reply Last reply
                      0
                      • Thank YouT Thank You

                        @artwaw

                        Ok But compiling with 64 bit also gives error on both debug and release.(Mentioned at the main post)
                        What about it?
                        Where can I get 32bit binaries?

                        artwawA Offline
                        artwawA Offline
                        artwaw
                        wrote on last edited by
                        #16

                        @Thank-You said in Using QWebkit for windows with mingw:

                        But compiling with 64 bit also gives error on both debug and release.(Mentioned at the main post)

                        Hardly a surprise if you did not copy the 64bit binaries to the 64bit part of Qt tree.

                        For more information please re-read.

                        Kind Regards,
                        Artur

                        Thank YouT 1 Reply Last reply
                        0
                        • artwawA artwaw

                          @Thank-You said in Using QWebkit for windows with mingw:

                          But compiling with 64 bit also gives error on both debug and release.(Mentioned at the main post)

                          Hardly a surprise if you did not copy the 64bit binaries to the 64bit part of Qt tree.

                          Thank YouT Offline
                          Thank YouT Offline
                          Thank You
                          wrote on last edited by
                          #17

                          @artwaw
                          I tried using windows 7 32bit binaries in 32 bit and it compiled but shows message

                          The program has unexpectedly finished.
                           The process was ended forcefully.
                          

                          I couldn't make it working

                          Let's make QT free or It will go forever

                          TRUE AND FALSE <3

                          artwawA 1 Reply Last reply
                          0
                          • Thank YouT Thank You

                            @artwaw
                            I tried using windows 7 32bit binaries in 32 bit and it compiled but shows message

                            The program has unexpectedly finished.
                             The process was ended forcefully.
                            

                            I couldn't make it working

                            artwawA Offline
                            artwawA Offline
                            artwaw
                            wrote on last edited by
                            #18

                            @Thank-You You can try to use a Dependency Walker tool to identify what's missing.

                            For more information please re-read.

                            Kind Regards,
                            Artur

                            Thank YouT 1 Reply Last reply
                            1
                            • artwawA artwaw

                              @Thank-You You can try to use a Dependency Walker tool to identify what's missing.

                              Thank YouT Offline
                              Thank YouT Offline
                              Thank You
                              wrote on last edited by
                              #19

                              @artwaw
                              I used it. Found out libxml2-2.dll libxslt-1.dll were not present after running windeployqt. So I copied them to executable directory.
                              After that it shows this error.
                              5fa602c9-54bc-4945-a3b3-cd46b918ec9b-image.png

                              Let's make QT free or It will go forever

                              TRUE AND FALSE <3

                              JKSHJ 1 Reply Last reply
                              0
                              • Thank YouT Thank You

                                @artwaw
                                I used it. Found out libxml2-2.dll libxslt-1.dll were not present after running windeployqt. So I copied them to executable directory.
                                After that it shows this error.
                                5fa602c9-54bc-4945-a3b3-cd46b918ec9b-image.png

                                JKSHJ Offline
                                JKSHJ Offline
                                JKSH
                                Moderators
                                wrote on last edited by
                                #20

                                @Thank-You said in Using QWebkit for windows with mingw:

                                5fa602c9-54bc-4945-a3b3-cd46b918ec9b-image.png

                                Qt5WebKitWidgets.dll is looking for QtPrivate::argToQString(QStringView), which is present in recent versions of Qt Core.

                                It sounds like the latest Qt WebKit binaries are built against Qt 5.14:

                                • https://forum.qt.io/post/689916
                                • https://github.com/qtwebkit/qtwebkit/releases/tag/qtwebkit-5.212.0-alpha4

                                Can you update to Qt 5.14 or Qt 5.15?

                                Qt Doc Search for browsers: forum.qt.io/topic/35616/web-browser-extension-for-improved-doc-searches

                                Thank YouT 1 Reply Last reply
                                0
                                • JKSHJ JKSH

                                  @Thank-You said in Using QWebkit for windows with mingw:

                                  5fa602c9-54bc-4945-a3b3-cd46b918ec9b-image.png

                                  Qt5WebKitWidgets.dll is looking for QtPrivate::argToQString(QStringView), which is present in recent versions of Qt Core.

                                  It sounds like the latest Qt WebKit binaries are built against Qt 5.14:

                                  • https://forum.qt.io/post/689916
                                  • https://github.com/qtwebkit/qtwebkit/releases/tag/qtwebkit-5.212.0-alpha4

                                  Can you update to Qt 5.14 or Qt 5.15?

                                  Thank YouT Offline
                                  Thank YouT Offline
                                  Thank You
                                  wrote on last edited by
                                  #21

                                  @JKSH
                                  Hey, I have been using Qt5.12.8 and has other dependencies too.
                                  Will code compiling in Qt 5.12.8 would compile in QT 5.15 ???

                                  Let's make QT free or It will go forever

                                  TRUE AND FALSE <3

                                  1 Reply Last reply
                                  0
                                  • SGaistS Offline
                                    SGaistS Offline
                                    SGaist
                                    Lifetime Qt Champion
                                    wrote on last edited by
                                    #22

                                    Yes, that's one of the strength of Qt.

                                    Interested in AI ? www.idiap.ch
                                    Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

                                    Thank YouT 1 Reply Last reply
                                    1
                                    • SGaistS SGaist

                                      Yes, that's one of the strength of Qt.

                                      Thank YouT Offline
                                      Thank YouT Offline
                                      Thank You
                                      wrote on last edited by Thank You
                                      #23

                                      I installed QT 5.15.2 and build with it. Got all dependencies with windeployqt and added libxml2-2.dll libxslt-1.dll.
                                      It now shows error zlib1__.dll not found.
                                      I searched in whole qt directory but couldn't find one so I managed to download zlib1.dll not zlib1__.dll from dll-files.com.
                                      I renamed zlib1.dll to zlib1__.dll and placed in binary directory. I don't know if this is good to do.
                                      Where is zlib1__.dll located in QT??? OR it isn't related with QT?

                                      Atleast it is working in 64bit version but shows TLS initialization failed Which is connected to OpenSSL so I am sure I will solve this problem.
                                      Edit:
                                      I copied libcrypto-3-x64.dll and libssl-3-x64.dll to executable directory but couldn't get it working
                                      Now some problems that I can't figure out are:
                                      It doesn't work with debug
                                      Most importantly it doesn't work with 32 bit which is most for me.
                                      How can I obtain it?

                                      Let's make QT free or It will go forever

                                      TRUE AND FALSE <3

                                      Thank YouT 1 Reply Last reply
                                      0
                                      • Thank YouT Thank You

                                        I installed QT 5.15.2 and build with it. Got all dependencies with windeployqt and added libxml2-2.dll libxslt-1.dll.
                                        It now shows error zlib1__.dll not found.
                                        I searched in whole qt directory but couldn't find one so I managed to download zlib1.dll not zlib1__.dll from dll-files.com.
                                        I renamed zlib1.dll to zlib1__.dll and placed in binary directory. I don't know if this is good to do.
                                        Where is zlib1__.dll located in QT??? OR it isn't related with QT?

                                        Atleast it is working in 64bit version but shows TLS initialization failed Which is connected to OpenSSL so I am sure I will solve this problem.
                                        Edit:
                                        I copied libcrypto-3-x64.dll and libssl-3-x64.dll to executable directory but couldn't get it working
                                        Now some problems that I can't figure out are:
                                        It doesn't work with debug
                                        Most importantly it doesn't work with 32 bit which is most for me.
                                        How can I obtain it?

                                        Thank YouT Offline
                                        Thank YouT Offline
                                        Thank You
                                        wrote on last edited by Thank You
                                        #24

                                        @Thank-You
                                        Now after installing another version of openssl it is working on 64bit.
                                        I couldn't make it work in 32bit.
                                        And I found that many websites doesn't considered it as supported version.
                                        I found that we can embed existing application to QT application but has no idea.
                                        Main purpose of this is to run services like gmail , google docs and other servuces.
                                        Which would be good?
                                        I was just searching abt this yesterday and found about running application. Could you give links of working docs about this?

                                        I will create new question abt this

                                        https://forum.qt.io/topic/132721/opening-external-application-and-embed-it-without-opening-application-out-of-application

                                        Let's make QT free or It will go forever

                                        TRUE AND FALSE <3

                                        JKSHJ 1 Reply Last reply
                                        0
                                        • Thank YouT Thank You

                                          @Thank-You
                                          Now after installing another version of openssl it is working on 64bit.
                                          I couldn't make it work in 32bit.
                                          And I found that many websites doesn't considered it as supported version.
                                          I found that we can embed existing application to QT application but has no idea.
                                          Main purpose of this is to run services like gmail , google docs and other servuces.
                                          Which would be good?
                                          I was just searching abt this yesterday and found about running application. Could you give links of working docs about this?

                                          I will create new question abt this

                                          https://forum.qt.io/topic/132721/opening-external-application-and-embed-it-without-opening-application-out-of-application

                                          JKSHJ Offline
                                          JKSHJ Offline
                                          JKSH
                                          Moderators
                                          wrote on last edited by
                                          #25

                                          @Thank-You said in Using QWebkit for windows with mingw:

                                          And I found that many websites doesn't considered it as supported version.

                                          Web engines are very difficult to maintain because of security requirements. That is why the Qt Project replaced Qt WebKit (which was mostly maintained by the Qt folks) with Qt WebEngine (which is mostly maintained by the Chromium folks).

                                          @Konstantin-Tokarev has done a great job making Qt WebKit compatible with recent versions of Qt, but the last update was over 1 year ago. Lots of security vulnerabilities have been discovered in WebKit since then; that is why many websites don't consider it as a supported version.

                                          Main purpose of this is to run services like gmail , google docs and other servuces.
                                          Which would be good?

                                          Qt WebEngine for desktop platforms; Qt WebView for mobile platforms.

                                          Qt Doc Search for browsers: forum.qt.io/topic/35616/web-browser-extension-for-improved-doc-searches

                                          1 Reply Last reply
                                          1

                                          • Login

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Categories
                                          • Recent
                                          • Tags
                                          • Popular
                                          • Users
                                          • Groups
                                          • Search
                                          • Get Qt Extensions
                                          • Unsolved