五月天青色头像情侣网名,国产亚洲av片在线观看18女人,黑人巨茎大战俄罗斯美女,扒下她的小内裤打屁股

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

雜說1 —— make、Makefile

2023-04-13 14:29 作者:FineClassFuture  | 我要投稿

????對于小項目來說,使用make(借個詞“自動化”)足夠了

????只要用到最基本的規(guī)則就夠了,配合一點通配和內置函數(shù)使使用更靈活

make -j 問題

????make -jN 可以多線程編譯,比其它系統(tǒng)慢就慢吧,小項目也就十幾秒幾十秒的時間,又何必在意。

????上面的寫法,使用make -jN會有個提示

make[1]: warning: jobserver unavailable: using -j1.? Add '+' to parent make rule.

????搜索到https://qa.1r1g.com/sf/ask/4249190851/,底下的回答說明了

(看著應該是機翻)

GNU make 手冊對這個錯誤有很好的解釋。關鍵是:'make' 不會將有關 jobserver 的信息傳遞給被調用的進程,除非確定被調用的進程也是 'make'。

'警告:作業(yè)服務器不可用:使用 -j1。將“+”添加到父生成規(guī)則。

為了使進程進行通信,父進程將信息傳遞給子進程。因為如果子進程實際上不是一個 make,這可能會導致問題,所以父進程只有在它認為子進程是一個 make 時才會這樣做。父級使用普通算法來確定這一點(請參閱MAKE 變量的工作原理)。如果 makefile 的構造使得父進程不知道子進程是一個 make 進程,那么子進程將只收到部分必要的信息。在這種情況下,子進程將生成此警告消息并按順序進行構建。

錯誤描述中引用的 MAKE 變量如何工作部分指定了兩種告訴 'make' 調用的進程是 'make' 的另一個實例的方法:使用$(MAKE)+。它指出:

  1. $(MAKE)在配方中調用“make”時應該使用變量。

    遞歸 make 命令應始終使用變量 MAKE,而不是顯式命令名稱“make”,如下所示:

    subsystem: ? ? ? ?cd subdir && $(MAKE)
  2. 在配方中調用“make”的行之前使用$(MAKE)和放置 a+具有相同的效果。

    使用 MAKE 變量與在配方行的開頭使用“+”字符具有相同的效果。

  3. 只有當您明確輸入MAKE配方時,魔法才會發(fā)生。如果不是這種情況,請使用+.

    僅當 MAKE 變量直接出現(xiàn)在配方中時才啟用此特殊功能:如果 MAKE 變量是通過擴展另一個變量引用的,則它不適用。在后一種情況下,您必須使用“+”標記來獲得這些特殊效果。

所以要改一改自己的習慣了,編寫時使用$(MAKE)替代make



雜說1 —— make、Makefile的評論 (共 條)

分享到微博請遵守國家法律
望城县| 杭州市| 宜城市| 丰镇市| 潢川县| 房山区| 察雅县| 扶沟县| 疏附县| 唐山市| 宁陕县| 麻城市| 肃北| 江门市| 姚安县| 博兴县| 合川市| 揭阳市| 五家渠市| 丰都县| 乌兰浩特市| 汉沽区| 大渡口区| 同德县| 福鼎市| 宁明县| 贺兰县| 炎陵县| 封开县| 湘乡市| 仁寿县| 股票| 涡阳县| 濉溪县| 扎鲁特旗| 庆云县| 海安县| 湟源县| 闻喜县| 平度市| 彩票|