日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > linux >内容正文

linux

linux软件证券,linux

發布時間:2023/12/9 linux 37 豆豆
生活随笔 收集整理的這篇文章主要介紹了 linux软件证券,linux 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1.說明

在*nix環境下,經常通過源碼安裝軟件。./configure make make install基本上都是定式了。本文對于configure的基本原理進行闡述,并借助http://concurrencykit.org/開源包的configure文件,對于實際的運行過程進行分析。

2.configure基本背景

configure文件主要是對于軟件在不同平臺編譯時,對于硬件平臺環境、編譯器、頭文件、安裝目錄等進行配置,生成makefile文件,然后再進行編譯。(在configure還沒有執行的時候,直接make,出現錯誤*** No targets specified and no makefile found. Stop.應該都遇到過吧 ^_^)。

configure文件通常是用bash腳本編寫。也就是通過執行一系列的腳本生成最后的makefile文件。所以讀者可以先看看bash相關的基礎內容。

3.configure模塊分析

在configure執行的過程中,通常涉及到(1)基本設置;(2)參數解析;(3)操作系統相關;(4)平臺架構信息;(5)編譯環境檢查;(6)頭文件檢查;(7)makefile文件生成等幾個方面。我們對于上述幾個執行部分逐一進行分析。

3.1基本設置

通常configure文件中含有了軟件版本信息、基本路徑設置等配置信息。

#變量替換,可以參照:http://en.kioskea.net/faq/1310-replacing-variables-in-bash-shell

#VERSION=${VERSION:-'0.2.8'} var=${var:-‘default’}

#如果 VERSION 沒有被設置,則使用默認的’0.2.8’

VERSION=${VERSION:-'0.2.8'}

VERSION_MAJOR='0'

BUILD="$PWD/build/ck.build"

PREFIX=${PREFIX:-"/usr/local"}

3.2參數解析

在執行configure的時候,通常可以輸入路徑等參數,對于安裝路徑、lib包位置等進行設置(比如:./configure --prefix=/usr/local)。

#$*代表輸入的參數列表,從參數 1 開始,即:忽略了本身的 configure

#value=獲得輸入的參數,并且取得參數的值

# sed -e 's/^[^=]*=\(.*\)/\1/'對于參數進行解析,獲得”=”之后的內容

#其中,^[^=]*= 從每行開頭查找不是=開始的多個字符且以=結束,

#\(.*\)/\1 將=之后的內容替換整個行

#可以參照:http://www.grymoire.com/Unix/Sed.html#uh-4

for option in $*; do

value=`echo "$option" | sed -e 's/^[^=]*=\(.*\)\1/'`

#比如:輸入./configure -–help

case "$option" in

#則通過 case 語句,執行 help 中的語句

--help)

echo "Usage: ./configure [OPTIONS]"

;;

#*為通配符,即option為"--profile=*"

--profile=*)

PROFILE=$value

;;

--prefix=*)

PREFIX=$value

;;

--includedir=*)

HEADERS=$value

esac done

對于輸入的參數逐一進行解析,根據不同的參數設定不同的參數值。 繼續閱讀 →

總結

以上是生活随笔為你收集整理的linux软件证券,linux的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。