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. Qt resource not showing up in static build...
Forum Updated to NodeBB v4.3 + New Features

Qt resource not showing up in static build...

Scheduled Pinned Locked Moved Solved General and Desktop
42 Posts 5 Posters 14.9k 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.
  • mzimmersM Offline
    mzimmersM Offline
    mzimmers
    wrote on last edited by
    #3

    Yeah, mentioned here. But, if I'm reading the document correctly, that shouldn't apply to my example.

    mrjjM 1 Reply Last reply
    0
    • mzimmersM mzimmers

      Yeah, mentioned here. But, if I'm reading the document correctly, that shouldn't apply to my example.

      mrjjM Offline
      mrjjM Offline
      mrjj
      Lifetime Qt Champion
      wrote on last edited by
      #4

      @mzimmers
      Hi
      You mean when you produce a static linked .exe ( with our own static compiled Qt) ( not the same as release mode vs debug mode )
      the compiled in qres file does not work?

      And you have it in the project like ?
      alt text

      mzimmersM 1 Reply Last reply
      0
      • mrjjM mrjj

        @mzimmers
        Hi
        You mean when you produce a static linked .exe ( with our own static compiled Qt) ( not the same as release mode vs debug mode )
        the compiled in qres file does not work?

        And you have it in the project like ?
        alt text

        mzimmersM Offline
        mzimmersM Offline
        mzimmers
        wrote on last edited by
        #5

        @mrjj yes on both counts. I am getting an error message at runtime:

        QPixmap::scaled: Pixmap is a null pixmap

        Here's the code I use to display it:

            QPixmap logo(":/logos/logo1color.svg"); // .svg file created from .png file with http://www.autotracer.org/
            QSize logoSize = ui->logoLabel->size();
            ui->logoLabel->setPixmap(logo.scaled(logoSize, Qt::KeepAspectRatio, Qt::SmoothTransformation));
        

        And again, it's working when built for debug.

        mrjjM kshegunovK 2 Replies Last reply
        0
        • mzimmersM mzimmers

          @mrjj yes on both counts. I am getting an error message at runtime:

          QPixmap::scaled: Pixmap is a null pixmap

          Here's the code I use to display it:

              QPixmap logo(":/logos/logo1color.svg"); // .svg file created from .png file with http://www.autotracer.org/
              QSize logoSize = ui->logoLabel->size();
              ui->logoLabel->setPixmap(logo.scaled(logoSize, Qt::KeepAspectRatio, Qt::SmoothTransformation));
          

          And again, it's working when built for debug.

          mrjjM Offline
          mrjjM Offline
          mrjj
          Lifetime Qt Champion
          wrote on last edited by
          #6

          @mzimmers
          Hi, svg is a normally plugin. maybe it was not compiled in ?
          Did you try with a png or a more native image?

          mzimmersM 1 Reply Last reply
          0
          • mzimmersM mzimmers

            @mrjj yes on both counts. I am getting an error message at runtime:

            QPixmap::scaled: Pixmap is a null pixmap

            Here's the code I use to display it:

                QPixmap logo(":/logos/logo1color.svg"); // .svg file created from .png file with http://www.autotracer.org/
                QSize logoSize = ui->logoLabel->size();
                ui->logoLabel->setPixmap(logo.scaled(logoSize, Qt::KeepAspectRatio, Qt::SmoothTransformation));
            

            And again, it's working when built for debug.

            kshegunovK Offline
            kshegunovK Offline
            kshegunov
            Moderators
            wrote on last edited by
            #7

            Can you show your project's file structure? It probably is a path issue (difference) between the release and debug builds.

            Read and abide by the Qt Code of Conduct

            1 Reply Last reply
            1
            • mrjjM Offline
              mrjjM Offline
              mrjj
              Lifetime Qt Champion
              wrote on last edited by
              #8

              Also to be clear.
              It does work in statically linked debug version but not in a
              statically linked release version?
              That is odd.
              When you made your statically linkable Qt, you did use release mode?

              mzimmersM 1 Reply Last reply
              0
              • mrjjM mrjj

                @mzimmers
                Hi, svg is a normally plugin. maybe it was not compiled in ?
                Did you try with a png or a more native image?

                mzimmersM Offline
                mzimmersM Offline
                mzimmers
                wrote on last edited by
                #9

                @mrjj yes, I tried other formats...they looked terrible so I went to .svg.

                @kshegunov: project file layout is entirely flat...do I need a subdirectory called /logos?

                1 Reply Last reply
                0
                • mrjjM mrjj

                  Also to be clear.
                  It does work in statically linked debug version but not in a
                  statically linked release version?
                  That is odd.
                  When you made your statically linkable Qt, you did use release mode?

                  mzimmersM Offline
                  mzimmersM Offline
                  mzimmers
                  wrote on last edited by
                  #10

                  @mrjj not quite: it works in dynamic/debug, but not in static/release. I haven't tried the other permutations yet.

                  kshegunovK 1 Reply Last reply
                  0
                  • mzimmersM mzimmers

                    @mrjj not quite: it works in dynamic/debug, but not in static/release. I haven't tried the other permutations yet.

                    kshegunovK Offline
                    kshegunovK Offline
                    kshegunov
                    Moderators
                    wrote on last edited by kshegunov
                    #11

                    Aha! So your debug is in fact dynamically linked. Then do the manual resource initialization as @SGaist hinted!

                    Read and abide by the Qt Code of Conduct

                    mzimmersM 1 Reply Last reply
                    0
                    • kshegunovK kshegunov

                      Aha! So your debug is in fact dynamically linked. Then do the manual resource initialization as @SGaist hinted!

                      mzimmersM Offline
                      mzimmersM Offline
                      mzimmers
                      wrote on last edited by
                      #12

                      @kshegunov sorry - I thought I'd made that clear in my OP.

                      I've added this line to my main (my resource file is called "resources.qrc"):

                          Q_INIT_RESOURCE(resources);
                      

                      Still doesn't show, and I'm getting that null pixmap error.

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

                        Do you have several resources named like that ?

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

                        mzimmersM 1 Reply Last reply
                        0
                        • SGaistS SGaist

                          Do you have several resources named like that ?

                          mzimmersM Offline
                          mzimmersM Offline
                          mzimmers
                          wrote on last edited by
                          #14

                          @SGaist I'm not sure what you mean by "named like that," but I only have one .qrc file, and it only has two files in it.

                          kshegunovK 1 Reply Last reply
                          0
                          • mzimmersM mzimmers

                            @SGaist I'm not sure what you mean by "named like that," but I only have one .qrc file, and it only has two files in it.

                            kshegunovK Offline
                            kshegunovK Offline
                            kshegunov
                            Moderators
                            wrote on last edited by
                            #15

                            Okay, can you grab a screenshot from the resource editor? Unless that path is an alias, then you need to put the image into that folder under the project. I personally always alias the things because it feels quite clumsy otherwise ...

                            Read and abide by the Qt Code of Conduct

                            1 Reply Last reply
                            0
                            • mzimmersM Offline
                              mzimmersM Offline
                              mzimmers
                              wrote on last edited by mzimmers
                              #16

                              So I need a subdirectory in my source folder? I'll try that.

                              0_1508880996044_resource.PNG

                              EDIT: just moved logo to a subfolder, rebuilt and now I'm getting an error:

                              [release/qrc_resources.cpp] Error 1

                              So I deleted the moved file and re-added it. Still getting the null pixmap error.

                              kshegunovK 1 Reply Last reply
                              0
                              • mzimmersM mzimmers

                                So I need a subdirectory in my source folder? I'll try that.

                                0_1508880996044_resource.PNG

                                EDIT: just moved logo to a subfolder, rebuilt and now I'm getting an error:

                                [release/qrc_resources.cpp] Error 1

                                So I deleted the moved file and re-added it. Still getting the null pixmap error.

                                kshegunovK Offline
                                kshegunovK Offline
                                kshegunov
                                Moderators
                                wrote on last edited by
                                #17

                                @mzimmers said in Qt resource not showing up in static build...:

                                just moved logo to a subfolder, rebuilt and now I'm getting an error:

                                Not any subfolder, looking at the screenshot you need a folder called logos under your project root. Then readd the file and I think it should work.

                                Read and abide by the Qt Code of Conduct

                                mzimmersM 1 Reply Last reply
                                0
                                • kshegunovK kshegunov

                                  @mzimmers said in Qt resource not showing up in static build...:

                                  just moved logo to a subfolder, rebuilt and now I'm getting an error:

                                  Not any subfolder, looking at the screenshot you need a folder called logos under your project root. Then readd the file and I think it should work.

                                  mzimmersM Offline
                                  mzimmersM Offline
                                  mzimmers
                                  wrote on last edited by mzimmers
                                  #18

                                  @kshegunov no joy.

                                  0_1508882322220_folder.PNG
                                  EDIT: put some text in here to separate the pics.
                                  0_1508882354954_qt.PNG

                                  But at least now it's missing from both the debug and release versions...

                                  kshegunovK 1 Reply Last reply
                                  0
                                  • mzimmersM mzimmers

                                    @kshegunov no joy.

                                    0_1508882322220_folder.PNG
                                    EDIT: put some text in here to separate the pics.
                                    0_1508882354954_qt.PNG

                                    But at least now it's missing from both the debug and release versions...

                                    kshegunovK Offline
                                    kshegunovK Offline
                                    kshegunov
                                    Moderators
                                    wrote on last edited by
                                    #19

                                    But now your resource tree looks funny, you have two folders named "logos" there ...?

                                    Read and abide by the Qt Code of Conduct

                                    1 Reply Last reply
                                    0
                                    • mzimmersM Offline
                                      mzimmersM Offline
                                      mzimmers
                                      wrote on last edited by
                                      #20

                                      OK, I obviously don't know what's going on here. The resource editor requires me to add a prefix before I can add a file. When I add the file, if it's in a subdirectory, that gets prepended to the file name. This is why you're seeing what appears to be two levels of folders.

                                      I don't know how to do this differently.

                                      kshegunovK 1 Reply Last reply
                                      0
                                      • mzimmersM mzimmers

                                        OK, I obviously don't know what's going on here. The resource editor requires me to add a prefix before I can add a file. When I add the file, if it's in a subdirectory, that gets prepended to the file name. This is why you're seeing what appears to be two levels of folders.

                                        I don't know how to do this differently.

                                        kshegunovK Offline
                                        kshegunovK Offline
                                        kshegunov
                                        Moderators
                                        wrote on last edited by
                                        #21

                                        Ah, okay. That's why I'm saying it's damn clumsy. Add only a / as prefix and then add your file. It should fix the double folder thing.

                                        Read and abide by the Qt Code of Conduct

                                        mzimmersM 1 Reply Last reply
                                        0
                                        • kshegunovK kshegunov

                                          Ah, okay. That's why I'm saying it's damn clumsy. Add only a / as prefix and then add your file. It should fix the double folder thing.

                                          mzimmersM Offline
                                          mzimmersM Offline
                                          mzimmers
                                          wrote on last edited by
                                          #22

                                          @kshegunov alas, that didn't work, either. You're right, though...this is one awkward interface.

                                          kshegunovK 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