2012-09-02 36 views
0

當按照Building Qt4文檔編譯來自mingw32-make的Qt4 git://gitorious.org/qt/qt.git存儲庫時,我不小心遺漏了-j [jobs]。除了編譯所花費的時間之外,這會有什麼其他區別嗎?左-j關閉mingw32-make Qt4命令?

我對命令的理解。

  • 我的命令的理解是,它控制的執行 作業量,但如果沒有在-j後置[就業]那麼 可能是毫無意義的有。
  • 我可能是錯的,因爲我仍然沒有完整的理解 configure.exe命令語法(例如configure.exe -opensource -confirm-license-release -xplatform unsupported/blackberry-armv7le-qcc -arch arm -nomake示例nomake demos -no-neon -opengl es2 -prefix c:\ dev \ qt4install)。
+0

不知道我明白這個問題。 make -j,make -j ,make -j1,make all必須具有相同的構建結果,否則就是bug。 (例如,使用qtbase進行安裝通常在OS X上失敗,使用-j => bug)。 –

+0

@Frank Osterfeld每Tom Seddon建議,它不是一個管理編譯流程順序的bug。如果它完全編譯(我不知道它是否會繼續),那麼如果一個進程打算先於另一個進程啓動,那麼可能會出現一個錯誤。 –

回答

2

-j沒有參數讓我們來決定。在您的鏈接中,從'-j [jobs]'部分:

沒有參數時,make儘可能多地同時運行配方。

如果makefile文件書寫正確,應該是有或沒有-j,雖然(如你注意到)運行一次在一個工作可能會比較慢運行它沒有區別。

+0

我想這可能很重要。我想這可能是因爲我正在考慮這個例子。在編譯Qt之前,我應該編譯一個新的configure.exe。由'-j'命令控制的最終Qt編譯可能需要類似的過程。你怎麼看? –

+0

你編譯configure.exe?你可能只是運行它。 –

+0

@Frank Osterfeld Qt黑莓設置的特殊工藝。 –