QtCreator plugin for cppcheck, krazy and other tools
-
wrote on 18 Mar 2013, 16:43 last edited by
Hello,
This tool can used as qtcreator plugin to some other tools when using project files managed by qmake.
homepage is https://sourceforge.net/projects/qtprojecttool/
A manual and configuration files can be found at https://sourceforge.net/projects/qtprojecttool/files/
It works in Qt4 and Qt5.
Regards,
Carlos -
wrote on 19 Mar 2013, 14:36 last edited by
How does that Creator plugin work?
You seem to just call the command line tool... how do you get the output from there into the build issues?
-
wrote on 19 Mar 2013, 18:19 last edited by
Hi,
When running inside Creator you must use the switch -qtc-plugin, it generates the issue pane.
The information in issues pane is generated after "cppcheck" or "krazy" finishes.
In the manual, the chapter "3 Using “qpt” with QtCreator (qtcreator)" gives an example.
Best Regards,
Carlos -
wrote on 19 Mar 2013, 19:56 last edited by
How does it work technically? Is your plugin parsing the output of those tools and inserts the issues itself or is it using the task list plugin to display the list of issues?
-
wrote on 19 Mar 2013, 21:45 last edited by
When --qtc-plugin is NOT present, it just prints out the commands output "cppcheck" or "krazy"
When --qtc-plugin is present, it does:
parses the command output generating a tasks files,
see http://qt-project.org/doc/qtcreator-2.6/creator-task-lists.html
call qtcreator back using the options: -client -pid, passing the tasks file, then qtcreator opens the tasks file and put the content into issues pane
After few time removes the tasks file
So, if you execute the "qpt" outside qtcreator using --qtc-plugin it should also works.
-
wrote on 20 Mar 2013, 09:49 last edited by
Cool, thanks for the information.
-
wrote on 11 Apr 2013, 16:36 last edited by
Hi,
Is your plugin supposed to compile under Windows? -
wrote on 11 Apr 2013, 17:43 last edited by
Yes, I took some care of it.
But I have not tested it since I do not use Windows.
If you have any problem let me know.
-
wrote on 11 Apr 2013, 18:19 last edited by
my compiler doesn't seem to find include file
#include <unistd.h>As far as I understand, it's a unix file only
-
wrote on 11 Apr 2013, 18:29 last edited by
YES, it is, try to remove this line.
-
wrote on 12 Apr 2013, 12:33 last edited by
by removing that line, I have the following error
qcommandline.cpp:32:
error: C2491: 'QCommandLine::helpEntry' : definition of dllimport static data member not allowed -
wrote on 12 Apr 2013, 19:05 last edited by
I am using this module QCommandLine, it is also open source and I got it from http://xf.iksaif.net/dev/qcommandline.html.
I am sorry, I am not able to help at this point unless I try to compile on Windows, I do not have any Windows compiler.
I think that is in the link process and you are close to compile it.
Once you get it compiled, qmake and qtcreator must be in the PATH in order to work.
Try to research about this problem or contact the QCommandLine author.
-
wrote on 3 Jun 2013, 11:21 last edited by
I would recommend it, but given the hassle to set things up I'd give 4/5 stars. In addition to the manual, using windows there are couple of things to bear in mind:
- in the arguments field during setting up, be aware that unless you set cppcheck in your environment paths, "--tool=cppcheck" does not work. You'll need to set the directory:
@--qtc-plugin --tool="C:/Cppcheck-1.55/cppcheck.exe" %{CurrentProject:FilePath} @
-
You'll need to set an environment paths to QtCreator(usually in C:\Qt\Qt5.0.2\Tools\QtCreator\bin). Without this the warning messages from cppcheck does not show up in the issues pane
-
Don't use cppcheck 1.60. In qpt 0.7, it doesn't work. I got things running with cppcheck 1.55.
And thus, a happy user of QtProjectTool! :D
!https://lh6.googleusercontent.com/-byu0-9Dqaro/UayAScAJ3gI/AAAAAAAABWc/nw5Ld_YStvw/w617-h585-no/QtProjectTool+Screenshot.png(QtProjectTool running in windows 7)!
windows 7 32bit, Qt 5.0.2 MinGW, cppcheck 1.55
-
wrote on 3 Jun 2013, 20:17 last edited by
OK, Thanks.
I got a Windows machine and I am able to work on that now.
qpt 0.8 version will work better on Windows and the manual will be updated.
-
wrote on 18 Jun 2013, 14:02 last edited by
Not a very good method for tool version check:
you are getting the numeric part and blindly converting to double. Well, it's a bit optimistic assumption that a version number will be a valid numeric value!In fact, now that cppcheck went up to version 1.60.1, QPT happily states that "Tool cppcheck-gui requires a minimal version 1.55".
-
wrote on 18 Jun 2013, 14:23 last edited by
It is a bug and will be fixed soon.
As a work around try to edit the configuration file, qpt prints the path of the configuration file when it starts.
It is usually located at $HOME/.config/QtProjectTool/qpt.initry to clear the minimal version line, change:
Mininal_version_USE_only_digist_and_dot_it_will_be_converted_to_float=1.58
to
Mininal_version_USE_only_digist_and_dot_it_will_be_converted_to_float=
That should work.
-
wrote on 18 Jun 2013, 14:44 last edited by
I did it the other way :)
Created a QByteArray w2 where to copy all the numbers without any punctuation sign. So 1.60.1 ends up being 1601 which is greater than 1.55
Maybe it's a good idea for version checking (I didn't stop to think about implications of doing this... it was just a workaround) -
wrote on 20 Jul 2013, 17:37 last edited by
Hello,
Version 0.8 has been released with some improvements, see "RELEASE NOTES":http://sourceforge.net/projects/qtprojecttool/files/RELEASE_NOTES.txt/download
-
wrote on 20 Jul 2013, 17:46 last edited by
Version 0.8 has been released with some improvements, the main work was done to have a better Windows version.
See "RELEASE NOTES":http://sourceforge.net/projects/qtprojecttool/files/RELEASE_NOTES.txt/download
-
wrote on 21 Aug 2013, 09:06 last edited by
Thank you for your tool! But I get question marks in the file paths with non-latin letters (e.g. cyrillic letters)
@$qpt -A CET.pro/home/alex/Projects/??????/src/main.cpp
/home/alex/Projects/??????/src/mainwindow.cpp
/home/alex/Projects/??????/src/mainwindow.h@