Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. Qt Development
  3. Qt for WebAssembly
  4. Qt Webassembly only for commercial?
QtWS25 Last Chance

Qt Webassembly only for commercial?

Scheduled Pinned Locked Moved Solved Qt for WebAssembly
11 Posts 5 Posters 2.7k Views
  • 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.
  • PowerNowP Offline
    PowerNowP Offline
    PowerNow
    wrote on last edited by
    #1

    I want to port some part of my Qt Qml C++ code into the browser via webassembly and just read that the necessary 'Configure' tool is only part of Qt Commercial. Is there right now any way to use Qt Webassembly with LGPL?

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

      Hi,

      Where did you read that ?

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

      PowerNowP 1 Reply Last reply
      0
      • SGaistS SGaist

        Hi,

        Where did you read that ?

        PowerNowP Offline
        PowerNowP Offline
        PowerNow
        wrote on last edited by
        #3

        @SGaist Hi, I read it here.
        https://doc.qt.io/QtForDeviceCreation/qt-configuration-tool.html
        "To use the tool, you must have a commercial Qt license."

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

          It's the Qt For Device Creation documentation which is a commercial product.

          The Qt For Web Assembly documentation is here.

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

          1 Reply Last reply
          2
          • PowerNowP PowerNow

            @SGaist Hi, I read it here.
            https://doc.qt.io/QtForDeviceCreation/qt-configuration-tool.html
            "To use the tool, you must have a commercial Qt license."

            JonBJ Offline
            JonBJ Offline
            JonB
            wrote on last edited by
            #5

            @PowerNow
            That is in Qt for Device Creation. Is that what you are using? How does this relate to webassembly?

            1 Reply Last reply
            1
            • lorn.potterL Offline
              lorn.potterL Offline
              lorn.potter
              wrote on last edited by
              #6

              Qt for WebAssembly is GPL and Commercial licensed. Not LGPL.

              Freelance Software Engineer, Platform Maintainer QtWebAssembly, Maintainer QtSensors
              Author, Hands-On Mobile and Embedded Development with Qt 5 http://bit.ly/HandsOnMobileEmbedded

              1 Reply Last reply
              4
              • PowerNowP Offline
                PowerNowP Offline
                PowerNow
                wrote on last edited by PowerNow
                #7

                @SGaist, @JonB : Thxs, I've overlooked this. But the configure tool is commercial? If yes do I have to use the Qt binaries? What's the difference between using the Qt sources and static compling them and using the Qt binaries? Especially regarding the size of qtloader.js and using multithreading which should work partially with Qt 5.15/5.14 and Emscripten 1.39 ? From where do I get them? Do I have to use the Online Installer or are they also part of the Offline Installer?

                @lorn-potter : Thxs. Is the LPGL valid for the C++ or the wasm code?

                JonBJ 1 Reply Last reply
                0
                • PowerNowP PowerNow

                  @SGaist, @JonB : Thxs, I've overlooked this. But the configure tool is commercial? If yes do I have to use the Qt binaries? What's the difference between using the Qt sources and static compling them and using the Qt binaries? Especially regarding the size of qtloader.js and using multithreading which should work partially with Qt 5.15/5.14 and Emscripten 1.39 ? From where do I get them? Do I have to use the Online Installer or are they also part of the Offline Installer?

                  @lorn-potter : Thxs. Is the LPGL valid for the C++ or the wasm code?

                  JonBJ Offline
                  JonBJ Offline
                  JonB
                  wrote on last edited by JonB
                  #8

                  @PowerNow
                  The "configure tool" you refer to is for Qt for Device Creation. Assuming you are not using that, ignore it, there is no "configure tool".

                  @lorn-potter has brought to your attention that Qt WASM is one of the "special" Qt components which is GPL, not LGPL.

                  Assuming you do want to use WASM, you can still use it & Qt as open source/free, but the GPL (unlike LGPL) licence requires in a nutshell that you must supply all of your own projects' source code. If you do not want to do this, you will need to buy a Qt commercial licence. You need to make this decision from the outset. At which point you can then do static linking with commercial if you wish.

                  1 Reply Last reply
                  2
                  • PowerNowP Offline
                    PowerNowP Offline
                    PowerNow
                    wrote on last edited by
                    #9

                    @JonB : Regarding the configure tool I can't really follow you. As descripted on Qt

                    1. Download the Qt Source Files (e.g. via the Qt Online Installer)
                    2. "configure -no-warnings-are-errors -xplatform wasm-emscripten -platform win32-g++ -nomake examples -prefix %CD%\qtbase"
                      Here you setup via configure the static build and no multi thread
                      I assume the configure is maybe downloaded together with the source files?
                    3. Build required modules: "make module-qtbase module-qtdeclarative [other modules]"
                    4. Build and run your application
                      "$ /path/to/qt-wasm/qtbase/bin/qmake
                      $ make"

                    Regarding LGPL, so there is right now no way to protect the own proprietary C++ code using Qt webassamply? I think it's a shame, because every proprietary code program is suddenly open to everyone. Wasm/Wat is much more difficult to decode than C ++. This way you can also better protect Javascript code.

                    JonBJ 1 Reply Last reply
                    0
                    • PowerNowP PowerNow

                      @JonB : Regarding the configure tool I can't really follow you. As descripted on Qt

                      1. Download the Qt Source Files (e.g. via the Qt Online Installer)
                      2. "configure -no-warnings-are-errors -xplatform wasm-emscripten -platform win32-g++ -nomake examples -prefix %CD%\qtbase"
                        Here you setup via configure the static build and no multi thread
                        I assume the configure is maybe downloaded together with the source files?
                      3. Build required modules: "make module-qtbase module-qtdeclarative [other modules]"
                      4. Build and run your application
                        "$ /path/to/qt-wasm/qtbase/bin/qmake
                        $ make"

                      Regarding LGPL, so there is right now no way to protect the own proprietary C++ code using Qt webassamply? I think it's a shame, because every proprietary code program is suddenly open to everyone. Wasm/Wat is much more difficult to decode than C ++. This way you can also better protect Javascript code.

                      JonBJ Offline
                      JonBJ Offline
                      JonB
                      wrote on last edited by
                      #10

                      @PowerNow
                      You were asked where you got your information for

                      just read that the necessary 'Configure' tool is only part of Qt Commercial.

                      and you replied that you got it from

                      https://doc.qt.io/QtForDeviceCreation/qt-configuration-tool.html

                      Which we pointed out is not for WASM. If you are now looking at some other configure, I have nothing to say, I'm sure you can read its docs.

                      Regarding LGPL, so there is right now no way to protect the own proprietary C++ code using Qt webassamply?

                      As stated, Qt WASM is GPL, not LGPL. Not much point debating this, it's up to Qt Company. As also stated, if you want to hide your source code when using WASM buy a commercial licence.

                      1 Reply Last reply
                      3
                      • J Offline
                        J Offline
                        jackpap
                        wrote on last edited by
                        #11

                        @lorn-potter When using the installer qt-unified-linux-x64-4.1.0-online.run, and picking to install the WebAssembly component for Qt 5.15.2 I do not see any mention of it falling under GPL instead of LGPL. I make sure to install only LGPL components. Is this an oversight in the installer ? For all other modules (Qt Charts etc...) there is an explicit warning that the module is under GPL and not LGPL.

                        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