Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. General talk
  3. Qt 6
  4. Qt Shader Tools and LGPL
Forum Update on Monday, May 27th 2025

Qt Shader Tools and LGPL

Scheduled Pinned Locked Moved Unsolved Qt 6
6 Posts 3 Posters 649 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.
  • M Offline
    M Offline
    mooglus
    wrote on last edited by
    #1

    The Qt 6 documentation says, "Qt Shader Tools is available under commercial licenses from The Qt Company. In addition, it is available under the GNU General Public License, version 3."

    I believe the Qt Shader Tools output .qsb files.

    Can the .qsb files generated by the Qt Shader Tools be included in an LGPL project legally?

    I presume not, but I hope I'm wrong!

    1 Reply Last reply
    0
    • sierdzioS Offline
      sierdzioS Offline
      sierdzio
      Moderators
      wrote on last edited by
      #2

      So the shader tools will not take part in compilation of your app, and your users will be able to swap the .qsb files for custom ones at runtime?

      It's an interesting case. As long as .qsb output does not inherit GPLv3 it should be legal. But does it or not? I don't know.

      But this is really a corner case, you should consult some lawyer for a more serious answer. I'm only guessing here!

      (Z(:^

      1 Reply Last reply
      0
      • M Offline
        M Offline
        mooglus
        wrote on last edited by
        #3

        @sierdzio said in Qt Shader Tools and LGPL:

        So the shader tools will not take part in compilation of your app, and your users will be able to swap the .qsb files for custom ones at runtime?

        Yes, that's the idea.

        It's an interesting case. As long as .qsb output does not inherit GPLv3 it should be legal. But does it or not? I don't know.

        I ran qsb on an example fragment shader, there don't appear to be any comments in the generated output about GPL, but I don't know if that's enough.

        1 Reply Last reply
        0
        • M Offline
          M Offline
          mooglus
          wrote on last edited by
          #4

          A bit of Googling suggests the output of GPL tools doesn't inherit the GPL.

          In the application the qsb file is then used to initialise a QShader, like so...

          QFile f("MyTexture.frag.qsb");
          if (f.open(QIODevice::ReadOnly))
          {
            QShader s = QShader::fromSerialized(f.readAll());
          }
          

          It sounds like it might be ok.

          JoeCFDJ 1 Reply Last reply
          0
          • sierdzioS Offline
            sierdzioS Offline
            sierdzio
            Moderators
            wrote on last edited by
            #5

            Sounds like it, yes. But this is really out of my expertise to say for sure.

            (Z(:^

            1 Reply Last reply
            0
            • M mooglus

              A bit of Googling suggests the output of GPL tools doesn't inherit the GPL.

              In the application the qsb file is then used to initialise a QShader, like so...

              QFile f("MyTexture.frag.qsb");
              if (f.open(QIODevice::ReadOnly))
              {
                QShader s = QShader::fromSerialized(f.readAll());
              }
              

              It sounds like it might be ok.

              JoeCFDJ Offline
              JoeCFDJ Offline
              JoeCFD
              wrote on last edited by
              #6

              @mooglus Could be a Qt leak. Good for you.

              1 Reply Last reply
              0

              • Login

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