Results 1 to 6 of 6

Thread: Basic questions to debugging

Threaded View

Previous Post Previous Post   Next Post Next Post
  1. #1
    Join Date
    Dec 2011
    Location
    Jena, Germany
    Posts
    13
    Thanks
    2
    Qt products
    Qt4
    Platforms
    Windows

    Default Basic questions to debugging

    Hi!

    First of all my background: I am a biologist interested in programming, not a programmer. Nonetheless I worked my way into C++ and Qt in order to write a programm which plots A/D converter data, sets triggers etc. for a scientific application. After installing Qt and Qwt, which was very laborious for me, I managed to produce a programm which works suprisingly well. But when having a closer look at the log-file where adc data is exported to, I realised a sample interval of >= 4 ms, which is not enough for our applications (at least 0.1 ms should be reached). So now my idea was to perform a profiling in order to find the bottleneck in my code - and this is where the actual problem starts!

    I quickly stumbled over a profiler called callgrind (or valgrind) which would do the job for me - but it seems to be only for linux. I couldn't find any other freeware which seems to work well with Qt. When I tried "verysleepy", I couldn't find my functions in the statistics. Anyway, more and more I realized that I have to build a debug version of my code in order to use any profiling software(!?). But I'm not sure if this is possible with my installation of Qt/Qwt. I was just happy when I got it running, but didn't spend any attention on how I build Qt/Qwt or what this means for debugging, respectively. To give you an idea of how I installed Qt/Qwt, please have a look at this protocoll, which I luckily wrote in order to reproduce installation:

    • Download qt-sdk-win-opensource-2010.05.exe from http://qt.nokia.com/downloads/sdk-windows-cpp
    • This contains mingw, the Qt libraries version 4.7.0 and Qt Creator IDE version 2.0.1
    • Install this C:\Qt\2010.05\
    • Download qt-creator-2.0.1-src.zip
    • Unpack this to C:\qt-creator-2.0.1-src\
    • Add the line "CONFIG += release" to qtcreator.pro (after "CONFIG += ordered"), just to be sure
    • Create a new folder C:\qt-creator-2.0.1-build\
    • Enter the "Qt Command Prompt" via the Start menu and type:
      cd C:\qt-creator-2.0.1-build
      qmake ..\qt-creator-2.0.1-src\qtcreator.pro
      mingw32-make release
    • Create new system environment variable QTDIR and assign value C:\Qt\2010.05\qt
    • Add C:\Qt\2010.05\mingw\bin to system PATH (to make Mingw available. If you install Mingw seperately, than adjust path accordingly)
    • Add %QTDIR%\bin to system PATH (avoids copying of required Qt-dlls)
    • Download the newest version of qwt (6.0.1 ?) and unzip to C:\qwt-6.0.1
    • Add the line "CONFIG += release" to qwt.pro (after "CONFIG += ordered")
    • Follow qwt install manual. Briefly:
    • Open command shell, cd to Qwt-folder and type
      qmake qwt.pro -spec win32-g++ -r CONFIG+=release
      mingw32-make
      mingw32-make install
    • Type qmake -set QMAKEFEATURES C:/Qwt-6.0.1 so that QT can find the qwt.prf file
    • Copy qwt_designer_plugin.dll to C:\Qt\2010.05\qt\plugins\designer\
    • Copy qwt.dll to C:\qt-creator-2.0.1-build\bin\
    • Start C:\qt-creator-2.0.1-build\bin\qtcreator.exe
    • Create new project
    • Change project to release mode (left panel, near to bottom)
    • Add following lines to every .pro file:
      CONFIG += qwt (essential, points to qwt.prf file)
      CONFIG += release (probably essential)
      INCLUDEPATH += C:\Qwt-6.0.1\src (probably essential)
      DEFINES += QT_DLL \ (not sure)
      QWT_DLL (not sure)
    • If QWT-Wigets are not visible, try one or more of following things (not sure about their necessity):
    • Create new system environment variable INCLUDE and assign value %QTDIR%\include
    • Create new system environment variable LIB and assign value %QTDIR%\lib
    • Create new system environment variable QWTDIR and assign value C:\qwt-6.0.1
    • Create new system environment variable QMAKESPEC and assign value win32-g++
    • Enter the "Qt Command Prompt" via the Start menu and type:
      qmake -set Q_PLUGIN_PATH C:\qwt-6.0.1\designer\plugins\designer


    Here are are questions:
    1. Am I right with my assumption, that I installed Qt and Qwt in release mode?
    2. Does this mean, that I cannot build debug versions of my application?
    3. I have got the debug button, so do I have a debugger which was provided with Qt-SDK (like gdb or so)?
    4. Why does the program not stop at breakpoints?
    5. Why does is say "process couldn't be started" when I choose debug instead of release?
    6. What must my .pro file look like in order to debug or build a debug version? Do I have to add something like config += debug?
    7. If I am on the wrong track, where do I have to start to get to my goal (find the bottlenecks)?



    Any help would be appreciated. Please respect my background, so that I can understand you!

    Thank you!
    Last edited by emigrand; 23rd February 2012 at 21:37.

Similar Threads

  1. Replies: 3
    Last Post: 6th September 2010, 23:00
  2. Game programming basic questions?
    By unix7777 in forum Newbie
    Replies: 3
    Last Post: 20th February 2010, 17:16
  3. 2 basic questions?
    By unix7777 in forum Newbie
    Replies: 5
    Last Post: 28th January 2010, 09:44
  4. Basic Qt Questions
    By BalaQT in forum Qt Programming
    Replies: 1
    Last Post: 15th August 2009, 17:13
  5. a basic questions!!
    By unix7777 in forum Newbie
    Replies: 1
    Last Post: 28th March 2009, 19:10

Tags for this Thread

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  
Qt is a trademark of The Qt Company.