Re: [Qt-creator] build settings for cross platform? multiple svn checkouts on each development computer
Qxt is a SUBDIRS project and I haven't had a problem with it in Creator... um... ever. What problems are you describing? On Mon, Apr 26, 2010 at 7:54 AM, Danny Price wrote: > > > On Mon, Apr 26, 2010 at 1:12 PM, Eike Ziller wrote: >> >> On Apr 26, 2010, at 1:14 PM, ext Danny Price wrote: >> >> > >> > On Mon, Apr 26, 2010 at 11:13 AM, Tobias Hunger >> > wrote: >> >> Hi Danny! >> >> >> >> Sorry, I really do not see anything to fix in creator for the following >> >> reasons: >> >> >> >> * No variable is ignored. DESTDIR is relative to the build directory, >> >> so it is set and used correctly (but points to a location where the >> >> stuff it is looking for is not found). >> >> >> >> * No build pathes are changed. Everything is put exactly where >> >> specified. >> >> >> >> * Creator does not interfere with anything set in the .pro-file. >> >> >> >> >> >> Your example project layout is basically three separate projects, tied >> >> together using relative pathes so that the libraries are found. That >> >> does indeed break in the presence of shadow building (or even more >> >> minor >> >> changes like the user checking out these three projects into separate >> >> directories, renaming some directory, etc.). I do not know your project >> >> requirements and there is probably a good reason for doing things the >> >> way you did, but I would really suggest making the build system more >> >> robust. >> >> >> > Ah so you can explain how I should modify the sample projects to do just >> > that? I assume that relative paths from the shadow build directories are >> > also a bad idea? >> > >> >> The preferred way is of course (as you already suggested) to bundle the >> >> libraries and the application using them together into one SUBDIRS >> >> project. That way you do get dependency tracking and the libraries will >> >> get automatically rebuild when they are changed. This further should >> >> ease packaging of the complete thing. >> >> >> > Now this I find interesting as it seems to contradict Nokia's previous >> > advice on the subject - that is to use sessions... >> >> We (as in "a bunch of Qt Creator developers") have been promoting the use >> of subdirs pro files a lot as well on this mailing list. Because both >> sessions and special setups in Qt Creator's project settings are special Qt >> Creator setups. So relying on these is no use in mixed environments. >> >> > I've had very mixed results with SUBDIRS in creator. I have to be setup >> > manually, require the use of undocumented qmake features and don't always >> > link together properly when dependants change. And until recently, you had >> > to rebuild the until tree for a single dependant change to be picked up. >> > >> > But even if I use a subdir, won't I have the same issues? SUBDIRS allow >> > me to specify the build order but not link dependencies for which I need >> > PRE_TARGETDEPS. So I have to specify a path. What path do I specify? >> >> Since you would open the SUBDIRS project in Qt Creator, you end up with a >> single project in Qt Creator, >> and therefore with a single shadow build directory for your whole, >> multi-part project. So you can use relative paths for mapping between the >> sub-projects. >> Like when opening qtcreator.pro. >> The thing that is not clear to me (haven't tried), though, is how qmake >> actually maps the paths to a shadow build directory if you use SUBDIRS that >> refer to sub projects via ../ (ie. if your sub projects are not in a >> sub-path of the SUBDIRS project). >> > > Thanks for the clarification. So if you're going to be pushing shadow builds > from now on, and SUBDIRs are the most compatible form of project > organization, can we expect to see improved support for SUBDIRs in Creator > any time soon? > >> > >> >> If you are reusing the same libraries together with several >> >> applications >> >> you can of course have several top-level SUBDIRS project files (one for >> >> each application, referencing the application itself and all libraries >> >> used by it). >> >> >> > Thanks I might try that. >> > >> > >> >> Br, Eike >> >> -- >> Eike Ziller >> Software Engineer >> Nokia, Qt Development Frameworks >> >> Nokia gate5 GmbH >> Firmensitz: Invalidenstr. 117, 10115 Berlin, Germany >> Registergericht: Amtsgericht Charlottenburg, Berlin: HRB 106443 B >> Umsatzsteueridentifikationsnummer: DE 812 845 193 >> Geschäftsführer: Dr. Michael Halbherr, Karim Tähtivuori >> >> >> >> >> ___ >> Qt-creator mailing list >> Qt-creator@trolltech.com >> http://lists.trolltech.com/mailman/listinfo/qt-creator > > > ___ > Qt-creator mailing list > Qt-creator@trolltech.com > http://lists.trolltech.com/mailman/listinfo/qt-creator > > ___ Qt-creator mailing list Qt-creator@trolltech.com http://lists.trolltech.com/mailman/listinfo/qt-creator
Re: [Qt-creator] build settings for cross platform? multiple svn checkouts on each development computer
On Mon, Apr 26, 2010 at 1:12 PM, Eike Ziller wrote: > > On Apr 26, 2010, at 1:14 PM, ext Danny Price wrote: > > > > > On Mon, Apr 26, 2010 at 11:13 AM, Tobias Hunger > wrote: > >> Hi Danny! > >> > >> Sorry, I really do not see anything to fix in creator for the following > >> reasons: > >> > >> * No variable is ignored. DESTDIR is relative to the build directory, > >> so it is set and used correctly (but points to a location where the > >> stuff it is looking for is not found). > >> > >> * No build pathes are changed. Everything is put exactly where > specified. > >> > >> * Creator does not interfere with anything set in the .pro-file. > >> > >> > >> Your example project layout is basically three separate projects, tied > >> together using relative pathes so that the libraries are found. That > >> does indeed break in the presence of shadow building (or even more minor > >> changes like the user checking out these three projects into separate > >> directories, renaming some directory, etc.). I do not know your project > >> requirements and there is probably a good reason for doing things the > >> way you did, but I would really suggest making the build system more > robust. > >> > > Ah so you can explain how I should modify the sample projects to do just > that? I assume that relative paths from the shadow build directories are > also a bad idea? > > > >> The preferred way is of course (as you already suggested) to bundle the > >> libraries and the application using them together into one SUBDIRS > >> project. That way you do get dependency tracking and the libraries will > >> get automatically rebuild when they are changed. This further should > >> ease packaging of the complete thing. > >> > > Now this I find interesting as it seems to contradict Nokia's previous > advice on the subject - that is to use sessions... > > We (as in "a bunch of Qt Creator developers") have been promoting the use > of subdirs pro files a lot as well on this mailing list. Because both > sessions and special setups in Qt Creator's project settings are special Qt > Creator setups. So relying on these is no use in mixed environments. > > > I've had very mixed results with SUBDIRS in creator. I have to be setup > manually, require the use of undocumented qmake features and don't always > link together properly when dependants change. And until recently, you had > to rebuild the until tree for a single dependant change to be picked up. > > > > But even if I use a subdir, won't I have the same issues? SUBDIRS allow > me to specify the build order but not link dependencies for which I need > PRE_TARGETDEPS. So I have to specify a path. What path do I specify? > > Since you would open the SUBDIRS project in Qt Creator, you end up with a > single project in Qt Creator, > and therefore with a single shadow build directory for your whole, > multi-part project. So you can use relative paths for mapping between the > sub-projects. > Like when opening qtcreator.pro. > The thing that is not clear to me (haven't tried), though, is how qmake > actually maps the paths to a shadow build directory if you use SUBDIRS that > refer to sub projects via ../ (ie. if your sub projects are not in a > sub-path of the SUBDIRS project). > > Thanks for the clarification. So if you're going to be pushing shadow builds from now on, and SUBDIRs are the most compatible form of project organization, can we expect to see improved support for SUBDIRs in Creator any time soon? > > >> If you are reusing the same libraries together with several applications > >> you can of course have several top-level SUBDIRS project files (one for > >> each application, referencing the application itself and all libraries > >> used by it). > >> > > Thanks I might try that. > > > > > > Br, Eike > > -- > Eike Ziller > Software Engineer > Nokia, Qt Development Frameworks > > Nokia gate5 GmbH > Firmensitz: Invalidenstr. 117, 10115 Berlin, Germany > Registergericht: Amtsgericht Charlottenburg, Berlin: HRB 106443 B > Umsatzsteueridentifikationsnummer: DE 812 845 193 > Geschäftsführer: Dr. Michael Halbherr, Karim Tähtivuori > > > > > ___ > Qt-creator mailing list > Qt-creator@trolltech.com > http://lists.trolltech.com/mailman/listinfo/qt-creator > ___ Qt-creator mailing list Qt-creator@trolltech.com http://lists.trolltech.com/mailman/listinfo/qt-creator
Re: [Qt-creator] build settings for cross platform? multiple svn checkouts on each development computer
On Apr 26, 2010, at 1:14 PM, ext Danny Price wrote: > > On Mon, Apr 26, 2010 at 11:13 AM, Tobias Hunger > wrote: >> Hi Danny! >> >> Sorry, I really do not see anything to fix in creator for the following >> reasons: >> >> * No variable is ignored. DESTDIR is relative to the build directory, >> so it is set and used correctly (but points to a location where the >> stuff it is looking for is not found). >> >> * No build pathes are changed. Everything is put exactly where specified. >> >> * Creator does not interfere with anything set in the .pro-file. >> >> >> Your example project layout is basically three separate projects, tied >> together using relative pathes so that the libraries are found. That >> does indeed break in the presence of shadow building (or even more minor >> changes like the user checking out these three projects into separate >> directories, renaming some directory, etc.). I do not know your project >> requirements and there is probably a good reason for doing things the >> way you did, but I would really suggest making the build system more robust. >> > Ah so you can explain how I should modify the sample projects to do just > that? I assume that relative paths from the shadow build directories are also > a bad idea? > >> The preferred way is of course (as you already suggested) to bundle the >> libraries and the application using them together into one SUBDIRS >> project. That way you do get dependency tracking and the libraries will >> get automatically rebuild when they are changed. This further should >> ease packaging of the complete thing. >> > Now this I find interesting as it seems to contradict Nokia's previous advice > on the subject - that is to use sessions... We (as in "a bunch of Qt Creator developers") have been promoting the use of subdirs pro files a lot as well on this mailing list. Because both sessions and special setups in Qt Creator's project settings are special Qt Creator setups. So relying on these is no use in mixed environments. > I've had very mixed results with SUBDIRS in creator. I have to be setup > manually, require the use of undocumented qmake features and don't always > link together properly when dependants change. And until recently, you had to > rebuild the until tree for a single dependant change to be picked up. > > But even if I use a subdir, won't I have the same issues? SUBDIRS allow me to > specify the build order but not link dependencies for which I need > PRE_TARGETDEPS. So I have to specify a path. What path do I specify? Since you would open the SUBDIRS project in Qt Creator, you end up with a single project in Qt Creator, and therefore with a single shadow build directory for your whole, multi-part project. So you can use relative paths for mapping between the sub-projects. Like when opening qtcreator.pro. The thing that is not clear to me (haven't tried), though, is how qmake actually maps the paths to a shadow build directory if you use SUBDIRS that refer to sub projects via ../ (ie. if your sub projects are not in a sub-path of the SUBDIRS project). > >> If you are reusing the same libraries together with several applications >> you can of course have several top-level SUBDIRS project files (one for >> each application, referencing the application itself and all libraries >> used by it). >> > Thanks I might try that. > > Br, Eike -- Eike Ziller Software Engineer Nokia, Qt Development Frameworks Nokia gate5 GmbH Firmensitz: Invalidenstr. 117, 10115 Berlin, Germany Registergericht: Amtsgericht Charlottenburg, Berlin: HRB 106443 B Umsatzsteueridentifikationsnummer: DE 812 845 193 Geschäftsführer: Dr. Michael Halbherr, Karim Tähtivuori ___ Qt-creator mailing list Qt-creator@trolltech.com http://lists.trolltech.com/mailman/listinfo/qt-creator
Re: [Qt-creator] build settings for cross platform? multiple svn checkouts on each development computer
Hi Danny! On 26.04.2010 13:14, ext Danny Price wrote: > Ah so you can explain how I should modify the sample projects to do just > that? I assume that relative paths from the shadow build directories are > also a bad idea? Yeap:-) If the libraries hardly ever change then you could install them (or put them into a absolute path somewhere). That is *ugly* as hell, but it will work woth bpth shadow building and in source building. I really suggest using the SUBDIRS approach. > Now this I find interesting as it seems to contradict Nokia's previous > advice on the subject - that is to use sessions... Please do not confuse my rumblings here with "Nokia's advice"! I am just one developer and in no way willing or able to speak for Nokia as a whole. > I've had very mixed results with SUBDIRS in creator. I have to be setup > manually, require the use of undocumented qmake features and don't > always link together properly when dependants change. Yes, documentation for qmake could be improved. > And until > recently, you had to rebuild the until tree for a single dependant > change to be picked up. That can indeed happen occasionally. Touching the files in question should do the trick though. > But even if I use a subdir, won't I have the same issues? SUBDIRS allow > me to specify the build order but not link dependencies for which I need > PRE_TARGETDEPS. So I have to specify a path. What path do I specify? Qt Creator has quite a bit of dependency setup in src/plugins. Maybe you can get some inspiration from there? We are of course aware that there are issues with shadow building. Most of them are centered around resource usage (text files, pictures, etc.). The shadow build application will have trouble finding those if it tries to find them relative to its own location and they were shipped in the source tree. -- Tobias Hunger Software Engineer Nokia, Qt Development Frameworks Nokia gate5 GmbH Firmensitz: Invalidenstr. 117, 10115 Berlin, Germany Registergericht: Amtsgericht Charlottenburg, Berlin: HRB 106443 B Umsatzsteueridentifikationsnummer: DE 812 845 193 Geschäftsführer: Dr. Michael Halbherr, Karim Tähtivuori ___ Qt-creator mailing list Qt-creator@trolltech.com http://lists.trolltech.com/mailman/listinfo/qt-creator
Re: [Qt-creator] build settings for cross platform? multiple svn checkouts on each development computer
On Mon, Apr 26, 2010 at 11:13 AM, Tobias Hunger wrote: > Hi Danny! > > Sorry, I really do not see anything to fix in creator for the following > reasons: > > * No variable is ignored. DESTDIR is relative to the build directory, > so it is set and used correctly (but points to a location where the > stuff it is looking for is not found). > > * No build pathes are changed. Everything is put exactly where specified. > > * Creator does not interfere with anything set in the .pro-file. > > > Your example project layout is basically three separate projects, tied > together using relative pathes so that the libraries are found. That > does indeed break in the presence of shadow building (or even more minor > changes like the user checking out these three projects into separate > directories, renaming some directory, etc.). I do not know your project > requirements and there is probably a good reason for doing things the > way you did, but I would really suggest making the build system more > robust. > Ah so you can explain how I should modify the sample projects to do just that? I assume that relative paths from the shadow build directories are also a bad idea? > The preferred way is of course (as you already suggested) to bundle the > libraries and the application using them together into one SUBDIRS > project. That way you do get dependency tracking and the libraries will > get automatically rebuild when they are changed. This further should > ease packaging of the complete thing. > Now this I find interesting as it seems to contradict Nokia's previous advice on the subject - that is to use sessions... I've had very mixed results with SUBDIRS in creator. I have to be setup manually, require the use of undocumented qmake features and don't always link together properly when dependants change. And until recently, you had to rebuild the until tree for a single dependant change to be picked up. But even if I use a subdir, won't I have the same issues? SUBDIRS allow me to specify the build order but not link dependencies for which I need PRE_TARGETDEPS. So I have to specify a path. What path do I specify? > > If you are reusing the same libraries together with several applications > you can of course have several top-level SUBDIRS project files (one for > each application, referencing the application itself and all libraries > used by it). > Thanks I might try that. > > Best Regards, > Tobias > > -- > Tobias Hunger > Software Engineer > Nokia, Qt Development Frameworks > > Nokia gate5 GmbH > Firmensitz: Invalidenstr. 117, 10115 Berlin, Germany > Registergericht: Amtsgericht Charlottenburg, Berlin: HRB 106443 B > Umsatzsteueridentifikationsnummer: DE 812 845 193 > Geschäftsführer: Dr. Michael Halbherr, Karim Tähtivuori > ___ > Qt-creator mailing list > Qt-creator@trolltech.com > http://lists.trolltech.com/mailman/listinfo/qt-creator > ___ Qt-creator mailing list Qt-creator@trolltech.com http://lists.trolltech.com/mailman/listinfo/qt-creator
Re: [Qt-creator] build settings for cross platform? multiple svn checkouts on each development computer
Hi Danny! Sorry, I really do not see anything to fix in creator for the following reasons: * No variable is ignored. DESTDIR is relative to the build directory, so it is set and used correctly (but points to a location where the stuff it is looking for is not found). * No build pathes are changed. Everything is put exactly where specified. * Creator does not interfere with anything set in the .pro-file. Your example project layout is basically three separate projects, tied together using relative pathes so that the libraries are found. That does indeed break in the presence of shadow building (or even more minor changes like the user checking out these three projects into separate directories, renaming some directory, etc.). I do not know your project requirements and there is probably a good reason for doing things the way you did, but I would really suggest making the build system more robust. The preferred way is of course (as you already suggested) to bundle the libraries and the application using them together into one SUBDIRS project. That way you do get dependency tracking and the libraries will get automatically rebuild when they are changed. This further should ease packaging of the complete thing. If you are reusing the same libraries together with several applications you can of course have several top-level SUBDIRS project files (one for each application, referencing the application itself and all libraries used by it). Best Regards, Tobias -- Tobias Hunger Software Engineer Nokia, Qt Development Frameworks Nokia gate5 GmbH Firmensitz: Invalidenstr. 117, 10115 Berlin, Germany Registergericht: Amtsgericht Charlottenburg, Berlin: HRB 106443 B Umsatzsteueridentifikationsnummer: DE 812 845 193 Geschäftsführer: Dr. Michael Halbherr, Karim Tähtivuori ___ Qt-creator mailing list Qt-creator@trolltech.com http://lists.trolltech.com/mailman/listinfo/qt-creator
Re: [Qt-creator] build settings for cross platform? multiple svn checkouts on each development computer
Hi Danny! Thanks for sending the broken project. I'll look into it later today. Best Regards, Tobias -- Tobias Hunger Software Engineer Nokia, Qt Development Frameworks Nokia gate5 GmbH Firmensitz: Invalidenstr. 117, 10115 Berlin, Germany Registergericht: Amtsgericht Charlottenburg, Berlin: HRB 106443 B Umsatzsteueridentifikationsnummer: DE 812 845 193 Geschäftsführer: Dr. Michael Halbherr, Karim Tähtivuori ___ Qt-creator mailing list Qt-creator@trolltech.com http://lists.trolltech.com/mailman/listinfo/qt-creator
Re: [Qt-creator] build settings for cross platform? multiple svn checkouts on each development computer
On 19 Apr 2010, at 17:33, Tobias Hunger wrote: > On 19.04.2010 18:02, ext Danny Price wrote: >> I think the settings in the .pro file should always take priority. This >> is allows for automated builds and builds outside of Creator. > > I do not get your point here: Of course the pro-file gets preference. > Qmake does not know of the .user file at all, so if you run qmake > outside creator will of course completely ignore any Creator settings. Yes but the reverse is no-longer true. > >> It >> shouldn't be muddied up to handle Creator special-cases. That sets >> a precedent. > > I do not consider shadow building to be a creator special case. I use it > for all projects I work on (be it qmake based or cmake or even > autotools, if they actually support it without too much breakage) and > did so long before I started using Qt Creator in earnest. It makes > switching between different configurations of a project so much easier, > be it debug/release, different set of defines/dependencies or even > different platforms. > > You should really give it a try! You are missing out if you do not. It doesn't seem to offer anything that qmake can do with a little tweaking. In fact, I consider it a flaw in Creator that the template projects used by the wizards contain such basic pro files. They need a LOT of tweaking before they can be useful. Perhaps you could give me a concrete example where shadow builds do something that .pro files settings cannot? > >> I'm not sold on the idea that Creator must turn on shadow builds by >> default. If it's an issue as stated by Tobias, why not simple turn it on >> in via the Project screen/pro.user file for the projects that require it >> as was the case previously? > > Why not simply turn it off for the projects that do not need it? > Seriously, this does not get us anywhere. Because as I explained in my previous email to Tobias with my attached sample project, simply turning off the settings still leaves my projects borked. I have to manually go through the file system and trash all the make files to get them working again. And if I check in the working project into SVN, the next user who checks it out will have to go through the whole process again if they neglect to uncheck the shadow build option in their newly-generated pro.user files before hitting build. I'm tempted to write a little script that actually goes through my projects and cleans down the broken make files. This is clearly a failure in Creator's part as an IDE. > > What exactly is broken for you? Which of your settings are ignored by > creator? > >> The functionality is identical. > > No, shadow building is far more flexible and I am convinced we should > offer that flexibility by default. Plus it reduces the number of clean > up issues we currently have with creator when switching configurations. But It shouldn't override my handcrafted .pro file settings! I shouldn't have to re-configure all my project settings every-time Nokia release a new version of Creator and decide to turn on some new feature that breaks them. > >> Tobias, your statement seems to imply that the Nokia/Qt devs are also >> throwing away their pro.user files to get builds working which is the >> underlying issue. > > I usually do not delete my .user files, but I sometimes do loose them > when running git clean in the terminal. I keep forgetting that creator > can do that nowadays (and it will leave the .user file by default;-) > >> If that's the case, why not fix pro.user files once >> and for all? Fix the problem at source? > > The .user file does what it is meant to do quite well for my use case. > You seem to have a different use case which I would really like to > understand. I use Creator daily, both in a production environment and as a hobbyist. The proi.user files have repeatedly proven to be very brittle and break my builds. One issue is the fact that they cannot be used with with source control, so every compiler setting, dependency, flag and build step has to be created manually every-time someone does a clean checkout of the project. I know of no other IDE that does this. It was for this reason that I gave up on the Project screen and stated coded everything into the .pro files. To qmakes credit, it's all worked so far. At least until I tried importing my projects into the latest snapshot. I've also had many issues where Creator cannot find the binaries it just built ('Permissions wrong?") or couldn't locate objects to link to resulting in linker errors that Creator simply reported as generic makefile failures. This often happened when a project was built independently of a session when previously it was built as a subdir. In ALL CASES, the problems were fixed by trashing the .pro.user files. And there are plenty of over Creator users who will confirm this. The point I'm making is that the flaws of the .pro.user system could previously be worked around in the .p
Re: [Qt-creator] build settings for cross platform? multiple svn checkouts on each development computer
On 19.04.2010 18:02, ext Danny Price wrote: > I think the settings in the .pro file should always take priority. This > is allows for automated builds and builds outside of Creator. I do not get your point here: Of course the pro-file gets preference. Qmake does not know of the .user file at all, so if you run qmake outside creator will of course completely ignore any Creator settings. > It > shouldn't be muddied up to handle Creator special-cases. That sets > a precedent. I do not consider shadow building to be a creator special case. I use it for all projects I work on (be it qmake based or cmake or even autotools, if they actually support it without too much breakage) and did so long before I started using Qt Creator in earnest. It makes switching between different configurations of a project so much easier, be it debug/release, different set of defines/dependencies or even different platforms. You should really give it a try! You are missing out if you do not. > I'm not sold on the idea that Creator must turn on shadow builds by > default. If it's an issue as stated by Tobias, why not simple turn it on > in via the Project screen/pro.user file for the projects that require it > as was the case previously? Why not simply turn it off for the projects that do not need it? Seriously, this does not get us anywhere. What exactly is broken for you? Which of your settings are ignored by creator? > The functionality is identical. No, shadow building is far more flexible and I am convinced we should offer that flexibility by default. Plus it reduces the number of clean up issues we currently have with creator when switching configurations. > Tobias, your statement seems to imply that the Nokia/Qt devs are also > throwing away their pro.user files to get builds working which is the > underlying issue. I usually do not delete my .user files, but I sometimes do loose them when running git clean in the terminal. I keep forgetting that creator can do that nowadays (and it will leave the .user file by default;-) > If that's the case, why not fix pro.user files once > and for all? Fix the problem at source? The .user file does what it is meant to do quite well for my use case. You seem to have a different use case which I would really like to understand. Best Regards, Tobias -- Tobias Hunger Software Engineer Nokia, Qt Development Frameworks Nokia gate5 GmbH Firmensitz: Invalidenstr. 117, 10115 Berlin, Germany Registergericht: Amtsgericht Charlottenburg, Berlin: HRB 106443 B Umsatzsteueridentifikationsnummer: DE 812 845 193 Geschäftsführer: Dr. Michael Halbherr, Karim Tähtivuori ___ Qt-creator mailing list Qt-creator@trolltech.com http://lists.trolltech.com/mailman/listinfo/qt-creator
Re: [Qt-creator] build settings for cross platform? multiple svn checkouts on each development computer
I think the settings in the .pro file should always take priority. This is allows for automated builds and builds outside of Creator. It shouldn't be muddied up to handle Creator special-cases. That sets a precedent. I'm not sold on the idea that Creator must turn on shadow builds by default. If it's an issue as stated by Tobias, why not simple turn it on in via the Project screen/pro.user file for the projects that require it as was the case previously? The functionality is identical. Tobias, your statement seems to imply that the Nokia/Qt devs are also throwing away their pro.user files to get builds working which is the underlying issue. If that's the case, why not fix pro.user files once and for all? Fix the problem at source? On Mon, Apr 19, 2010 at 2:56 PM, Coda Highland wrote: > As a thought... How troublesome would it be to have something like a > CREATOR_PRAGMA variable in the .pro file that directs these kinds of > things? qmake could simply ignore it, after all. This would allow some > settings -- like, for instance, shadow builds -- to be overridden by > the .pro file. > > /s/ Adam > > On Mon, Apr 19, 2010 at 3:49 AM, Tobias Hunger > wrote: > > Hi Danny! > > > > Yes, using the .pro-file for settings to be shared between developers is > > the right thing to do. Thanks for explaining that so well! > > > > On 19.04.2010 10:16, ext Danny Price wrote: > >> However, I've noticed that the latest snapshots turn on the shadow build > >> feature by default. This is a problem because it overrides the build > >> paths specified in the .pro file. And if I turn off the feature it will > >> be turned on again the next time the .pro.user is generated (ie. when > >> someone checks out my code). > > > > Can you please describe your directory layout? Are you using your own > > shadow building setup? Which variables are ignored by our use of shadow > > builds? Can you send us a .pro-file that breaks for you so that we can > > improve the situation? > > > > A existing in-source build should get detected and get imported using > > the settings used to create the build. This is of course not a help in > > the fresh-checkout use-case you mention:-/ > > > > > I hope Nokia revert this to the previous behavior (turn off shadow > > > builds by default). > > > > We did turn on shadow-building by default since we need to improve the > > multiple platform use-case. That is a real pain with pre-2.0beta > > creators since switching platforms totally confuses make, thus resulting > > in broken builds and all kinds of strangeness. There is just too many > > complaints about this to ignore;-). So shadow-building is -- from our > > perspective -- a must have for the next version. > > > > However we are open for suggestions on how to minimize the impact on > > other use-cases. > > > > Best Regards, > > Tobias > > > > -- > > Tobias Hunger > > Software Engineer > > Nokia, Qt Development Frameworks > > > > Nokia gate5 GmbH > > Firmensitz: Invalidenstr. 117, 10115 Berlin, Germany > > Registergericht: Amtsgericht Charlottenburg, Berlin: HRB 106443 B > > Umsatzsteueridentifikationsnummer: DE 812 845 193 > > Geschäftsführer: Dr. Michael Halbherr, Karim Tähtivuori > > ___ > > Qt-creator mailing list > > Qt-creator@trolltech.com > > http://lists.trolltech.com/mailman/listinfo/qt-creator > > > > ___ > Qt-creator mailing list > Qt-creator@trolltech.com > http://lists.trolltech.com/mailman/listinfo/qt-creator > ___ Qt-creator mailing list Qt-creator@trolltech.com http://lists.trolltech.com/mailman/listinfo/qt-creator
Re: [Qt-creator] build settings for cross platform? multiple svn checkouts on each development computer
As a thought... How troublesome would it be to have something like a CREATOR_PRAGMA variable in the .pro file that directs these kinds of things? qmake could simply ignore it, after all. This would allow some settings -- like, for instance, shadow builds -- to be overridden by the .pro file. /s/ Adam On Mon, Apr 19, 2010 at 3:49 AM, Tobias Hunger wrote: > Hi Danny! > > Yes, using the .pro-file for settings to be shared between developers is > the right thing to do. Thanks for explaining that so well! > > On 19.04.2010 10:16, ext Danny Price wrote: >> However, I've noticed that the latest snapshots turn on the shadow build >> feature by default. This is a problem because it overrides the build >> paths specified in the .pro file. And if I turn off the feature it will >> be turned on again the next time the .pro.user is generated (ie. when >> someone checks out my code). > > Can you please describe your directory layout? Are you using your own > shadow building setup? Which variables are ignored by our use of shadow > builds? Can you send us a .pro-file that breaks for you so that we can > improve the situation? > > A existing in-source build should get detected and get imported using > the settings used to create the build. This is of course not a help in > the fresh-checkout use-case you mention:-/ > > > I hope Nokia revert this to the previous behavior (turn off shadow > > builds by default). > > We did turn on shadow-building by default since we need to improve the > multiple platform use-case. That is a real pain with pre-2.0beta > creators since switching platforms totally confuses make, thus resulting > in broken builds and all kinds of strangeness. There is just too many > complaints about this to ignore;-). So shadow-building is -- from our > perspective -- a must have for the next version. > > However we are open for suggestions on how to minimize the impact on > other use-cases. > > Best Regards, > Tobias > > -- > Tobias Hunger > Software Engineer > Nokia, Qt Development Frameworks > > Nokia gate5 GmbH > Firmensitz: Invalidenstr. 117, 10115 Berlin, Germany > Registergericht: Amtsgericht Charlottenburg, Berlin: HRB 106443 B > Umsatzsteueridentifikationsnummer: DE 812 845 193 > Geschäftsführer: Dr. Michael Halbherr, Karim Tähtivuori > ___ > Qt-creator mailing list > Qt-creator@trolltech.com > http://lists.trolltech.com/mailman/listinfo/qt-creator > ___ Qt-creator mailing list Qt-creator@trolltech.com http://lists.trolltech.com/mailman/listinfo/qt-creator
Re: [Qt-creator] build settings for cross platform? multiple svn checkouts on each development computer
Hi Danny! Yes, using the .pro-file for settings to be shared between developers is the right thing to do. Thanks for explaining that so well! On 19.04.2010 10:16, ext Danny Price wrote: > However, I've noticed that the latest snapshots turn on the shadow build > feature by default. This is a problem because it overrides the build > paths specified in the .pro file. And if I turn off the feature it will > be turned on again the next time the .pro.user is generated (ie. when > someone checks out my code). Can you please describe your directory layout? Are you using your own shadow building setup? Which variables are ignored by our use of shadow builds? Can you send us a .pro-file that breaks for you so that we can improve the situation? A existing in-source build should get detected and get imported using the settings used to create the build. This is of course not a help in the fresh-checkout use-case you mention:-/ > I hope Nokia revert this to the previous behavior (turn off shadow > builds by default). We did turn on shadow-building by default since we need to improve the multiple platform use-case. That is a real pain with pre-2.0beta creators since switching platforms totally confuses make, thus resulting in broken builds and all kinds of strangeness. There is just too many complaints about this to ignore;-). So shadow-building is -- from our perspective -- a must have for the next version. However we are open for suggestions on how to minimize the impact on other use-cases. Best Regards, Tobias -- Tobias Hunger Software Engineer Nokia, Qt Development Frameworks Nokia gate5 GmbH Firmensitz: Invalidenstr. 117, 10115 Berlin, Germany Registergericht: Amtsgericht Charlottenburg, Berlin: HRB 106443 B Umsatzsteueridentifikationsnummer: DE 812 845 193 Geschäftsführer: Dr. Michael Halbherr, Karim Tähtivuori ___ Qt-creator mailing list Qt-creator@trolltech.com http://lists.trolltech.com/mailman/listinfo/qt-creator
Re: [Qt-creator] build settings for cross platform? multiple svn checkouts on each development computer
The .pro file is all you need. Compiler settings, include paths, build steps, versioning and more can all be specified here. You also MUST use the pro file to specify library link and project dependencies. It's not possible to do this via the Project screen (the dependency settings merely sets the build order - an application dependant on a library in the same session will NOT be linked to it). I actually prefer having these settings inside the readable .pro text file. It's better than the MSVC solution that requires hunting through dozens of tiny model dialogs. Up until now I've found the pro.user file to be totally expendable. In fact it has occasionally broken my projects (Creator not being able to find the executable to run for example, or problems building). However, I've noticed that the latest snapshots turn on the shadow build feature by default. This is a problem because it overrides the build paths specified in the .pro file. And if I turn off the feature it will be turned on again the next time the .pro.user is generated (ie. when someone checks out my code). I hope Nokia revert this to the previous behavior (turn off shadow builds by default). On Mon, Apr 19, 2010 at 4:18 AM, Coda Highland wrote: > The makefile is generated directly from the .pro file. This is where > everything needs to go, especially if you want your project to work if > you're building it at the command line instead of from within Creator. > > The .pro.user file is really just intended for short-term, > system-specific, non-general details that aren't intended to be shared > with other users of the source code. > > The only thing that's "broken" is that it's not clear from the way > Creator's UI is laid out that this is the case, and it has to be > explained like this. > > Basically, what you need to keep in mind is that Creator is first and > foremost a tool for writing code and creating software, not for > managing projects. > > /s/ Adam > > On Sun, Apr 18, 2010 at 9:35 PM, nobodyhere > wrote: > > This makes Qt Creator sound broken? I mean, what's the point of having > it generate your make files for you (in the .pro.user file), if you have to > then rewrite them manually anyway (in the .pro file)? > > > > regards > > > > - Original Message ----- > > From: "Coda Highland" > > To: qt-creator@trolltech.com > > Sent: Sunday, April 18, 2010 8:45:29 PM GMT -06:00 US/Canada Central > > Subject: Re: [Qt-creator] build settings for cross platform? multiple svn > checkouts on each development computer > > > > No, we mean the .pro file. qmake's file format supports a lot of logic > > there, including platform detection (scopes like win32, unix, and > > macx). Never edit the .pro.user file and avoid using Creator's > > built-in tools for changing the build settings -- do all the work > > directly in the .pro file except for things that are SPECIFICALLY > > relevant to only the checkout you're working on. > > > > /s/ Adam > > > > On Sun, Apr 18, 2010 at 7:32 PM, nobodyhere > wrote: > >> You mean edit and (svn commit) the project's ".pro.user" file? (Not the > project's ".pro" file?) > >> > >> And the .pro file has hardcoded / absolute paths in it, so how does this > let me do a simple (svn checkout and build that just works, with the exact > same .pro.user file) for (multiple computers) and (multiple checkouts on the > same computer)? > >> > >> Is it required to manually edit the .pro.user XML file's text? > >> > >> thank you for any leads > >> > >> - Original Message - > >> From: "Danny Price" > >> To: qt-creator@trolltech.com > >> Sent: Sunday, April 18, 2010 9:21:30 AM GMT -06:00 US/Canada Central > >> Subject: Re: [Qt-creator] build settings for cross platform? multiple > svn checkouts on each development computer > >> > >> Set you build settings, project directories and platform-specific > configs in the .pro file. > >> > >> On 18 Apr 2010, at 09:26, nobodyhere wrote: > >> > >>> Is there information on how to (svn commit) cross platform (Windows, > Mac, Linux) build settings for a Qt Creator project, that doesn't have any > absolute paths? > >>> > >>> I created a new project on Windows, then (svn commit) it. Then I did > (svn checkout) of the project on Mac OS. Unfortunately, I had to create a > new set of build settings to get it to build / compile? But it seems to be > storing this build settings stuff in the [project].pro.user file, with > absol
Re: [Qt-creator] build settings for cross platform? multiple svn checkouts on each development computer
Coda/nobodyhere: According to my experience (however little), it works well as long as we do it the way Adam suggested. As long as we put all relevant system dependent information in the .pro file, then qmake will generate an actual makefile tailored for each particular platform that reflects whatever paths you discretized in the .pro file itself. I only keep the actual "src" directory and the .pro file in the repository, as all the rest results from running qmake and make to compile and link: you can reproduce all those files under each platform just from the source files, as long as you wrote an appropriate .pro file for qmake to do the heavy lifting for you. This works for me under Mac, Linux, and even Solaris (I know it works also under Windows, but I barely do anything under that platform these days). As an added bonus, you can do everything from the command line, without having to bother with any IDE. In other words, you can do all the relevant coding under one platform in GUI mode per se, and then just copy the source files and the .pro file to another platform (properly written) and do the compiling and linking by calling qmake and make. For instance, to reflect the location of some files under Mac and Linux, or Windows in the .pro files you can use conditional statements: macx{ INCLUDEPATH += /usr/local/Trolltech/Qt-4.7.0/include } unix{ INCLUDEPATH += /opt/Trolltech/Qt-4.7.0/include } linux-g++ { INCLUDEPATH += /opt/local/Trolltech/Qt-4.7.0/include } win32{ INCLUDEPATH += C:\Trolltech\Qt-4.7.0\include } The above constitutes a hypothetical example to illustrate the issue. You can find more example in the qmake related help files. You can specify source, header files, and many other required pieces that way, per platform. I found this out because I got tired of having to replace portions of the code each time just because I happened to change the working platform one particular day or another. Hope this helps, Victor Coda Highland wrote: > The makefile is generated directly from the .pro file. This is where > everything needs to go, especially if you want your project to work if > you're building it at the command line instead of from within Creator. > > The .pro.user file is really just intended for short-term, > system-specific, non-general details that aren't intended to be shared > with other users of the source code. > > The only thing that's "broken" is that it's not clear from the way > Creator's UI is laid out that this is the case, and it has to be > explained like this. > > Basically, what you need to keep in mind is that Creator is first and > foremost a tool for writing code and creating software, not for > managing projects. > > /s/ Adam > > On Sun, Apr 18, 2010 at 9:35 PM, nobodyhere > wrote: >> This makes Qt Creator sound broken? I mean, what's the point of having it >> generate your make files for you (in the .pro.user file), if you have to >> then rewrite them manually anyway (in the .pro file)? >> >> regards >> >> - Original Message ----- >> From: "Coda Highland" >> To: qt-creator@trolltech.com >> Sent: Sunday, April 18, 2010 8:45:29 PM GMT -06:00 US/Canada Central >> Subject: Re: [Qt-creator] build settings for cross platform? multiple svn >> checkouts on each development computer >> >> No, we mean the .pro file. qmake's file format supports a lot of logic >> there, including platform detection (scopes like win32, unix, and >> macx). Never edit the .pro.user file and avoid using Creator's >> built-in tools for changing the build settings -- do all the work >> directly in the .pro file except for things that are SPECIFICALLY >> relevant to only the checkout you're working on. >> >> /s/ Adam >> >> On Sun, Apr 18, 2010 at 7:32 PM, nobodyhere >> wrote: >>> You mean edit and (svn commit) the project's ".pro.user" file? (Not the >>> project's ".pro" file?) >>> >>> And the .pro file has hardcoded / absolute paths in it, so how does this >>> let me do a simple (svn checkout and build that just works, with the exact >>> same .pro.user file) for (multiple computers) and (multiple checkouts on >>> the same computer)? >>> >>> Is it required to manually edit the .pro.user XML file's text? >>> >>> thank you for any leads >>> >>> - Original Message - >>> From: "Danny Price" >>> To: qt-creator@trolltech.com >>> Sent: Sunday, April 18, 2010 9:21:30 AM GMT -06:00 US/Canada Central >>> Subject: Re: [Qt-creator] build settings for cross platform? multiple svn >>> checkouts
Re: [Qt-creator] build settings for cross platform? multiple svn checkouts on each development computer
The makefile is generated directly from the .pro file. This is where everything needs to go, especially if you want your project to work if you're building it at the command line instead of from within Creator. The .pro.user file is really just intended for short-term, system-specific, non-general details that aren't intended to be shared with other users of the source code. The only thing that's "broken" is that it's not clear from the way Creator's UI is laid out that this is the case, and it has to be explained like this. Basically, what you need to keep in mind is that Creator is first and foremost a tool for writing code and creating software, not for managing projects. /s/ Adam On Sun, Apr 18, 2010 at 9:35 PM, nobodyhere wrote: > This makes Qt Creator sound broken? I mean, what's the point of having it > generate your make files for you (in the .pro.user file), if you have to then > rewrite them manually anyway (in the .pro file)? > > regards > > - Original Message - > From: "Coda Highland" > To: qt-creator@trolltech.com > Sent: Sunday, April 18, 2010 8:45:29 PM GMT -06:00 US/Canada Central > Subject: Re: [Qt-creator] build settings for cross platform? multiple svn > checkouts on each development computer > > No, we mean the .pro file. qmake's file format supports a lot of logic > there, including platform detection (scopes like win32, unix, and > macx). Never edit the .pro.user file and avoid using Creator's > built-in tools for changing the build settings -- do all the work > directly in the .pro file except for things that are SPECIFICALLY > relevant to only the checkout you're working on. > > /s/ Adam > > On Sun, Apr 18, 2010 at 7:32 PM, nobodyhere > wrote: >> You mean edit and (svn commit) the project's ".pro.user" file? (Not the >> project's ".pro" file?) >> >> And the .pro file has hardcoded / absolute paths in it, so how does this let >> me do a simple (svn checkout and build that just works, with the exact same >> .pro.user file) for (multiple computers) and (multiple checkouts on the same >> computer)? >> >> Is it required to manually edit the .pro.user XML file's text? >> >> thank you for any leads >> >> - Original Message ----- >> From: "Danny Price" >> To: qt-creator@trolltech.com >> Sent: Sunday, April 18, 2010 9:21:30 AM GMT -06:00 US/Canada Central >> Subject: Re: [Qt-creator] build settings for cross platform? multiple svn >> checkouts on each development computer >> >> Set you build settings, project directories and platform-specific configs in >> the .pro file. >> >> On 18 Apr 2010, at 09:26, nobodyhere wrote: >> >>> Is there information on how to (svn commit) cross platform (Windows, Mac, >>> Linux) build settings for a Qt Creator project, that doesn't have any >>> absolute paths? >>> >>> I created a new project on Windows, then (svn commit) it. Then I did (svn >>> checkout) of the project on Mac OS. Unfortunately, I had to create a new >>> set of build settings to get it to build / compile? But it seems to be >>> storing this build settings stuff in the [project].pro.user file, with >>> absolute paths? >>> >>> How can I fix it so that I can simplify for anyone to do multiple fresh >>> (svn checkout)'s of the project on each machine (regardless of OS), and >>> have the build / compile just work (for Windows, Mac, Linux builds) (with >>> multiple checkouts per machine, using relative paths)? >>> >>> Why are there absolute paths in this [project].user.pro file (for example, >>> the buildDirectory has an absolute path)? >>> >>> thank you for any leads >>> ___ >>> Qt-creator mailing list >>> Qt-creator@trolltech.com >>> http://lists.trolltech.com/mailman/listinfo/qt-creator >> >> >> ___ >> Qt-creator mailing list >> Qt-creator@trolltech.com >> http://lists.trolltech.com/mailman/listinfo/qt-creator >> ___ >> Qt-creator mailing list >> Qt-creator@trolltech.com >> http://lists.trolltech.com/mailman/listinfo/qt-creator >> > > ___ > Qt-creator mailing list > Qt-creator@trolltech.com > http://lists.trolltech.com/mailman/listinfo/qt-creator > > ___ > Qt-creator mailing list > Qt-creator@trolltech.com > http://lists.trolltech.com/mailman/listinfo/qt-creator > ___ Qt-creator mailing list Qt-creator@trolltech.com http://lists.trolltech.com/mailman/listinfo/qt-creator
Re: [Qt-creator] build settings for cross platform? multiple svn checkouts on each development computer
This makes Qt Creator sound broken? I mean, what's the point of having it generate your make files for you (in the .pro.user file), if you have to then rewrite them manually anyway (in the .pro file)? regards - Original Message - From: "Coda Highland" To: qt-creator@trolltech.com Sent: Sunday, April 18, 2010 8:45:29 PM GMT -06:00 US/Canada Central Subject: Re: [Qt-creator] build settings for cross platform? multiple svn checkouts on each development computer No, we mean the .pro file. qmake's file format supports a lot of logic there, including platform detection (scopes like win32, unix, and macx). Never edit the .pro.user file and avoid using Creator's built-in tools for changing the build settings -- do all the work directly in the .pro file except for things that are SPECIFICALLY relevant to only the checkout you're working on. /s/ Adam On Sun, Apr 18, 2010 at 7:32 PM, nobodyhere wrote: > You mean edit and (svn commit) the project's ".pro.user" file? (Not the > project's ".pro" file?) > > And the .pro file has hardcoded / absolute paths in it, so how does this let > me do a simple (svn checkout and build that just works, with the exact same > .pro.user file) for (multiple computers) and (multiple checkouts on the same > computer)? > > Is it required to manually edit the .pro.user XML file's text? > > thank you for any leads > > - Original Message - > From: "Danny Price" > To: qt-creator@trolltech.com > Sent: Sunday, April 18, 2010 9:21:30 AM GMT -06:00 US/Canada Central > Subject: Re: [Qt-creator] build settings for cross platform? multiple svn > checkouts on each development computer > > Set you build settings, project directories and platform-specific configs in > the .pro file. > > On 18 Apr 2010, at 09:26, nobodyhere wrote: > >> Is there information on how to (svn commit) cross platform (Windows, Mac, >> Linux) build settings for a Qt Creator project, that doesn't have any >> absolute paths? >> >> I created a new project on Windows, then (svn commit) it. Then I did (svn >> checkout) of the project on Mac OS. Unfortunately, I had to create a new >> set of build settings to get it to build / compile? But it seems to be >> storing this build settings stuff in the [project].pro.user file, with >> absolute paths? >> >> How can I fix it so that I can simplify for anyone to do multiple fresh (svn >> checkout)'s of the project on each machine (regardless of OS), and have the >> build / compile just work (for Windows, Mac, Linux builds) (with multiple >> checkouts per machine, using relative paths)? >> >> Why are there absolute paths in this [project].user.pro file (for example, >> the buildDirectory has an absolute path)? >> >> thank you for any leads >> ___ >> Qt-creator mailing list >> Qt-creator@trolltech.com >> http://lists.trolltech.com/mailman/listinfo/qt-creator > > > ___ > Qt-creator mailing list > Qt-creator@trolltech.com > http://lists.trolltech.com/mailman/listinfo/qt-creator > ___ > Qt-creator mailing list > Qt-creator@trolltech.com > http://lists.trolltech.com/mailman/listinfo/qt-creator > ___ Qt-creator mailing list Qt-creator@trolltech.com http://lists.trolltech.com/mailman/listinfo/qt-creator ___ Qt-creator mailing list Qt-creator@trolltech.com http://lists.trolltech.com/mailman/listinfo/qt-creator
Re: [Qt-creator] build settings for cross platform? multiple svn checkouts on each development computer
No, we mean the .pro file. qmake's file format supports a lot of logic there, including platform detection (scopes like win32, unix, and macx). Never edit the .pro.user file and avoid using Creator's built-in tools for changing the build settings -- do all the work directly in the .pro file except for things that are SPECIFICALLY relevant to only the checkout you're working on. /s/ Adam On Sun, Apr 18, 2010 at 7:32 PM, nobodyhere wrote: > You mean edit and (svn commit) the project's ".pro.user" file? (Not the > project's ".pro" file?) > > And the .pro file has hardcoded / absolute paths in it, so how does this let > me do a simple (svn checkout and build that just works, with the exact same > .pro.user file) for (multiple computers) and (multiple checkouts on the same > computer)? > > Is it required to manually edit the .pro.user XML file's text? > > thank you for any leads > > - Original Message - > From: "Danny Price" > To: qt-creator@trolltech.com > Sent: Sunday, April 18, 2010 9:21:30 AM GMT -06:00 US/Canada Central > Subject: Re: [Qt-creator] build settings for cross platform? multiple svn > checkouts on each development computer > > Set you build settings, project directories and platform-specific configs in > the .pro file. > > On 18 Apr 2010, at 09:26, nobodyhere wrote: > >> Is there information on how to (svn commit) cross platform (Windows, Mac, >> Linux) build settings for a Qt Creator project, that doesn't have any >> absolute paths? >> >> I created a new project on Windows, then (svn commit) it. Then I did (svn >> checkout) of the project on Mac OS. Unfortunately, I had to create a new >> set of build settings to get it to build / compile? But it seems to be >> storing this build settings stuff in the [project].pro.user file, with >> absolute paths? >> >> How can I fix it so that I can simplify for anyone to do multiple fresh (svn >> checkout)'s of the project on each machine (regardless of OS), and have the >> build / compile just work (for Windows, Mac, Linux builds) (with multiple >> checkouts per machine, using relative paths)? >> >> Why are there absolute paths in this [project].user.pro file (for example, >> the buildDirectory has an absolute path)? >> >> thank you for any leads >> ___ >> Qt-creator mailing list >> Qt-creator@trolltech.com >> http://lists.trolltech.com/mailman/listinfo/qt-creator > > > ___ > Qt-creator mailing list > Qt-creator@trolltech.com > http://lists.trolltech.com/mailman/listinfo/qt-creator > ___ > Qt-creator mailing list > Qt-creator@trolltech.com > http://lists.trolltech.com/mailman/listinfo/qt-creator > ___ Qt-creator mailing list Qt-creator@trolltech.com http://lists.trolltech.com/mailman/listinfo/qt-creator
Re: [Qt-creator] build settings for cross platform? multiple svn checkouts on each development computer
Below is some info I found when I started googling for (qt creator .pro .pro.user), instead of just (qt creator build settings) So definitely plenty of other people are running into this too... ... >From >http://qtcreator.blogspot.com/2009/10/project-not-linked-when-dependent.html#comments > : > I don't go anywhere near the Qt Creator Project settings. Why? Because all > these settings are stored in a special .pro.user file that cannot be placed > under version control because it contains hard-coded paths! I really dislike > the 'session' system and want *all* build rules inside the .pro file instead. > That way my team can check out a project and build the whole thing without > first messing with Qt Creator's Project settings. This is a hot topic on the > Qt Creator mailing list BTW - I am not alone in wishing for better subdirs > and dependency support. :) > 100% agreement on the pro.user file issue. The file, the session system, and > the entire project window is utterly useless. > Even if the paths were relative, dependencies should be stored in the project > file not a user-specific store. That's for breakpoints etc. > Unfortunately Nokia a absolutely determined to keep it. ... - Original Message - From: "nobodyhere" To: qt-creator@trolltech.com Sent: Sunday, April 18, 2010 7:32:19 PM GMT -06:00 US/Canada Central Subject: Re: [Qt-creator] build settings for cross platform? multiple svn checkouts on each development computer You mean edit and (svn commit) the project's ".pro.user" file? (Not the project's ".pro" file?) And the .pro file has hardcoded / absolute paths in it, so how does this let me do a simple (svn checkout and build that just works, with the exact same .pro.user file) for (multiple computers) and (multiple checkouts on the same computer)? Is it required to manually edit the .pro.user XML file's text? thank you for any leads - Original Message - From: "Danny Price" To: qt-creator@trolltech.com Sent: Sunday, April 18, 2010 9:21:30 AM GMT -06:00 US/Canada Central Subject: Re: [Qt-creator] build settings for cross platform? multiple svn checkouts on each development computer Set you build settings, project directories and platform-specific configs in the .pro file. On 18 Apr 2010, at 09:26, nobodyhere wrote: > Is there information on how to (svn commit) cross platform (Windows, Mac, > Linux) build settings for a Qt Creator project, that doesn't have any > absolute paths? > > I created a new project on Windows, then (svn commit) it. Then I did (svn > checkout) of the project on Mac OS. Unfortunately, I had to create a new set > of build settings to get it to build / compile? But it seems to be storing > this build settings stuff in the [project].pro.user file, with absolute paths? > > How can I fix it so that I can simplify for anyone to do multiple fresh (svn > checkout)'s of the project on each machine (regardless of OS), and have the > build / compile just work (for Windows, Mac, Linux builds) (with multiple > checkouts per machine, using relative paths)? > > Why are there absolute paths in this [project].user.pro file (for example, > the buildDirectory has an absolute path)? > > thank you for any leads > ___ > Qt-creator mailing list > Qt-creator@trolltech.com > http://lists.trolltech.com/mailman/listinfo/qt-creator ___ Qt-creator mailing list Qt-creator@trolltech.com http://lists.trolltech.com/mailman/listinfo/qt-creator ___ Qt-creator mailing list Qt-creator@trolltech.com http://lists.trolltech.com/mailman/listinfo/qt-creator
Re: [Qt-creator] build settings for cross platform? multiple svn checkouts on each development computer
You mean edit and (svn commit) the project's ".pro.user" file? (Not the project's ".pro" file?) And the .pro file has hardcoded / absolute paths in it, so how does this let me do a simple (svn checkout and build that just works, with the exact same .pro.user file) for (multiple computers) and (multiple checkouts on the same computer)? Is it required to manually edit the .pro.user XML file's text? thank you for any leads - Original Message - From: "Danny Price" To: qt-creator@trolltech.com Sent: Sunday, April 18, 2010 9:21:30 AM GMT -06:00 US/Canada Central Subject: Re: [Qt-creator] build settings for cross platform? multiple svn checkouts on each development computer Set you build settings, project directories and platform-specific configs in the .pro file. On 18 Apr 2010, at 09:26, nobodyhere wrote: > Is there information on how to (svn commit) cross platform (Windows, Mac, > Linux) build settings for a Qt Creator project, that doesn't have any > absolute paths? > > I created a new project on Windows, then (svn commit) it. Then I did (svn > checkout) of the project on Mac OS. Unfortunately, I had to create a new set > of build settings to get it to build / compile? But it seems to be storing > this build settings stuff in the [project].pro.user file, with absolute paths? > > How can I fix it so that I can simplify for anyone to do multiple fresh (svn > checkout)'s of the project on each machine (regardless of OS), and have the > build / compile just work (for Windows, Mac, Linux builds) (with multiple > checkouts per machine, using relative paths)? > > Why are there absolute paths in this [project].user.pro file (for example, > the buildDirectory has an absolute path)? > > thank you for any leads > ___ > Qt-creator mailing list > Qt-creator@trolltech.com > http://lists.trolltech.com/mailman/listinfo/qt-creator ___ Qt-creator mailing list Qt-creator@trolltech.com http://lists.trolltech.com/mailman/listinfo/qt-creator ___ Qt-creator mailing list Qt-creator@trolltech.com http://lists.trolltech.com/mailman/listinfo/qt-creator
Re: [Qt-creator] build settings for cross platform? multiple svn checkouts on each development computer
Set you build settings, project directories and platform-specific configs in the .pro file. On 18 Apr 2010, at 09:26, nobodyhere wrote: > Is there information on how to (svn commit) cross platform (Windows, Mac, > Linux) build settings for a Qt Creator project, that doesn't have any > absolute paths? > > I created a new project on Windows, then (svn commit) it. Then I did (svn > checkout) of the project on Mac OS. Unfortunately, I had to create a new set > of build settings to get it to build / compile? But it seems to be storing > this build settings stuff in the [project].pro.user file, with absolute paths? > > How can I fix it so that I can simplify for anyone to do multiple fresh (svn > checkout)'s of the project on each machine (regardless of OS), and have the > build / compile just work (for Windows, Mac, Linux builds) (with multiple > checkouts per machine, using relative paths)? > > Why are there absolute paths in this [project].user.pro file (for example, > the buildDirectory has an absolute path)? > > thank you for any leads > ___ > Qt-creator mailing list > Qt-creator@trolltech.com > http://lists.trolltech.com/mailman/listinfo/qt-creator ___ Qt-creator mailing list Qt-creator@trolltech.com http://lists.trolltech.com/mailman/listinfo/qt-creator
[Qt-creator] build settings for cross platform? multiple svn checkouts on each development computer
Is there information on how to (svn commit) cross platform (Windows, Mac, Linux) build settings for a Qt Creator project, that doesn't have any absolute paths? I created a new project on Windows, then (svn commit) it. Then I did (svn checkout) of the project on Mac OS. Unfortunately, I had to create a new set of build settings to get it to build / compile? But it seems to be storing this build settings stuff in the [project].pro.user file, with absolute paths? How can I fix it so that I can simplify for anyone to do multiple fresh (svn checkout)'s of the project on each machine (regardless of OS), and have the build / compile just work (for Windows, Mac, Linux builds) (with multiple checkouts per machine, using relative paths)? Why are there absolute paths in this [project].user.pro file (for example, the buildDirectory has an absolute path)? thank you for any leads ___ Qt-creator mailing list Qt-creator@trolltech.com http://lists.trolltech.com/mailman/listinfo/qt-creator