Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. Qt Development
  3. QML and Qt Quick
  4. How to make the qml executable in windows?
Forum Updated to NodeBB v4.3 + New Features

How to make the qml executable in windows?

Scheduled Pinned Locked Moved QML and Qt Quick
19 Posts 3 Posters 11.1k Views 1 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.
  • M Offline
    M Offline
    Muhammad
    wrote on 31 Jan 2013, 17:54 last edited by
    #1

    Hello guys,Would you please tell me How can I make a working .exe program with Qt Quick.
    I'm using Qt5 with Visual studio 2010, So which project should I choose (Qt quick 2 application or Qt quick2 UI or what?)

    I don't have endpoint, I just have Checkpoints.

    1 Reply Last reply
    0
    • Q Offline
      Q Offline
      qxoz
      wrote on 1 Feb 2013, 04:39 last edited by
      #2

      I'm not use Visual studio, but Qt quick 2 application should create executable for Desktop.

      1 Reply Last reply
      0
      • M Offline
        M Offline
        Muhammad
        wrote on 1 Feb 2013, 07:01 last edited by
        #3

        Yes, Qt quick 2 application does create .exe file if I build it as a release, but the .exe file doesn't work even after putting the required .dll files in the same folder with the .exe file, and this is what panics me :(
        Don't know what to do, any help?

        I don't have endpoint, I just have Checkpoints.

        1 Reply Last reply
        0
        • Q Offline
          Q Offline
          qxoz
          wrote on 1 Feb 2013, 07:13 last edited by
          #4

          You mean dosen't start at all or app starts but with empty window?
          In first case what the error message?
          In second case check *.qml files locations in main.cpp and place them in same directory near *.exe.
          Or insert qml files in resource file.

          1 Reply Last reply
          0
          • M Offline
            M Offline
            Muhammad
            wrote on 1 Feb 2013, 08:01 last edited by
            #5

            There is no error, I just run the *.exe file but it shows nothing.
            I tried it with Qt4.8 before installing Qt5, and it did open an empty window, but now it shows nothing.
            Would you please tell me exactly how to insert the *.qml file in the resources,My be I'm doing something wrong.
            -I'm not adding any extra *.qml files I just want to run the ready made hello world, from the exe.
            Thanks

            I don't have endpoint, I just have Checkpoints.

            1 Reply Last reply
            0
            • M Offline
              M Offline
              Muhammad
              wrote on 1 Feb 2013, 13:30 last edited by
              #6

              Any help???

              I don't have endpoint, I just have Checkpoints.

              1 Reply Last reply
              0
              • T Offline
                T Offline
                tolszak
                wrote on 1 Feb 2013, 13:43 last edited by
                #7

                Could you please paste the code of your main.cpp?

                1 Reply Last reply
                0
                • M Offline
                  M Offline
                  Muhammad
                  wrote on 1 Feb 2013, 13:50 last edited by
                  #8

                  Here is the code

                  @#include <QtGui/QGuiApplication>
                  #include "qtquick2applicationviewer.h"

                  int main(int argc, char *argv[])
                  {
                  QGuiApplication app(argc, argv);

                  QtQuick2ApplicationViewer viewer;
                  viewer.setMainQmlFile&#40;QStringLiteral("qml/asdfasdf/main.qml"&#41;&#41;;
                  viewer.showExpanded();
                  
                  return app.exec&#40;&#41;;
                  

                  }
                  @

                  this code is without adding a resource file

                  I don't have endpoint, I just have Checkpoints.

                  1 Reply Last reply
                  0
                  • M Offline
                    M Offline
                    Muhammad
                    wrote on 1 Feb 2013, 13:51 last edited by
                    #9

                    The previous code is without adding any thing in the resources

                    I don't have endpoint, I just have Checkpoints.

                    1 Reply Last reply
                    0
                    • M Offline
                      M Offline
                      Muhammad
                      wrote on 1 Feb 2013, 13:56 last edited by
                      #10

                      And here is the main.cpp after adding the resource file
                      @#include <QtGui/QGuiApplication>
                      #include "qtquick2applicationviewer.h"

                      int main(int argc, char *argv[])
                      {
                      QGuiApplication app(argc, argv);

                      QtQuick2ApplicationViewer viewer;
                      viewer.setMainQmlFile&#40;QStringLiteral(":qml/asdfasdf/main.qml"&#41;);
                      viewer.showExpanded();
                      
                      return app.exec();
                      

                      }
                      @

                      I don't have endpoint, I just have Checkpoints.

                      1 Reply Last reply
                      0
                      • M Offline
                        M Offline
                        Muhammad
                        wrote on 1 Feb 2013, 13:57 last edited by
                        #11

                        When I add the resources It and run the project in Qt creator, it shows me empty window

                        I don't have endpoint, I just have Checkpoints.

                        1 Reply Last reply
                        0
                        • M Offline
                          M Offline
                          Muhammad
                          wrote on 1 Feb 2013, 14:05 last edited by
                          #12

                          !http://imageshack.us/photo/my-images/853/49026492.jpg/(photo)!

                          here is a photo for the resource file, and for the project hierarchic

                          This is link for the photo if it didn't appear
                          http://imageshack.us/photo/my-images/853/49026492.jpg/

                          I don't have endpoint, I just have Checkpoints.

                          1 Reply Last reply
                          0
                          • T Offline
                            T Offline
                            tolszak
                            wrote on 1 Feb 2013, 14:33 last edited by
                            #13

                            Try changing line:
                            @
                            viewer.setMainQmlFile(QStringLiteral(":qml/asdfasdf/main.qml"));
                            @

                            to
                            @
                            viewer.setMainQmlFile(QStringLiteral(QUrl("qrc:///Here/qml/asdfasdf/main.qml")));
                            @

                            And paste log from qtcreator

                            1 Reply Last reply
                            0
                            • M Offline
                              M Offline
                              Muhammad
                              wrote on 1 Feb 2013, 15:13 last edited by
                              #14

                              It shows lots of errors

                              17:11:52: Running steps for project asdfasdf...
                              17:11:52: Configuration unchanged, skipping qmake step.
                              17:11:52: Starting: "C:\Qt\Qt5.0.0\Tools\QtCreator\bin\jom.exe"
                              C:\Qt\Qt5.0.0\Tools\QtCreator\bin\jom.exe -f Makefile.Release
                              cl -c -nologo -Zm200 -Zc:wchar_t -O2 -MD -GR -W3 -w34100 -w34189 -EHsc -DUNICODE -DWIN32 -DQT_NO_DEBUG -DQT_QUICK_LIB -DQT_QML_LIB -DQT_NETWORK_LIB -DQT_GUI_LIB -DQT_CORE_LIB -DQT_OPENGL_ES_2 -DQT_OPENGL_ES_2_ANGLE -I"..\asdfasdf\qtquick2applicationviewer" -I"........\Qt\Qt5.0.0\5.0.0\msvc2010\include" -I"........\Qt\Qt5.0.0\5.0.0\msvc2010\include\QtQuick" -I"........\Qt\Qt5.0.0\5.0.0\msvc2010\include\QtQml" -I"........\Qt\Qt5.0.0\5.0.0\msvc2010\include\QtNetwork" -I"........\Qt\Qt5.0.0\5.0.0\msvc2010\include\QtGui" -I"........\Qt\Qt5.0.0\5.0.0\msvc2010\include\QtCore" -I"release" -I"." -I"........\Qt\Qt5.0.0\5.0.0\msvc2010\mkspecs\win32-msvc2010" -Forelease\ @C:\Users\FBM\AppData\Local\Temp\main.obj.2632.16.jom
                              Copying application data...
                              1 File(s) copied
                              main.cpp
                              Copying application data...
                              1 File(s) copied
                              ..\asdfasdf\main.cpp(10) : error C2070: ''unknown-type'': illegal sizeof operand
                              ..\asdfasdf\main.cpp(10) : error C3861: 'LQUrl': identifier not found
                              ........\Qt\Qt5.0.0\5.0.0\msvc2010\include\QtCore/qstring.h(193) : warning C4200: nonstandard extension used : zero-sized array in struct/union
                              Cannot generate copy-ctor or copy-assignment operator when UDT contains a zero-sized array
                              ..\asdfasdf\main.cpp(10) : see reference to class template instantiation 'QStaticStringData<N>' being compiled
                              with
                              [
                              N=-1
                              ]
                              ..\asdfasdf\main.cpp(10) : error C3861: 'LQUrl': identifier not found
                              ..\asdfasdf\main.cpp(10) : error C2070: ''unknown-type'': illegal sizeof operand
                              ..\asdfasdf\main.cpp(10) : error C3861: 'LQUrl': identifier not found
                              ..\asdfasdf\main.cpp(10) : error C3861: 'LQUrl': identifier not found
                              jom: C:\Users\FBM\Desktop\asdfasdf-build-Desktop_Qt_5_0_0_MSVC2010_32bit_SDK-Release\Makefile.Release [release\main.obj] Error 2
                              jom: C:\Users\FBM\Desktop\asdfasdf-build-Desktop_Qt_5_0_0_MSVC2010_32bit_SDK-Release\Makefile [release] Error 2
                              17:11:53: The process "C:\Qt\Qt5.0.0\Tools\QtCreator\bin\jom.exe" exited with code 2.
                              Error while building/deploying project asdfasdf (kit: Desktop Qt 5.0.0 MSVC2010 32bit (SDK))
                              When executing step 'Make'

                              I don't have endpoint, I just have Checkpoints.

                              1 Reply Last reply
                              0
                              • T Offline
                                T Offline
                                tolszak
                                wrote on 1 Feb 2013, 18:16 last edited by
                                #15

                                Ehh sorry,
                                Y must include QUrl header in top of main.cpp
                                @
                                #include <QUrl>
                                @

                                and try again

                                1 Reply Last reply
                                0
                                • M Offline
                                  M Offline
                                  Muhammad
                                  wrote on 1 Feb 2013, 18:38 last edited by
                                  #16

                                  I included it and looks like I got the same errors

                                  20:37:14: Running steps for project asdfasdf...
                                  20:37:14: Configuration unchanged, skipping qmake step.
                                  20:37:14: Starting: "C:\Qt\Qt5.0.0\Tools\QtCreator\bin\jom.exe"
                                  C:\Qt\Qt5.0.0\Tools\QtCreator\bin\jom.exe -f Makefile.Release
                                  cl -c -nologo -Zm200 -Zc:wchar_t -O2 -MD -GR -W3 -w34100 -w34189 -EHsc -DUNICODE -DWIN32 -DQT_NO_DEBUG -DQT_QUICK_LIB -DQT_QML_LIB -DQT_NETWORK_LIB -DQT_GUI_LIB -DQT_CORE_LIB -DQT_OPENGL_ES_2 -DQT_OPENGL_ES_2_ANGLE -I"..\asdfasdf\qtquick2applicationviewer" -I"........\Qt\Qt5.0.0\5.0.0\msvc2010\include" -I"........\Qt\Qt5.0.0\5.0.0\msvc2010\include\QtQuick" -I"........\Qt\Qt5.0.0\5.0.0\msvc2010\include\QtQml" -I"........\Qt\Qt5.0.0\5.0.0\msvc2010\include\QtNetwork" -I"........\Qt\Qt5.0.0\5.0.0\msvc2010\include\QtGui" -I"........\Qt\Qt5.0.0\5.0.0\msvc2010\include\QtCore" -I"release" -I"." -I"........\Qt\Qt5.0.0\5.0.0\msvc2010\mkspecs\win32-msvc2010" -Forelease\ @C:\Users\FBM\AppData\Local\Temp\main.obj.2568.15.jom
                                  main.cpp
                                  Copying application data...
                                  1 File(s) copied
                                  Copying application data...
                                  1 File(s) copied
                                  ..\asdfasdf\main.cpp(10) : error C2070: ''unknown-type'': illegal sizeof operand
                                  ..\asdfasdf\main.cpp(10) : error C3861: 'LQUrl': identifier not found
                                  ........\Qt\Qt5.0.0\5.0.0\msvc2010\include\QtCore/qstring.h(193) : warning C4200: nonstandard extension used : zero-sized array in struct/union
                                  Cannot generate copy-ctor or copy-assignment operator when UDT contains a zero-sized array
                                  ..\asdfasdf\main.cpp(10) : see reference to class template instantiation 'QStaticStringData<N>' being compiled
                                  with
                                  [
                                  N=-1
                                  ]
                                  ..\asdfasdf\main.cpp(10) : error C3861: 'LQUrl': identifier not found
                                  ..\asdfasdf\main.cpp(10) : error C2070: ''unknown-type'': illegal sizeof operand
                                  ..\asdfasdf\main.cpp(10) : error C3861: 'LQUrl': identifier not found
                                  ..\asdfasdf\main.cpp(10) : error C3861: 'LQUrl': identifier not found
                                  jom: C:\Users\FBM\Desktop\asdfasdf-build-Desktop_Qt_5_0_0_MSVC2010_32bit_SDK-Release\Makefile.Release [release\main.obj] Error 2
                                  jom: C:\Users\FBM\Desktop\asdfasdf-build-Desktop_Qt_5_0_0_MSVC2010_32bit_SDK-Release\Makefile [release] Error 2
                                  20:37:17: The process "C:\Qt\Qt5.0.0\Tools\QtCreator\bin\jom.exe" exited with code 2.
                                  Error while building/deploying project asdfasdf (kit: Desktop Qt 5.0.0 MSVC2010 32bit (SDK))
                                  When executing step 'Make'

                                  I don't have endpoint, I just have Checkpoints.

                                  1 Reply Last reply
                                  0
                                  • T Offline
                                    T Offline
                                    tolszak
                                    wrote on 1 Feb 2013, 18:44 last edited by
                                    #17

                                    I think that you didn't recompile project or did not add QUrl include because error:
                                    ..\asdfasdf\main.cpp(10) : error C2070: ‘‘unknown-type’‘: illegal sizeof operand
                                    ..\asdfasdf\main.cpp(10) : error C3861: ‘LQUrl’: identifier not found

                                    Is still the same (the same line). If you added #include <QUrl> then error line would be 11 not 10.

                                    Try to add #include <QUrl> and clean and rebuild projects.

                                    I must say that i didn't use MS compiler for a couple of years and did not remeber complator errors but it's clearly looks like it doesn't have QUrl header.

                                    1 Reply Last reply
                                    0
                                    • M Offline
                                      M Offline
                                      Muhammad
                                      wrote on 2 Feb 2013, 11:42 last edited by
                                      #18

                                      I did include the <QUrl> , but the reason of the error being in the same line (10), is that I had an empty line between the headers and the main, So I just put the <QUrl> on it :)

                                      I don't have endpoint, I just have Checkpoints.

                                      1 Reply Last reply
                                      0
                                      • M Offline
                                        M Offline
                                        Muhammad
                                        wrote on 3 Feb 2013, 08:23 last edited by
                                        #19

                                        HURRAH, It might be a temporary solution, but I figured it out.
                                        I copied all the *.dll files in the this directory C:\Qt\Qt5.0.1\5.0.1\msvc2010\bin and paste it in the same folder with my *.exe file and it worked.
                                        The next step is to remove one file at a time and run the *.exe after every remove till I figure which files exactly the app needs.

                                        @tolszak Thank you very much for your help :)
                                        @qxoz Thank you very much for your help too :)

                                        I don't have endpoint, I just have Checkpoints.

                                        1 Reply Last reply
                                        0

                                        9/19

                                        1 Feb 2013, 13:51

                                        • Login

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