Automake系列( 四)安裝可執行指令碼

2021-09-23 23:27:33 字數 920 閱讀 8662

有些程式在發布的時候,除了編譯的二進位制可執行程式以外,還需要安裝一些可執行的指令碼。安裝這些可執行指令碼,有兩種方式:

1.安裝可執行指令碼到bin目錄或者是sbin目錄

比如我這裡有個指令碼在源**目錄的./tools/cm.pl。那麼在makefile.am中增加如下語句:

dist_bin_scripts=./tools/cm.pl

將會把cm.pl指令碼安裝到目標安裝目錄的bin子目錄下。如果你想安裝到sbin目錄下,請使用

dist_sbin_scripts=./tools/cm.pl

2.安裝到其他目錄下

這個時候,可以使用install-data-hook目標或者install-exec-hook。由於automake生成的makefile在執行安裝的時候,是先執行可執行檔案的安裝的,即install-exec,後執行資料檔案的安裝,即install-data。所以install-exec-hook目標下的命令是在安裝完可執行檔案以後去執行的,而install-data-hook下的命令是安裝完資料檔案以後,去執行的。

比如我這裡想把cm.pl安裝的安裝目錄下的tools子目錄下,則在makefile.am中使用如下的語句:

install-exec-hook:

mkdir -p $(prefix)/tools

cp ./tools/cm.pl $(prefix)/tools

chmod a+x $(prefix)/tools/cm.pl

或者使用install-data-hook替換install-exec-hook也是可以的。

toolsdir = $(prefix)/tools

tools_data = ./tools/cm.pl

install-data-hook:

chmod a+x $(toolsdir)/cm.pl

automake安裝1 14 1版本

2.解壓縮automake 1.14.1.tar.gz 輸入命令 tar zxvf automake 1.14.1.tar.gz c opt 3.進入解壓縮後的目錄automake 1.14.1,輸入命令 cd opt automake 1.14.1 4.輸入命令 bootstrap.sh 5.配置...

Linux環境系列 (四)安裝nginx

安裝nginx wget c 解壓tar zvxf nginx 1.10.1.tar.gz 重新命名mv nginx 1.10.1 song nginx 安裝依賴庫 yum install gcc c yum install pcre yum install pcre devel yum insta...

Docker系列四 docker安裝mysql

docker系列四 docker安裝mysql 搜尋mysql版本 root localhost conf.d docker search mysql index name description stars official automated docker.io docker.io mysql ...