qmake에서 gnu make -jobs 옵션
문제
QMake를 사용하여 개발중인 작은 QT C ++ 앱을 위해 mingw32 makefiles를 생성하고 있습니다. 내 문제 :이 듀얼/쿼드 코어 CPU는 모두 거기에 앉아있는 동안 하나의 스레드 만 건물을하고 있습니다. 내가 통과하려고 시도한 것들을 병렬화하기 위해 -jobs 4를 만들기 위해, 그러나 문제는 qmake가 내부의 일반적인 makefile을 생성한다는 것입니다.
Qmake가 makefile을 생성 할 때 만들기 옵션을 추가하도록 강요 할 수 있습니까? 아니면 QMake 이외의 옵션을 완전히 설정하는 또 다른 방법이 있습니까? 각 빌드가 자동 생성되었으므로 해당 특정 MakeFile을 편집 할 수 없습니다.
해결책
학대 $MAKE
모든 경우에 옵션을 통과하는 것이 작동하지 않습니다. 종종 (예 : UNIX에서 QT의 QT 스크립트 구성에서) 이중 인용문으로 둘러싸여 있습니다 ("$MAKE"
) 명령에 공백이 포함되도록합니다. 나는 작동을 멈추기 전에 같은 트릭을 사용했기 때문에 알고 있습니다. 그런 다음 QT 지원은 (정당하게) 사용하도록 제안했습니다 $MAKEFLAGS
에서와 같이
set MAKEFLAGS=-j4
make
다른 팁
이것은 나를 위해 작동합니다 :
set make_command = mingw32 -make -j%번호 _of_processors%
일반적인 makefile 사용 $(MAKE)
Make를 호출 할 때 환경 변수를 사용하여 덮어 쓸 수 있습니다. 이와 같은 일은 다음과 같습니다.
qmake
make MAKE="mingw32-make -j4"
값을 바꾸십시오 MAKE
물론 필요합니다 :)