[Solved] Doxygen for Qt Creator 2.7.0
-
wrote on 19 Jun 2013, 14:21 last edited by
Ok.... so I took your thoughts and assumed there is something wrong with my setup and started over. When reading through the readme I noticed that after the part saying that you need to run qmake -r, further down there is a list of pre-requisites like GIT and active state perl. I did not expect the pre-requisites to be after the qmake command :o
So I installed both of these (I assume it was perl that I was missing). Also when I run "sh.exe" it runs a shell, that should not happen either apparently if that happens your build will fail!
So after going through these steps with a fine-toothed comb I think the build is now running :) ... currently it is reading its way through various .pro files and is taking quite a long time so I will wait for that to finish and report back!
Once I get doygen working I am going to write a detailed wiki!! :o
So if this works I may still need a few more pointers and all help so far has been really appreciated :)
-
wrote on 19 Jun 2013, 14:37 last edited by
hmmm.....ok I am running through step 10:
@ 10. You are now ready to configure and build Qt and Qt Creator.
To use MinGW, open the the shell prompt and enter:cd qt configure -debug && mingw32-make -s cd ..\creator qmake && mingw32-make -s@
I have just entered the configure line.... its doing a load of stuff, but I have a bad feeling that this is re-compiling my Qt for static builds... is this the case? - I really did not mean to do that. Can someone confirm what that actually does?
Thanks! -
wrote on 19 Jun 2013, 14:54 last edited by
damn..... and finally when I try the last command it fails ....noo :(
command: qmake && mingw32-make -s
here is the output:
@C:\Qt\qt-creator-2.7.0-src>qmake && mingw32-make -s
./release\pluginmanager.o: file not recognized: File truncated
collect2.exe: error: ld returned 1 exit status
Makefile.Release:112: recipe for target '......\lib\qt
mingw32-make[3]: *** [......\lib\qtcreator\ExtensionSy
Makefile:34: recipe for target 'release' failed
mingw32-make[2]: *** [release] Error 2
Makefile:86: recipe for target 'sub-libs-extensionsystem
mingw32-make[1]: *** [sub-libs-extensionsystem-make_firs
makefile:40: recipe for target 'sub-src-make_first-order
mingw32-make: *** [sub-src-make_first-ordered] Error 2@pluginmanager.o does exist here: C:\Qt\qt-creator-2.7.0-src\src\libs\extensionsystem\release
I think I am running out of ideas.... should it not be simple to build this qt creator project. How are other people doing it?
Any further advice appreciated
-
wrote on 19 Jun 2013, 15:28 last edited by
It should be fairly easy. It wasn't an issue for me end of last year.
qt creator was still based on 4.74, IIRC. I simply downloaded Qt creator 2.6.0 and followed the instructions and linked with my Qt 4.8.3(?) version which was readily compiled with MinGW already. So, I was skipping all stuff related to Qt lib compilation.
Unfortunately, I do not use Qt 5 yet. Otherwise I would try to do a creator compilation myself. Maybe I have a look with Qt4.8.4 over the weekend.How did you solve the MAKEFILE_GENERATOR problem?
Was it simply by following the recipe? -
wrote on 19 Jun 2013, 15:37 last edited by
Yeah the make file gen issue... basically I located where qmake is (for me it is slightly different, perhaps a change in qt5).
Then I installed active state python.
Then I removed the path of where "sh.exe" is located. I ended up with a batch file like this:
@@echo off
set PATH=C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\tools\MinGW\msys\1.0\bin;
set PATH=C:\Perl\site\bin;C:\Perl\bin;C:\Qt\Qt5.0.2\5.0.2\mingw47_32\bin;C:\Qt\Qt5.0.2\Tools\MinGW\bin;C:\Qt\Qt5.0.2\Tools\QtCreator\creator\bin;C:\Qt\Qt5.0.2\5.0.2\Src\qtbase;%PATH%
echo %PATH%
set QMAKESPEC=win32-g++
cd C:\Qt\qt-creator-2.7.0-src
cmd@Where I took advice from earlier to clean out the PATH so it has only what I need. Then that issue went away :)
Maybe I can find a clean machine later and try with older Qt versions, but the idea for me was to make doxygen work with qt sdk 5.0.2 (therefore qt 5.0.2 / qtcreater 2.7.0), so going back to qt 4 for me would defeat my goal :o
-
wrote on 19 Jun 2013, 15:51 last edited by
Well, I shy away from changing to Qt5 yet. Never change a running configuration :D As long as Qt 4.8.4 works fine I do not see a reason. AFAIK Qt creator has been compiled and linked for/with Qt 5, so you are not the first one.
I am really wondering what the issue could be. -
wrote on 19 Jun 2013, 17:51 last edited by
koahnig... don't be so shy please! ...lol
Thanks for your help, really appreciate it. I will continue this in the background and try on a fresh PC. Its maybe worth trying the Qt4 just so that I can go through the process and see it work / get more experience... I'll leave the post open until I give up :o ... or succeed :) -
wrote on 20 Jun 2013, 19:11 last edited by
Well, the issue is, if you start to change it looks easy at the start, but cost you a lot of hair at the end. The change from Qt4.8 to Qt 5 is not a minor sugery.
Therefore, I shy away to change. Better shy than sorry :D -
wrote on 21 Jun 2013, 09:47 last edited by
...hey... what keeps happening to my posts?, I have re-written my list of instructions 2 times!, and koahning you replied to one of them... and even that is gone. Have we reached the max limit of the number of pages?
-
wrote on 21 Jun 2013, 12:05 last edited by
There is no max number of pages AFAIK.
You are right my reply from this morning is gone as well.
Do you write a bug report on this strange thing?It is not the first time I wondered what happened.
-
wrote on 21 Jun 2013, 17:28 last edited by
no.... I have never written one, Ill have to see how do that.
I had a question for you in my lost post. I built the doxygen project in the end :D
however, there is no dll output from it, I am not sure what to do with the output to use it with my QtCreator... any hint?
Thanks :)
-
wrote on 21 Jun 2013, 18:57 last edited by
There should be a dll.
...\creator_build\lib\qtcreator\plugins\QtProject\Doxygen.dll
...\creator_build\lib\qtcreator\plugins\QtProject\Doxygen.pluginspec
are the places where I placed them. It is the same spot as the standard creator plugins are.
At the of the qmake run it should have told you where the DESTDIR is. -
wrote on 21 Jun 2013, 19:17 last edited by
Placed a bug report "QTWEBSITE-527":https://bugreports.qt-project.org/browse/QTWEBSITE-527
A bit hard to describe what happened.Anyway I had started "a thread on this issue":http://qt-project.org/forums/viewthread/29122/ already earlier today.
-
wrote on 21 Jun 2013, 21:27 last edited by
nice one for the bug report :)
Also I found that dll, it was not in the output folder it was in a new folder:
C:\Qt\qtcreator-doxygen\lib\qtcreator\plugins\KofeeBut as you said it was specified in the comments of the .pro file :D
So, I am on my clean PC I will transfer/copy these files to the correct location on my dev PC with the doxygen plugin.
You mentioned modifying the pluginspec file... it looks ok to me, ill try it as it is first see what happens :)
Nearly there!, I was starting to doubt :o
-
wrote on 22 Jun 2013, 09:32 last edited by
The pluginspec I have updated to reflect the exact new version (2.6.0 in my case). I was wondering if this is required, since one would expect to specify the minimum version of compatibility.
Also the other pluginspecs seem to be the current version and it did not hurt :-) -
wrote on 24 Jun 2013, 10:42 last edited by
(this might be a repeat... another post was lost :o)
I have now built QtCreator 2.7.0 and then doxygen and got the dll and plugin spec.
I checked the pluginspec (all versions where 2.7.0) so all looked good. Then I copied the dll and plugin spec into my plugins folder:
- Qt\Qt5.0.2\Tools\QtCreator\lib\qtcreator\plugins\Kofee\
But I get this error and am not sure where to go next:
bq. C:\Qt\Qt5.0.2\Tools\QtCreator\lib\qtcreator\plugins\Kofee\Doxygen.dll: Cannot load library C:/Qt/Qt5.0.2/Tools/QtCreator/lib/qtcreator/plugins/Kofee/Doxygen.dll: The specified procedure could not be found.
-
wrote on 24 Jun 2013, 11:03 last edited by
I have copied the dll and the pluginspec into the folder where the other plugins reside. The plugin is loaded from there. I do not remember if I did because it was logical or for some other reason. :-(
-
wrote on 24 Jun 2013, 11:07 last edited by
Sorry koahnig, I did not quite understand what you mean in your last post. Should move the dll/plugin spec to a different location?
-
wrote on 24 Jun 2013, 12:48 last edited by
To me it looks like you load the plugin from the build folder "...\QtCreator\lib\qtcreator\plugins\Kofee\
With building the creator itself there is a folder ...\creator_build\lib\qtcreator\plugins\QtProject\ AFAIK it contains all plugins as shipped with creator (e.g. CppEditor.dll, ClassView.dll, and all the others).
I have copied the Doxygen.dll and its pluginspec to this folder. This works in my case.
However, I do not remember why I can find the dll and pluginspec there. Done it half a year ago. Did I move for a reason or not? No glue :-(
I adapted the Doxygen plugin for my needs and I did a couple of recompilations. Therefore, I had set the destination folder to this folder at some point. That I do remember, but not why I ended up to place the stuff this way. -
wrote on 26 Jun 2013, 09:18 last edited by
Hey.... it took me a while to understand what is going on, but I think I figured it out (well, at least figured out how to get it to work).
So, I see the location that you mentioned, I don't think that matters where you put it :)
What I was doing is:
- Building QtCreator 2.7.0
- Building Doxygen plugin for 2.7.0
- Taking the doxygen plugin and putting it in the lib folder of my SDK 5.0.2 version of QtCreator 2.7.0
This gave me the error:
bq. C:\Qt\Qt5.0.2\Tools\QtCreator\lib\qtcreator\plugins\Kofee\Doxygen.dll: Cannot load library C:/Qt/Qt5.0.2/Tools/QtCreator/lib/qtcreator/plugins/Kofee/Doxygen.dll: The specified procedure could not be found.
So then I put the built version of QtCreator libraries into my SDK QtCreator libraries folder (and replaced the existing ones) and I got similar errors! - this was very strange to me because I was assuming the two should be identical.
Then I replaced the old Qt 2.7.0 with my built Qt 2.7.0 and added Doxygen to the libs folder (under the koffee folder) and it all worked!
The only slight difference I seem to have now is that when I run old Qt 2.7.0 directly from the .exe it runs fine. But when I run new Qt it can't find all the dlls (like core.dll) so I have to add the paths first.... but how does old Qt work?, somehow the exe must know the paths....
Well I can add the paths to the PATH variable and be done with it!
Thanks for all help :), I will wiki it at some point as it seems to be an operation that can go wrong if you don't know what you are doing :o
40/54