Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. Qt Development
  3. Installation and Deployment
  4. Opengl doesn't work with Qt
Forum Updated to NodeBB v4.3 + New Features

Opengl doesn't work with Qt

Scheduled Pinned Locked Moved Installation and Deployment
24 Posts 5 Posters 23.6k 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.
  • L Offline
    L Offline
    ludde
    wrote on last edited by
    #13

    You are saying that you can use GLUT from plain C++ code, but not from Qt code? In that case you must have it installed somewhere already. You just need to tell where, in your .pro file, so that qmake can find it. I.e., you must add something like:
    @
    LIBS += -lglut
    LIBS += -LC:/location/of/glut
    @
    I'm not sure this is what's missing, though. Since you don't get an error saying it cannot find the glut library. Looks like it actually finds it, but not the symbols it needs. Strange.

    Which compiler are you using? The same one you use when compiling plain C++ code?

    1 Reply Last reply
    0
    • F Offline
      F Offline
      fery13
      wrote on last edited by
      #14

      Yes I am using in plain C++ without problem,
      But I can not find any file like lglut in my pc(where can I get this file) ??????
      I have only glut, glut32 (header file and lib file )....
      but I never tried the second line which you mentioned above, I will try the second one seems by the second line error should be gone hopefully by the way now I uninstall the Qt and trying to get the new version as soon as I install I will apply this and I will let you know about it .... many many thanks to you that spend your time for my problem .....

      1 Reply Last reply
      0
      • U Offline
        U Offline
        ucomesdag
        wrote on last edited by
        #15

        -l stands for library and -L for library path, see "qmake doc":http://doc.qt.nokia.com/4.7/qmake-variable-reference.html#libs
        [quote author="fery13" date="1309197219"]Yes I am using in plain C++ without problem,
        But I can not find any file like lglut in my pc(where can I get this file) ??????
        I have only glut, glut32 (header file and lib file ).... [/quote]

        Write “Qt”, not “QT” (QuickTime).

        1 Reply Last reply
        0
        • L Offline
          L Offline
          ludde
          wrote on last edited by
          #16

          -lglut is like a command line option, which you use to tell qmake to use a library. -l is the option and glut the argument. On Windows, the file should be called glut.lib. -L is used to add a directory in which to look for libraries.

          I don't think this is the problem, though. It seems to find GLUT and is unable to link with it. Maybe you simply cannot do this, because using those functions mentioned above together with Qt really makes no sense.

          1 Reply Last reply
          0
          • U Offline
            U Offline
            ucomesdag
            wrote on last edited by
            #17

            Try @LIBS += -L/path/to/your/lib -lLibfile_without_exstension@

            Write “Qt”, not “QT” (QuickTime).

            1 Reply Last reply
            0
            • L Offline
              L Offline
              ludde
              wrote on last edited by
              #18

              Just had a look in my OpenGL installation, which is the one that comes with mingw / Qt Creator, and it contains glu, but not glut. So your glut must come from somewhere else.

              1 Reply Last reply
              0
              • F Offline
                F Offline
                fery13
                wrote on last edited by
                #19

                That's strange I tried all, but still errors, also I re install Qt ... here is my .pro:
                @
                #-------------------------------------------------

                Project created by QtCreator 2011-06-23T18:42:17

                #-------------------------------------------------

                TARGET = open1

                TEMPLATE = app

                DEPENDPATH += .

                INCLUDEPATH += .

                SOURCES += open1.cpp

                HEADERS += open1.h
                open1_global.h

                CONFIG += opengl
                release

                QT += opengl

                LIBS += -lglut
                LIBS += C:\Users\FGHASSEMIT\Documents\qt\GL\glut.lib
                @
                and here errors :

                :-1: error: cannot find -lglut
                :-1: error: collect2: ld returned 1 exit status

                .................
                this is the same if I write glut32 instead of glut ....
                :(

                Edit: Added @ tags

                1 Reply Last reply
                0
                • Z Offline
                  Z Offline
                  ZapB
                  wrote on last edited by
                  #20

                  Try also adding:

                  @
                  LIBS += -LC:/path/to/your/glut/lib
                  @

                  Nokia Certified Qt Specialist
                  Interested in hearing about Qt related work

                  1 Reply Last reply
                  0
                  • F Offline
                    F Offline
                    fery13
                    wrote on last edited by
                    #21

                    I did then I have again error :

                    :-1: error: LC:/Users/FGHASSEMIT/Documents/qt/GL/glut.lib: Invalid argument

                    I guess LC is used for Linux ....

                    1 Reply Last reply
                    0
                    • L Offline
                      L Offline
                      ludde
                      wrote on last edited by
                      #22

                      You are now trying to link with glut twice... Your .pro file should contain
                      @
                      LIBS += -lglut
                      LIBS += -LC:\Users\FGHASSEMIT\Documents\qt\GL
                      @
                      or just
                      @
                      LIBS += C:\Users\FGHASSEMIT\Documents\qt\GL\glut.lib
                      @
                      but not both.

                      Nevertheless, I think you should try to get rid of the glut dependency, because using it with Qt will most likely create problems.

                      1 Reply Last reply
                      0
                      • F Offline
                        F Offline
                        fery13
                        wrote on last edited by
                        #23

                        sorry I forget to put dash (-) behind so the errors turn to be like this :

                        C:\Users\FGHASSEMIT\open1\open1.cpp:-1: error: undefined reference to __glutInitWithExit' C:\Users\FGHASSEMIT\open1\open1.cpp:-1: error: undefined reference to glutInitDisplayMode'
                        C:\Users\FGHASSEMIT\open1\open1.cpp:-1: error: undefined reference to glutInitWindowSize' . . . C:\Users\FGHASSEMIT\open1\open1.cpp:-1: error: undefined reference to _imp__glBegin'
                        C:\Users\FGHASSEMIT\open1\open1.cpp:-1: error: undefined reference to _imp__glVertex2f' C:\Users\FGHASSEMIT\open1\open1.cpp:-1: error: undefined reference to _imp__glEnd'
                        C:\Users\FGHASSEMIT\open1\open1.cpp:-1: error: undefined reference to `_imp__glFlush'
                        :-1: error: collect2: ld returned 1 exit status

                        1 Reply Last reply
                        0
                        • Z Offline
                          Z Offline
                          ZapB
                          wrote on last edited by
                          #24

                          I agree with ludde. You are trying to use glut to reproduce functionality that is already in Qt. Some glut functions can still make sense to use within Qt (ie for drawing basic geometric shapes such as a sphere).

                          Take a look at my repository to see a few very simple OpenGL apps that use Qt rather than glut for the windowing functionality. Just use svn to checkout:

                          @
                          https://svn.theharmers.co.uk/svn/codes/public/opengl/trunk/
                          @

                          cd into one of the directories e.g. 06-solar-system then run:

                          @
                          qmake
                          make
                          @

                          Nokia Certified Qt Specialist
                          Interested in hearing about Qt related work

                          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