./configure是用來檢測你的安裝平台的目標特征的。比如它會檢測你是不是有CC或GCC,
make是用來編譯的,它從Makefile中讀取指令,然后編譯。
make install是用來安裝的,它也從Makefile中讀取指令,安裝到指定的位置。
AUTOMAKE和AUTOCONF是非常有用的用來發布C程序的東西。如果你也寫程序想使用AUTOMAKE和AUTOCONF,可以參考CNGNU.ORG上的相關文章。
1、configure ,這一步一般用來生成 Makefile,為下一步的編譯做准備,你可以通過在 configure 后加上參數來對安裝進行控制,比如
上面的意思是將該軟件安裝在 /usr 下面,執行文件就會安裝在 /usr/bin (而不是默認的 /usr/local/bin),
2、make ,這一步就是編譯,大多數的源代碼包都經過這一步進行編譯
make 的作用是開始進行源代碼編譯,以及一些功能的提供,
這些功能由他的 Makefile 設置文件提供相關的功能,比如 make install 一般表示進行安裝,
make uninstal 是卸載,不加參數就是默認的進行源代碼編譯。
make 是 Linux 開發套件里面自動化編譯的一個控制程序,
他通過借助 Makefile 里面編寫的編譯規范(語法很多,類似一個可以運行的腳本程序。
反正我是看不懂,所以你也別問我怎么編寫)。進行自動化的調用 gcc 、ld 以及運行某些需要的程序進行編譯的程序。
一般情況下,他所使用的 Makefile 控制代碼,由 configure 這個設置腳本根據給定的參數和系統環境生成。
3、make insatll ,這條命令來進行安裝(當然有些軟件需要先運行 make check 或 make test
Python多版本共存
Python多版本共存是很常見的事情,我們知道在安裝Python解釋器的時候,需要將安裝包下載下來,然后使用tar -zxvf xxx.tar.gz ;然后,進行如下操作
sudo ./configure --enable-optimizations --prefix=/usr/local/python-3.5.6 --with-zlib --with-readline
--enable-optimizations
為最優安裝,建議使用這個參數。--prefix
為指定安裝的路徑
進行編譯安裝
sudo make sudo make install
修改Python軟鏈
默認python命令是在/usr/bin/目錄下,需要在這里把軟鏈修改成3.5.6的版本,順便建立一個3.5.6的軟鏈。
上圖是原默認軟鏈接,是python2.7的,其實它也己經默認建立了一個python2的軟鏈接了。
重新命名默認python軟鏈接為python2.7以便3.5的版本成為默認環境變量sudo mv /usr/bin/python /usr/bin/python2.7
建立python3.5版本的軟鏈接sudo ln -s /usr/local/python-3.5.6/bin/python3.5 /usr/bin/python
當然,也可以不做上一步,而是將3.5版本的軟鏈接成python3之類也是可行的。
比如我做的就是新增python3的軟鏈接指向python3.5所在的目錄。
順便也將配置文件也做了一個軟鏈接指向:sudo ln -s /usr/local/python-3.5.6/bin/python3.5-config /usr/bin/python3-config
安裝virtualenv
virtualenv 是一個創建隔絕的Python環境的工具。virtualenv創建一個包含所有必要的可執行文件的文件夾,用來使用Python工程所需的包。
安裝
pip install virtualenv
基本使用
- 為一個工程創建一個虛擬環境:
$ cd my_project_dir $ virtualenv venv #venv為虛擬環境目錄名,目錄名自定義
virtualenv venv
將會在當前的目錄中創建一個文件夾,包含了Python可執行文件,以及 pip
庫的一份拷貝,這樣就能安裝其他包了。虛擬環境的名字(此例中是 venv
)可以是任意的;若省略名字將會把文件均放在當前目錄。
在任何你運行命令的目錄中,這會創建Python的拷貝,並將之放在叫做 venv
的文件中。
你可以選擇使用一個Python解釋器:
$ virtualenv -p /usr/bin/python2.7 venv # -p參數指定Python解釋器程序路徑
這將會使用 /usr/bin/python2.7
中的Python解釋器。
- 要開始使用虛擬環境,其需要被激活:
$ source venv/bin/activate
從現在起,任何你使用pip安裝的包將會放在 venv
文件夾中,與全局安裝的Python隔絕開。
像平常一樣安裝包,比如:
$ pip install requests
- 如果你在虛擬環境中暫時完成了工作,則可以停用它:
$ . venv/bin/deactivate
這將會回到系統默認的Python解釋器,包括已安裝的庫也會回到默認的。
要刪除一個虛擬環境,只需刪除它的文件夾。(執行 rm -rf venv
)。
這里virtualenv 有些不便,因為virtual的啟動、停止腳本都在特定文件夾,可能一段時間后,你可能會有很多個虛擬環境散落在系統各處,你可能忘記它們的名字或者位置。
不過用anocoda會更好一些,省下單獨安裝Python的麻煩。
見annocoda的安裝手冊。