Makefile 和 shell中的環境變數使用

2021-05-22 13:24:41 字數 444 閱讀 5196

makefile中可以通過$(var) 或者$的方式使用變數,詳細的講述大家可以參考:

之前我一直以為這兩是一樣的,沒啥區別,直到我遇到了問題。因專案需求,需要移植lighttpd到arm平台,過程中需要設定toolchain的位置, 如下:

cd $

cc=$gcc /

ar=$ar /

ld=$ld /

strip=$strip /

ranlib=$ranlib /

nm=$nm /

cc_for_build=gcc /

在這裡我用小括號死活不玩,後來才發現shell裡要用大括號,小括號則把sourcetoolchain當成乙個命令來執行了。

Makefile中的變數和shell變數

我們在寫makefile時 多多少少會用到shell指令碼,對於變數的在shell中的使用有一些要注意的細節。讓我們從乙個簡單的makefile來看看。注意makefile中一定要有乙個目標,且一定要有乙個終極目標,若想要有多個目標應該設立乙個偽目標。如下 all hello hello2 hell...

Makefile中新增shell指令碼

makefile中可以加入shell指令碼語言,但是編寫形式不一樣,makefile中都是以行為單位的,所以必須將makefile中的shell指令碼通過 連線成一行。例如 if d hisi home src sdk modify hidrv v0a1 source osdrv kernel li...

makefile中的shell語法

在makefile中寫shell 有點詭異,和不同的shell語法不太一樣,如果不了解,看makefile會莫名其妙。下面總結了一些。1 盡在makefile檔案的目標項冒號後的另起一行的 才是shell eg xx xx1 這裡時makefile yy xx xx2 這是是makefile mak...