linux命令學習:PATH and LDFLAGS and CFLAGS

來源:互聯網
上載者:User

CFLAGS 表示用於 C 編譯器的選項,
CXXFLAGS 表示用於 C++ 編譯器的選項。
這兩個變數實際上涵蓋了編譯和彙編兩個步驟。

先來看幾個相關的環境變數:PATH、LDFLAGS、CFLAGS
PATH:大家應該都很熟悉。安裝一個包後可能會在安裝目錄建立一個bin目錄,裡面都是些可執行程式,為了讓系統能找到這些程式,就需要我們把該路徑加入到PATH環境變數中。下面會講到如何加入。
LDFLAGS:gcc等編譯器會用到的一些最佳化參數,也可以在裡面指定庫檔案的位置。用法:LDFLAGS=“-L/usr/lib -L/path/to/your/lib”。每安裝一個包都幾乎一定的會在安裝目錄裡建立一個lib目錄。如果你明明安裝了某個包,而安裝另一個包時,它愣是說找不到,那就把那個包的lib路徑加入的LDFALGS中試一下吧。
CFLAGS:和LDFLAGS類似,只不過要向裡加如的是標頭檔(.h檔案)的路徑,如:CFLAGS=“-I/usr/include -I/path/to/your/include”。同樣地,安裝一個包時會在安裝路徑下建立一個include目錄,當安裝過程中出現問題時,試著把以前安裝的包的include目錄加入到該變數中來。
那如何在那些變數中加入這些路徑呢?以PATH變數為例。
一種方法是:直接在命令列下:
$ PATH="$PATH:/path/to/your/bin:/another/path/to/bin"
$ export PATH
這種方法的好處是方便,立即生效,缺點是把當前會話或shell關了之後就失效了,下次還得運行一遍。
另一種方法是:把下面的兩行內容加入到~/.bashrc檔案中,如果想讓其影響到整個系統而不僅僅是目前使用者,就把下面的內容加入到/etc/bash.bashrc(記得有的系統是/etc/bashrc這個檔案)

PATH="$PATH:/path/to/your/bin:/another/path/to/bin"
export
PATH

然後,重新啟動shell即可。
需要注意的是,PATH變數的分隔字元是:號,其他的是空格,
所以LDFLAGS應該是這樣:
LDFLAGS=“$LDFLAGS -L/path/to/lib -L/path/to/lib”
CFLAGS應該是這樣:
CFLAGS=“$CFLAGS -I/path/to/iclude -I/path/to/include”

引用:http://zhuairlunjj.blog.163.com/blog/static/8005094520101113112810878/?fromdm&fromSearch&isFromSearchEngine=yes

http://lamp.linux.gov.cn/Linux/inside_config_compile_install.html

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.