Re: [問題] 新手在Lubuntu安裝軟體問題,請益
看板Linux作者ChakraLinux (GNU/Chakra Project)時間6年前 (2018/04/17 20:12)推噓4(4推 0噓 4→)留言8則, 5人參與討論串6/7 (看更多)
推
04/17 16:51,
04/17 16:51
→
04/17 16:51,
04/17 16:51
FreeBSD表示:
https://www.freebsd.org/cgi/man.cgi?pkg-repository
Linux From Scratch(LFS) 表示:
http://www.linuxfromscratch.org/index.html
追新這個理由主要見於桌面玩家或開發者,其次才是真的因為系統版本老舊
eg. Debian stable,或者是企業內部的老伺服器在跑已經不被支援的作業系統
但是擁有新功能的新軟體只支援新版函式庫…然後又不可能冒著下線的風險整個系統重灌
(XP 表示:(嚴重誤
其實make; make install這個流程才是最老派的手段
只是現在大部份的人已經不崇尚自己認識自己的系統了
※ 引述《Neisseria (Neisseria)》之銘言:
: 標題: Re: [問題] 新手在Lubuntu安裝軟體問題,請益
: 時間: Tue Apr 17 16:49:06 2018
:
: : 推 shyangs: 如果遇到 依賴不同版本的同一lib 情況怎麼辦 04/17 01:08
: 理想上,函式庫總會向後相容
: 但寫過程式就知道,理想終究是理想
:
: 最土炮的方法就是全部用靜態連結包執行檔
: 但 Linuxer 的安全意識比較強,這樣包沒人敢拿去用
:
: 目前常見的方法
:
: - Docker
: - Snap
:
通常只是因為講師不想解釋什麼是dynamic linker
(畢竟又不是付錢來聽Linux system management的,我是來聽潮科技der)
加上發展這些容器技術的人也需要資金養自己
所以看起來好像風聲水火…至於各種重造車輪或者是違反開源精神的事件…
(謎:現在還有人在乎這種打高空的道德精神嗎?)
當兩個程式依賴不同版本的同一函式庫時…發行版會幫你搞定——大部分
https://packages.ubuntu.com/search?suite=default&keywords=autoconf
通常都是在末尾標注版號,並且對soname的命名做變化
對於有共通且無關版號的元件,通常也會分出-common包
git.archlinux.org/svntogit/packages.git/tree/trunk/PKGBUILD?h=packages/pyqt5
(詳情請看各家的編譯規範)
最後的最後,就是在執行時要讓程式知道要去哪裡找函式庫
這時候就會出動 linker
由LD_LIBRARY_PATH與LIBRARY_PATH來告訴系統要去哪裡找
通常由於ABI/API不相容,程式會自己包一個library
常見的如libfontconfig,libssl等等
使用者在終端機上就會這樣執行
LD_LIBRARY_PATH=/opt/myapp/:$LD_LIBRARY_PATH myapp
: 想法就是除了底層系統外,自己弄相依性
: 當然該軟體內的微環境要和外部隔離開來,不同技術有不同方法
:
: 有些程式語言有類似的工具,像 virtualenv (Python) 或 bundler (Ruby)
: 但這類工具主要是用環境變數來創造隔離的環境,和前面講的方法不同
:
:
: P.S. 技術細節不太熟,講錯請小力鞭
:
: --
: ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 112.105.249.161
: ※ 文章網址: https://www.ptt.cc/bbs/Linux/M.1523954948.A.FB6.html
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 140.119.120.6
※ 文章網址: https://www.ptt.cc/bbs/Linux/M.1523967172.A.790.html
推
04/17 20:32,
6年前
, 1F
04/17 20:32, 1F
推
04/17 23:33,
6年前
, 2F
04/17 23:33, 2F
→
04/17 23:33,
6年前
, 3F
04/17 23:33, 3F
→
04/17 23:34,
6年前
, 4F
04/17 23:34, 4F
最近也在看神奇的m4
大部分老牌的gnu project不但會提供configure甚至會提供configure.ac
讓使用者決定自己要從多源頭開始編譯
patch
autoreconfig
./configure
make
make check
make install
等等等等
不過欣賞是一回事,要自己寫就…(倒
其實套件管理系統只是把這些動作標準化,並且加上一些更平易近人的描述
然後確保使用者有個小秘書能知道系統內所有的檔案是誰產生的、誰有權限讀/寫
出問題或升級時要怎麼處置等行政流程(?
→
04/18 14:51,
6年前
, 5F
04/18 14:51, 5F
推
04/18 22:13,
6年前
, 6F
04/18 22:13, 6F
推
04/18 22:29,
6年前
, 7F
04/18 22:29, 7F
→
04/18 22:29,
6年前
, 8F
04/18 22:29, 8F
現在還強調復古風的大概就LFS惹吧
連gentoo都有自己一套ebuild系統惹
※ 編輯: ChakraLinux (140.119.157.128), 04/22/2018 00:48:30
討論串 (同標題文章)
完整討論串 (本文為第 6 之 7 篇):