Error: Compiling legacy Souce code
-
wrote on 25 Feb 2018, 11:58 last edited by koahnig
@robrob said in Error: Compiling legacy Souce code:
Hi guys
Have heard about "antic" software then I have one.:).
I have a source code for a legacy application that I want to add few functionalities such write to file and then use it. The application was created using QtCreator in 2011-04-13 but I don't know which version. I am using QtCreator 2.5.0.
When I run qmake, there is no error but I build the project, it output error related to missing header file which I believe that they are legacy header files and are not supported by version 2.5.0. Each time there was only 1 or 2 errors which encourage me to search for the missing files on the net then copy and paste. Then each time a new error in and after a while, this seemed a boring and mammoth task .You got a pretty old Qt creator version, I suggest to upgrade to version 4.5
I got 4 questions:
1- Does QtCreator has its built in header library which is dependent on the QtCreator version or the defaults header files are picked from the Qt installed version?
No
2- What is the link between the Qtcreator version and the Qt version ?
Qt creator is an IDE and uses Qt library version as well. However, this is independent of the version you use for compiling your applciations. Basically you can use at least Qt 4 and Qt 5 with the same Qt creator version without problems. The Qt version for application is determined through the tool chain you have set up.
3- Any idea which which QtCreator version was used to create project dated on 13/04/2011.
You can dig through this or the archive here, but I consider as irrelvant. However, it seemed to be one of the very early version even version 1.
3- I found this website (https://doc.qt.io/archives/3.3/headers.html) which has the legacy header file and it is hug task to copy and paste individual files. Is there a folder or Git that contain all there files that I can download all of them at once?
The most important is that what the actual Qt library version was used for your application. Was it Qt 3 or Qt 4? I do not think that Qt 5 was already in place around there.
Which is the Qt lib version you are using now?
Thank you in advance.
NB:
Example of the used header files:#include "QtGui/qprinter.h"
#include "QtGui/qprintengine.h"
#include "QtGui/qpaintengine.h"
#include "QtCore/qt_windows.h"
#include "private/qpaintengine_alpha_p.h" -
wrote on 25 Feb 2018, 16:03 last edited by
Hi koahnig,
Thank you for the reply.
"You gat a pretty old Qt creator version, I suggest to upgrade to version 4.5"Sorry the QtCreator version was 4.5.0 intead of 2.5.0.
When I used this version there were lot of error related to header files missing. The application used headers file that are not supported by the Creator 4.5.0. I looked at these header and they are not user header but the part the IDE package, I think. This why I am looking for Creator version that created the project back in 2011."The most important is that what the actual Qt library version was used for your application. Was it Qt 3 or Qt 4? I do not think that Qt 5 was already in place around there."
It is hard to tell which Qt version. I think it is Qt 4.7.4 and MINGW530_32. I agree, it wasn't Qt 5.
"Which is the Qt lib version you are using now?"
I am trying different QtCreator and see if the error disappreaded. This morning, I tried QtCreator 2.3.0 which its About DialogBox info show that is based on Qt 4.7.4 and it was built on 31/08/2018. So I installed Qt 4.7.4 and I compiled the project using the creator 2.5.0.
This time all the error related to missing header file disappeared.
I got only:
Warning message : Qt: Untested Windows version 6.2 detected!
and Error messages:**g++: ../Build/debug/libsa430dbg.a: No such file or directory
g++: C:/Qt/4.7.4/lib/libqwtd.a: No such file or directory**
It seems to me that this Creator version has the built in header files and this is why there is no error related to missing header or maybe I did spoke too soon.
The other two error, I haven't the slight clue.
Any idea? -
Hi koahnig,
Thank you for the reply.
"You gat a pretty old Qt creator version, I suggest to upgrade to version 4.5"Sorry the QtCreator version was 4.5.0 intead of 2.5.0.
When I used this version there were lot of error related to header files missing. The application used headers file that are not supported by the Creator 4.5.0. I looked at these header and they are not user header but the part the IDE package, I think. This why I am looking for Creator version that created the project back in 2011."The most important is that what the actual Qt library version was used for your application. Was it Qt 3 or Qt 4? I do not think that Qt 5 was already in place around there."
It is hard to tell which Qt version. I think it is Qt 4.7.4 and MINGW530_32. I agree, it wasn't Qt 5.
"Which is the Qt lib version you are using now?"
I am trying different QtCreator and see if the error disappreaded. This morning, I tried QtCreator 2.3.0 which its About DialogBox info show that is based on Qt 4.7.4 and it was built on 31/08/2018. So I installed Qt 4.7.4 and I compiled the project using the creator 2.5.0.
This time all the error related to missing header file disappeared.
I got only:
Warning message : Qt: Untested Windows version 6.2 detected!
and Error messages:**g++: ../Build/debug/libsa430dbg.a: No such file or directory
g++: C:/Qt/4.7.4/lib/libqwtd.a: No such file or directory**
It seems to me that this Creator version has the built in header files and this is why there is no error related to missing header or maybe I did spoke too soon.
The other two error, I haven't the slight clue.
Any idea?Hi @robrob,
once again: Qt Creator has nothing todo with the header files needed for building your application.
Important it the Qt version. And as @koahnig already said, you can use an older Qt version together with a newer Qt Creator. E.g. I'm using Qt Creator 4.5 together with Qt 4.8.2 and Qt 5.9.4 on Windows 7.
Which Windows version are you using?
-
Hi koahnig,
Thank you for the reply.
"You gat a pretty old Qt creator version, I suggest to upgrade to version 4.5"Sorry the QtCreator version was 4.5.0 intead of 2.5.0.
When I used this version there were lot of error related to header files missing. The application used headers file that are not supported by the Creator 4.5.0. I looked at these header and they are not user header but the part the IDE package, I think. This why I am looking for Creator version that created the project back in 2011."The most important is that what the actual Qt library version was used for your application. Was it Qt 3 or Qt 4? I do not think that Qt 5 was already in place around there."
It is hard to tell which Qt version. I think it is Qt 4.7.4 and MINGW530_32. I agree, it wasn't Qt 5.
"Which is the Qt lib version you are using now?"
I am trying different QtCreator and see if the error disappreaded. This morning, I tried QtCreator 2.3.0 which its About DialogBox info show that is based on Qt 4.7.4 and it was built on 31/08/2018. So I installed Qt 4.7.4 and I compiled the project using the creator 2.5.0.
This time all the error related to missing header file disappeared.
I got only:
Warning message : Qt: Untested Windows version 6.2 detected!
and Error messages:**g++: ../Build/debug/libsa430dbg.a: No such file or directory
g++: C:/Qt/4.7.4/lib/libqwtd.a: No such file or directory**
It seems to me that this Creator version has the built in header files and this is why there is no error related to missing header or maybe I did spoke too soon.
The other two error, I haven't the slight clue.
Any idea?wrote on 25 Feb 2018, 17:24 last edited by@robrob said in Error: Compiling legacy Souce code:
I got only:
Warning message : Qt: Untested Windows version 6.2 detected!What is that?
I recommend that you are installing Qt creator with online installer from there either commercial or open source version.
The online installer forces you to use the newest version of Qt creator. With the online installer you should be able to install also older Qt lib versions with the correct compiler version. At least you will have something which should work.
AFAIK you should be able to install Qt 4.7 and recompile. Typically all is setup correctly.
-
Hi @robrob,
once again: Qt Creator has nothing todo with the header files needed for building your application.
Important it the Qt version. And as @koahnig already said, you can use an older Qt version together with a newer Qt Creator. E.g. I'm using Qt Creator 4.5 together with Qt 4.8.2 and Qt 5.9.4 on Windows 7.
Which Windows version are you using?
wrote on 25 Feb 2018, 20:58 last edited byHi Koahnig,
Thank you for the reply.I am suing Window10 64-bit.
-
Hi,
This version of Windows wasn’t even in development when 4.7 was released.
You should consider using 4.8.7 which is the latest and last of the Qt 4 series if you can’t upgrade to Qt 5.
-
wrote on 25 Feb 2018, 21:02 last edited by
Sorry, I meant to say hi aha_1980
-
Hi @robrob,
once again: Qt Creator has nothing todo with the header files needed for building your application.
Important it the Qt version. And as @koahnig already said, you can use an older Qt version together with a newer Qt Creator. E.g. I'm using Qt Creator 4.5 together with Qt 4.8.2 and Qt 5.9.4 on Windows 7.
Which Windows version are you using?
wrote on 25 Feb 2018, 21:16 last edited by -
Hi,
You setup the Kits, then you can choose which one you want to use with your project.
-
wrote on 25 Feb 2018, 21:30 last edited by
Hi SGaist and thank you for the reply.
You setup the Kits, then you can choose which one you want to use with your project.
Is it by going to Option -->Qt4 --->Qt version tab---> add
then choose the qmake relative the wanted Qt version. -
Hi,
This version of Windows wasn’t even in development when 4.7 was released.
You should consider using 4.8.7 which is the latest and last of the Qt 4 series if you can’t upgrade to Qt 5.
wrote on 25 Feb 2018, 21:33 last edited byYou should consider using 4.8.7
Does this version include these header files https://doc.qt.io/archives/3.3/headers.html? -
If your Qt version is not already listed then yes, first add it and then create a Kit using it.
Take a look at the Qt Creator documentation on the subject.
-
If your Qt version is not already listed then yes, first add it and then create a Kit using it.
Take a look at the Qt Creator documentation on the subject.
wrote on 25 Feb 2018, 22:02 last edited by@SGaist
About The Qt Creator version and the Qt version. When I pressed Help-->About Qt Creator to see which version I have the following for version 2.3.0:
"Version 2.3.0 based on Qt 4.7.4 (32bits)"
This made me believe that this version of Qt Creator work only with Qt 4.7.4. Am I got it wrong ? -
Yes you are wrong.
As already explained, Qt Creator is an IDE. What you see in the about box just tells you the version of Qt used to build Q Creator and that you would have to use if you were to build a plugin to be used by that version of Qt Creator.
It doesn’t matter for the various versions of Qt you want to use to build your applications/libraries.
-
Yes you are wrong.
As already explained, Qt Creator is an IDE. What you see in the about box just tells you the version of Qt used to build Q Creator and that you would have to use if you were to build a plugin to be used by that version of Qt Creator.
It doesn’t matter for the various versions of Qt you want to use to build your applications/libraries.
-
Yes you are wrong.
As already explained, Qt Creator is an IDE. What you see in the about box just tells you the version of Qt used to build Q Creator and that you would have to use if you were to build a plugin to be used by that version of Qt Creator.
It doesn’t matter for the various versions of Qt you want to use to build your applications/libraries.
wrote on 25 Feb 2018, 22:26 last edited byFor example if i use the following in my file
#include <QMessageBox>
#include <QColor>
#include <QColorDialog>
#include <QUrl>
#include <QDesktopServices>Does the Qt contain these header file or where they live because they are not user defined header?
-
For example if i use the following in my file
#include <QMessageBox>
#include <QColor>
#include <QColorDialog>
#include <QUrl>
#include <QDesktopServices>Does the Qt contain these header file or where they live because they are not user defined header?
@robrob said in Error: Compiling legacy Souce code:
Does the Qt contain these header file or where they live because they are not user defined header?
Yeah, they are part of Qt, and also the corresponding shared libraries.
You can easily find them by looking into your Qt installation directory.
-
@robrob said in Error: Compiling legacy Souce code:
Does the Qt contain these header file or where they live because they are not user defined header?
Yeah, they are part of Qt, and also the corresponding shared libraries.
You can easily find them by looking into your Qt installation directory.
wrote on 26 Feb 2018, 12:34 last edited byThanks guys for the help.
I think now I understand the principle of Qt and Qt Creator.
So the build process doesn't generate error related to legacy include files.
However there is error which I don't have a clue what is about.
Below is the output of the compiler:Running build steps for project SA430Gui...
Configuration unchanged, skipping qmake step.
Starting: "C:\Qt\qtcreator-2.2.0\mingw\bin\mingw32-make.exe"
c:\qt\4.7.4\bin\qmake.exe -spec c:\Qt\4.7.4\mkspecs\win32-g++ -o Makefile ..\Src\SA430Gui.pro
Qt: Untested Windows version 6.2 detected!
Qt: Untested Windows version 6.2 detected!
Qt: Untested Windows version 6.2 detected!
Qt: Untested Windows version 6.2 detected!
Qt: Untested Windows version 6.2 detected!
Qt: Untested Windows version 6.2 detected!
Qt: Untested Windows version 6.2 detected!
C:/Qt/qtcreator-2.2.0/mingw/bin/mingw32-make -f Makefile.Debug
mingw32-make[1]: Entering directoryC:/Users/rabmerab/Documents/Qt projects/SA430.Gui1/V2.0/SA430Gui-build-desktop' g++ -mthreads -Wl,-subsystem,windows -o debug\SA430GuiDbg.exe object_script.SA430GuiDbg.Debug -L"c:\Qt\4.7.4\lib" -lmingw32 -lqtmaind debug\Manifest_res.o ../Build/debug/libsa430dbg.a C:/Qt/qwt-6.0.0/lib/libqwtd.a -lQtXmld4 -lQtGuid4 -lQtCored4 mingw32-make[1]: Leaving directory
C:/Users/rabmerab/Documents/Qt projects/SA430.Gui1/V2.0/SA430Gui-build-desktop'
g++: ../Build/debug/libsa430dbg.a: No such file or directory
g++: C:/Qt/qwt-6.0.0/lib/libqwtd.a: No such file or directory
mingw32-make[1]: *** [debug\SA430GuiDbg.exe] Error 1
mingw32-make: *** [debug] Error 2
The process "C:\Qt\qtcreator-2.2.0\mingw\bin\mingw32-make.exe" exited with code 2.
Error while building project SA430Gui (target: Desktop)
When executing build step 'Make'END of Compiler output.
The two errors are highlighted in bold font
There is no much information why it failed.The config part (from the SA430GUI.pro) are below:
CONFIG(debug, debug|release){
LIBS += ../Build/debug/libsa430dbg.a
LIBS += C:/Qt/qwt-6.0.0/lib/libqwtd.a
TARGET = SA430GuiDbg
}else{
LIBS += ../Build/release/libsa430.a
LIBS += C:/Qt/qwt-6.0.0/lib/libqwt.a
TARGET = SA430Gui
}Just to remind that this an open source code that was given to me. It is a legacy code (2011).
In desperate help please!
NB: I don't mind sharing the source code with anyone who want to look at it. -
Thanks guys for the help.
I think now I understand the principle of Qt and Qt Creator.
So the build process doesn't generate error related to legacy include files.
However there is error which I don't have a clue what is about.
Below is the output of the compiler:Running build steps for project SA430Gui...
Configuration unchanged, skipping qmake step.
Starting: "C:\Qt\qtcreator-2.2.0\mingw\bin\mingw32-make.exe"
c:\qt\4.7.4\bin\qmake.exe -spec c:\Qt\4.7.4\mkspecs\win32-g++ -o Makefile ..\Src\SA430Gui.pro
Qt: Untested Windows version 6.2 detected!
Qt: Untested Windows version 6.2 detected!
Qt: Untested Windows version 6.2 detected!
Qt: Untested Windows version 6.2 detected!
Qt: Untested Windows version 6.2 detected!
Qt: Untested Windows version 6.2 detected!
Qt: Untested Windows version 6.2 detected!
C:/Qt/qtcreator-2.2.0/mingw/bin/mingw32-make -f Makefile.Debug
mingw32-make[1]: Entering directoryC:/Users/rabmerab/Documents/Qt projects/SA430.Gui1/V2.0/SA430Gui-build-desktop' g++ -mthreads -Wl,-subsystem,windows -o debug\SA430GuiDbg.exe object_script.SA430GuiDbg.Debug -L"c:\Qt\4.7.4\lib" -lmingw32 -lqtmaind debug\Manifest_res.o ../Build/debug/libsa430dbg.a C:/Qt/qwt-6.0.0/lib/libqwtd.a -lQtXmld4 -lQtGuid4 -lQtCored4 mingw32-make[1]: Leaving directory
C:/Users/rabmerab/Documents/Qt projects/SA430.Gui1/V2.0/SA430Gui-build-desktop'
g++: ../Build/debug/libsa430dbg.a: No such file or directory
g++: C:/Qt/qwt-6.0.0/lib/libqwtd.a: No such file or directory
mingw32-make[1]: *** [debug\SA430GuiDbg.exe] Error 1
mingw32-make: *** [debug] Error 2
The process "C:\Qt\qtcreator-2.2.0\mingw\bin\mingw32-make.exe" exited with code 2.
Error while building project SA430Gui (target: Desktop)
When executing build step 'Make'END of Compiler output.
The two errors are highlighted in bold font
There is no much information why it failed.The config part (from the SA430GUI.pro) are below:
CONFIG(debug, debug|release){
LIBS += ../Build/debug/libsa430dbg.a
LIBS += C:/Qt/qwt-6.0.0/lib/libqwtd.a
TARGET = SA430GuiDbg
}else{
LIBS += ../Build/release/libsa430.a
LIBS += C:/Qt/qwt-6.0.0/lib/libqwt.a
TARGET = SA430Gui
}Just to remind that this an open source code that was given to me. It is a legacy code (2011).
In desperate help please!
NB: I don't mind sharing the source code with anyone who want to look at it.@robrob said in Error: Compiling legacy Souce code:
g++: ../Build/debug/libsa430dbg.a: No such file or directory
g++: C:/Qt/qwt-6.0.0/lib/libqwtd.a: No such file or directoryThis looks ugly :-)
Especially LIBS += C:/Qt/qwt-6.0.0/lib/libqwt.a is really, well, bad.
Do you have these files in this directories? -
wrote on 26 Feb 2018, 12:53 last edited by
Especially LIBS += C:/Qt/qwt-6.0.0/lib/libqwt.a is really, well, bad.
Do you have these files in this directories?I searched for them and I couldn't find any.
Also the folder C:\Qt\qwt-600 doesn't have lib subfolder.
Strange is it?
11/44