前言
makefile真是個(gè)神奇的東西噩斟,主要作用還是在如自動(dòng)化編譯安裝軟件。我這里并沒有什么大型的代碼需要編譯,出于對(duì)makefile的好奇,我決定用它來實(shí)現(xiàn)常用軟件的自動(dòng)化安裝并级。
如果能通過一行指令從0一下子安裝完所需要的軟件拂檩,是不是想想都刺激啊侮腹。
如何寫
makefile文件里面,用到很多的shell命令稻励。其實(shí)如果安裝軟件父阻,shell命令足夠了,但是我還是想把這些操作集成在一起望抽。
開始動(dòng)手
現(xiàn)在先來安裝一下最常使用的開源服務(wù)器nginx加矛。安裝目前最新的nginx版本1.12.2。
file: Makefile
test:
echo "hello world!"
nginx:
echo "準(zhǔn)備安裝nginx"
wget http://nginx.org/download/nginx-1.12.2.tar.gz
tar -vxzf nginx-1.12.2.tar.gz
cd nginx-1.12.2 && ./configure --without-http_gzip_module --without-http_rewrite_module && make && make install
ln -s /usr/local/bin/nginx /usr/local/nginx/sbin/nginx
echo "nginx安裝成功"
只要執(zhí)行make nginx
, 就可以把nginx安裝到你的linux上了煤篙,是不是很刺激啊
同理也可以繼續(xù)安裝其他你想要一鍵安裝的軟件斟览,然后就可以這么用了
make nginx
make redis
make mysql
make nodejs
make python
當(dāng)然,用自帶的apt-get i xxx
來安裝也是可以的辑奈,但是你可以通過編寫的Makefile
來自定義安裝苛茂。比如安裝目錄,軟件版本等等鸠窗,還是會(huì)有一定用處的妓羊。
小結(jié)
makefile是很強(qiáng)大的,單單用來安裝這些小東西稍计,真是大材小用了躁绸。