2010-10-10 3 views
10

Almeno nel mio utilizzo, talvolta elimino la mia cartella di creazione CMake e ne creo una nuova, oppure ho più cartelle di compilazione (una per computer) ma una sola cartella di origine (nfs mount).dove viene eseguito qtcreator con cmake store e le impostazioni di build e come impostare tramite script?

Da quello che posso dire, Qt Creator salva le impostazioni in CMakeLists.txt.user all'interno dell'albero dei sorgenti, e alcune altre impostazioni nel file 'project.cbp' nella cartella di compilazione. Se imposto le impostazioni dalla GUI, vengono persi dopo la cancellazione/creazione della cartella di build. Abbastanza giusto, ma mi piacerebbe usare uno script per impostarli nuovamente quando viene creata una nuova build.

Allora, come faccio a:

a) rendere Qt Creator scrivere la cartella CMakeLists.txt.user altrove rispetto alla struttura di origine in modo che le impostazioni specifiche della macchina sono tenuti (ad esempio di debug sul computer di sviluppo, rilascio sul computer di prova)?

b) leggere/scrivere le impostazioni di generazione ed esecuzione dal progetto QT Creator, come gli argomenti di debug per ogni eseguibile e comandi di compilazione aggiuntivi (ad es. -j8)?

Quindi farei qualcosa come "execute_process (...)" in CMakeLists.txt per impostare alcuni argomenti di debug e generazione per il progetto QT Creator.

risposta

4

Ah, in realtà l'args comando, costruire le impostazioni e gli elementi correlati sono situati nel CMakeLists.txt.user da QtCreator ...

ad esempio:

<valuemap key="ProjectExplorer.Target.RunConfiguration.1" type="QVariantMap"> 
<value key="CMakeProjectManager.BaseEnvironmentBase" type="int">2</value> 
<value key="CMakeProjectManager.CMakeRunConfiguation.Title" type="QString">matching_test</value> 
<value key="CMakeProjectManager.CMakeRunConfiguration.Arguments" type="QString">camera.pklogitech.yml 0 .</value> 

così i args che sono usati sono "camera.pklogitech.yml 0." per la voce di questo binario ...

Quindi penso che uno script potrebbe essere fatto per entrare e impostare quei valori di default ... troppo male QT Creator non fornisce un'interfaccia migliore per importarli.