(20200305已解決)Linux編譯概念中的prefix是什麼意思

  • 直譯

    直譯是前綴或加前綴的意思。

  • prefix

    配置文件中經常會出現--prefix=PATH這個概念。

    這裏就需要理解源碼的安裝過程。

  • 源碼安裝程序

    源碼的安裝一般由3個步驟組成:

    • 配置configure

      configure是一個可執行腳本,有很多選項,在待安裝的源碼路徑下使用命令./configure --help可以查看詳細的選項列表。

      ./configure的作用是檢測系統配置,如果當前環境滿足安裝軟件的依賴關係,就會生成makefile,然後就可以用makemake install來編譯、安裝;否則會報錯。

      這裏的prefix就是其中一個選項,作用是配置安裝的路徑,如果不進行獨立配置,安裝後

      1. 可執行文件默認放在/usr/local/bin
      2. 庫文件默認放在/usr/local/lib
      3. 配置文件默認放在/usr/local/etc
      4. 其他資源文件放在/usr/local/share

      如果配置了--prefix,比如.configure --prefix=/usr/local/test,就可以把所有資源文件放在/usr/local/test路徑中,當需要刪除此軟件,只需要簡單的刪除該安裝目錄,就可以把軟件卸載乾淨。

    • 編譯make
    • 安裝make install

      關於makemake install參見《理解Linux編譯概念make、makefile、cmake》

  • References

  1. Linux ./configure --prefix 命令是什麼意思?
  2. ./configure --prefix --with解釋
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章