如何在Qt * .pro文件中设置环境变量?

时间:2018-01-18 17:39:43

标签: qt qmake

构建时,我希望使用环境变量来加速构建:

MAKEFLAGS=-j12

我知道如何在Qt Creator中设置它:

  1. 项目→构建→构建环境详细信息→添加

  2. 添加MAKEFLAGS,其值为-j12

  3. 这在* .pro.user文件中显示为:

    <valuelist type="QVariantList" key="ProjectExplorer.BuildConfiguration.UserEnvironmentChanges">
      <value type="QString">MAKEFLAGS=-j12</value>
    </valuelist>
    

    这个过程非常有效并且真正加快了编译速度,但我必须为每个套件和调试/发布组合完成此步骤。当我升级Qt版本时,我必须为每个组合完成此过程。

    如何在* .pro文件中设置该环境变量并将环境变量传播到每个构建流程中?

    根据评论和相关问题,我尝试了*.pro.shared,如下所示:

    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE QtCreatorProject>
    <qtcreator>
      <data>
      <variable>ProjectExplorer.Project.Target.0</variable>
      <valuemap type="QVariantMap">
       <valuemap type="QVariantMap" key="ProjectExplorer.Target.BuildConfiguration.0">
        <valuelist type="QVariantList" key="ProjectExplorer.BuildConfiguration.UserEnvironmentChanges">
         <value type="QString">MAKEFLAGS=-j12</value>
        </valuelist>
       </valuemap>
      </valuemap>
     </data>
     <data>
      <variable>ProjectExplorer.Project.Updater.FileVersion</variable>
      <value type="int">18</value>
     </data>
     <data>
      <variable>Version</variable>
      <value type="int">18</value>
     </data>
    </qtcreator>
    

    我在nuke时生成的18匹配,然后Qt Creator在重新启动Qt Creator时重新创建*.pro.user文件

1 个答案:

答案 0 :(得分:0)

您可以为每个套件设置默认环境变量。您无需重新生成.pro或.pro.user文件即可实现。添加定义后,它将自动将其提供给项目。

只需转到工具|选项|套件,然后选择您的套件。然后,向下滚动到左侧的环境标签和右侧的“更改”按钮的位置。点击它。然后,在该窗口中粘贴MAKEFLAGS = -j4。如果然后关闭首选项,转到Projects,然后在左侧为编译器选择“ Build”条目,然后向下滚动到右侧的Build Environment,您将在其中找到它。然后,您使用该工具集创建的每个项目都将具有环境变量。当然,每次更新编译器时都必须重新定义它。