[Solved .. kindof ..] Issues opening 4.6.3 Project from Creator 2.4.1 in latest Qt5 creator
I need to work on a project that I have worked on last year on a PC with W7x86 with SDKv1.2.1 (Creator 2.4.1) based on Qt 4.6.3 for an embedded Linux device (cross-compiled). That worked perfectly.
I now have a new (faster :-) PC with W7x64 and have downloaded and installed the latest 5.0.1-mingw environment as well as the 4.6.3-mingw package - actually the same as before except for the new SDK (Creator).
When I now try to open the project I get a message that the settings in .user are from a different user and machine .. . When I hit to load it anyway - I assume that this is the correct way to open it - Qt creator locks up and has to be killed.
What did I miss, or how do I open this project from the new machine with a later Qt-creator?
Lockup might be a bug, but in general .pro.user files should never be reused. They are installation-specific and can change significantly between Qt Creator releases. Delete the .user file and reopen your project.
Will the user file always be recreated when going to another machine?
Do I have to re-configure everything when deleting this file?
Yes, Qt Creator always creates it, also for newer versions on the same machine. This file hooks into current Kits configuration, so there is no point in preserving it between PCs or QtC builds.
You should have all the configuration in your .pro file (if you are using qmake). Qt Creator will only ask you which Kit to use and if shadow building is desired.
Creator will upgrade the file going from one version to the next (keeping a copy of the original version https://qt-project.org/forums/viewthread/25207/around). It is just not save to share the .user files between different installations of Creator (on different machines, or even the same machine but using separate sets of settings).
I would greatly appreciate some feedback as to where creator locks up. Maybe you could get a stack trace once creator has locked up and file a bug report with this information? It should obviously never lock up when presented with unexpected input.
Since I have hit "No" to not load it, it did open the project and I did not see this message again so far.
However, I can still not compile the same project on the new machine/version, while it still can be compiled on the old machine - which I'm worried more currently and I am thinking of removing the new version and try to install the older version.
If it is very important to you I can try to replace the files from the backup and maybe can create the lockup again. You need to tell me how to get the stack trace you need if you'd like this.
IF you have copied the data together with .user, maybe you have also copied build objects. Try doing a full clean of your poject, rerun qmake, etc.
Those can be issues with cross-compiling, though. Hard to tell without more data.
I don't think it has to do with the cross-compiling since I still can open and compile the same project on my old windows environment as well as from linux.
From the new windows environment I get:
g++: error: unrecognized command line option '-Wl'
I probably have something wrong in the Kit/Qt/Compiler setup, but I don't get how to configure this correctly on my new 64bit machine to have my old qt 4.6.3 project compiled.
Quoting from the Download page:
[quote]The MinGW binary package includes a 32 bit MinGW-builds (gcc 4.7.2, sjlj exception handing, posix threading) toolchain.[/quote]
GCC 4.6 and 4.7 is not binary compatible, AFAIK. Plus there might have been some flag changes.
I removed Qt5 and installed QtSdk-online-win-x86-v1_2_1 and qt-win-opensource-4.6.3-mingw that I still had around from my last setup. Now I can perfectly compile on my new W7 x64 machine as I did on the old x86.
Your choice. If you are happy with it, then it's fine. You'll miss a lot of shiny new stuff this way, though :)
I am currently "bound" to 4.6.3 on the eLinux device anyway and will not be able to use all the new features.