什么是qt构建系统中的jom?如何从命令行调用jom来构建qt项目?

时间:2014-05-07 06:12:38

标签: c++ qt build

尝试构建并运行一个简单的" Hello world .."从命令行Qt应用程序,启动以下步骤并进行编译和构建.. 1.创建main.cpp文件 2.运行qmake -pro创建项目文件 3.运行qmake以创建make文件        (这里要么必须运行nmake或jom ..我试过jom) 4.运行jom.exe makefile,但没有任何反应..

所以这是我的问题.. 什么是jom(和扩展?), 如何从命令行调用jom ..

我正在使用Qt 5.1.1和Microsoft Visual C ++编译器11.0。

2 个答案:

答案 0 :(得分:11)

nmake没有像GNU make那样利用所有可用的处理能力。 jom是nmake的克隆,用于支持并行执行多个独立命令。它可以同时使用任意数量的进程。

当使用它时例如在具有Qt构建的四核机器上花费一半时间使用nmake。

您还可以使用-j命令行参数来设置并发进程数:

C:\Qt\Qt5.1.1\Tools\QtCreator\bin\jom.exe -j 12 -f Makefile 

12表示您要使用的核心数。我使用12,因为我有12个线程。

答案 1 :(得分:0)

正如(Nejat)回答的那样,GNU Make在本主题中有一些众所周知的局限性,并且它没有使用所有可用的计算能力,因此我建议使用jom。 jom是nmake的克隆,可支持并行执行多个独立命令。它可以同时使用任意数量的进程。

要使用Jom,必须在项目本身而不是Qt工具选项中进行设置:

  1. 转到项目的构建设置,在“构建步骤”类别下有一个“制作”项。
  2. 对此进行详细说明,您将找到“ Override mingw32-make.exe:”项。粘贴作业位置,例如那里的“ C:\ QtSDK \ QtCreator \ bin \ jom.exe”,突然间我正在使用多个内核进行构建。

Steps to set up jom

所有功劳归于上面的内贾特答案。