關於 dev lib 手動安裝的問題 - Linux

Connor avatar
By Connor
at 2021-08-12T06:48

Table of Contents

※ [本文轉錄自 LinuxDev 看板 #1X55DFly ]

作者: gowrite (gowrite) 看板: LinuxDev
標題: [問題] 關於 dev lib 手動安裝的問題
時間: Thu Aug 12 06:46:37 2021



各位好,

最近在學習用一些套件跟軟體,在安裝階段想到了一個問題,

就是我們在用這些別人寫好的軟體的時候,

常常需要安裝一些 libxxxx-dev 之類的 dev library,

因為這些軟體當初在開發期間也有用到這些程式,


這時候通常就會使用 apt 的方式來安裝這些 library

在 apt 把這些 library 安裝在系統之後,

我想知道這些 library 主要是安裝在哪?並且安裝了什麼東西?


這時候我就有了一些疑問


舉例:

系統告訴我,要編譯 gnupg (gpg) 時,我需要安裝 libassuan library,

所以我找了 apt-get 上面的 libassan-dev 這個 library,

安裝之後,

我發現他在我系統的

/usr/bin/ 裝了 config 檔

/usr/include 裝了 header

/usr/lib/x86_64-linux-gnu 裝了 靜態檔、動態檔

/usr/lib/x86_64-linux-pkgconfig 裝了 pkg-config 檔

/usr/share 裡面裝了 m4 檔,文件檔,一些 copyright 文件,及 manual



我想問的是,如果今天沒有 apt-get 幫我們自動安裝這些 library 的話,

我們自己下載 libassuan 回來之後,

要怎麼把什麼東西放在哪個目錄下?



還是說,基本上沒辦法知道,

只能使用 autogen.sh,然後 configure 之後,

就是直接用 make 讓他自己去塞檔案到系統裡面?



我們從 apt-get install 的 libxxx-dev,

跟我們自己下載 tar 檔案,直接 make 安裝的結果,

是一樣的嗎?


這邊請高手、前輩們解惑一下,

謝謝


--
Tags: Linux

All Comments

Gilbert avatar
By Gilbert
at 2021-08-14T08:13
研究一下 GNU autotools 到底是在幹什麼事。
Quanna avatar
By Quanna
at 2021-08-16T09:39
cc/ld如果沒有指定header/library的path,會自動去系統內
Ophelia avatar
By Ophelia
at 2021-08-18T11:04
建的header/lib目錄搜尋,所以只要掌握放內建搜尋目錄或自
行指定搜尋目錄即可正常編譯/連結這個精神,你可以選擇看
Edith avatar
By Edith
at 2021-08-20T12:30
是要放內建搜尋目錄或自行指定搜尋目錄. 另外套件包的說
Susan avatar
By Susan
at 2021-08-22T13:55
明文件通常也會告訴你該放哪,缺文件的情況make install之
類的target也會透露放的位置
Aaliyah avatar
By Aaliyah
at 2021-08-24T15:21
dpkg -L libxxx-dev
Ophelia avatar
By Ophelia
at 2021-08-26T16:46
dev 裡面只有包 header、pkg-config、libxxx.so 的
symbolic link
Jacob avatar
By Jacob
at 2021-08-28T18:12
編譯、開發才需要的東西才放 -dev,這不難判斷吧
William avatar
By William
at 2021-08-30T19:37
大部分 distro 下 configure 都會掛 --prefix=/usr
--libdir=/usr/lib/{ARCH} 之類的
Daniel avatar
By Daniel
at 2021-09-01T21:03
你想自己包也可以 configure 照下,然後
Dinah avatar
By Dinah
at 2021-09-03T22:28
make DESTDIR=/path/to/install 把東西裝到打包的 prefix
^install
Lily avatar
By Lily
at 2021-09-05T23:54
這樣你就可以在真的裝進系統前知道到底會裝什麼
Elvira avatar
By Elvira
at 2021-09-08T01:19
distro 包的跟從 upstream 載下來的不見得會一樣
Odelette avatar
By Odelette
at 2021-09-10T02:45
不過同版本的就算有 patch 過 API/ABI 通常是不會變
Skylar Davis avatar
By Skylar Davis
at 2021-09-12T04:10
linux 慣例是放 /usr/local/lib 之類的,參考 hier(7)
Skylar DavisLinda avatar
By Skylar DavisLinda
at 2021-09-14T05:36
這是有彈性的,可以在 link 的時候指定 rpath 去找
Mary avatar
By Mary
at 2021-09-16T07:01
lib,也可以經由 LD_LIBRAY_PATH 變數讓程式去找 lib
Cara avatar
By Cara
at 2021-09-18T08:27
不是很清楚原 po 的問題的目的?要不要自行走一遭?
Emma avatar
By Emma
at 2021-09-20T09:52
https://tinyurl.com/3nhkfsy4
Gilbert avatar
By Gilbert
at 2021-09-22T11:18
你用 apt,所以應是 Debian 系的。從他的框架,裡頭
Agnes avatar
By Agnes
at 2021-09-24T12:43
會有你需要的答案。但沒必要被框架框住。
Queena avatar
By Queena
at 2021-09-26T14:09
就發行版套件打包的概念,你爽要設定自己的 prefix 也
Charlie avatar
By Charlie
at 2021-09-28T15:34
可以,不要跟其他安裝好的套件衝突到就好。
Caroline avatar
By Caroline
at 2021-09-30T17:00
/usr/local 那種是手動編譯用 root 安裝才會出現的東東
Adele avatar
By Adele
at 2021-10-02T18:25
(在 Linux) 不建議在需要長期維運的環境下,把一坨套件
全都 sudo make install 塞進那邊
Iris avatar
By Iris
at 2021-10-04T19:51
那樣很噁
Connor avatar
By Connor
at 2021-10-06T21:16
最近才剛有人把他們的系統拿給我看,/usr/local 亂裝一堆
Hedwig avatar
By Hedwig
at 2021-10-08T22:42
東西,結果系統搜尋函式庫時優先找 /usr/local/lib,導致
Eden avatar
By Eden
at 2021-10-11T00:07
各種程式使用到 /usr/local/lib 中版本不合的函式庫,最
Rae avatar
By Rae
at 2021-10-13T01:33
後連開機都有問題。
Jacky avatar
By Jacky
at 2021-10-15T02:58

網樂通 kernel 2.6.32.59 upgrade

Edith avatar
By Edith
at 2021-08-09T01:42
原文吃光來回一下舊文. STLinux在2.4後的3.10版放棄SuperH支援,所以kernel更新只到2.4支援的2.6.32版為止. 然而網路上流傳的版本是2.6.32.59,和STLinux提供的最後一版2.6.32.61仍稍有落差. 所以試著把kernel先弄上2.6.32.61,之後再看看有沒有 ...

makefile for loop 問題

Ina avatar
By Ina
at 2021-08-06T12:23
※ 引述《Wudc (二寶來啦!!)》之銘言: : 想請教一下,如果有這樣一個text file, : Text.txt: : a1 b1 c1 : a2 b2 c2 : ... : a100 b100 c100 : 要怎麼樣在makefile的 for loop 當中用三個變數分別代表 a1~a100 b1 ...

shellscript tar問題

Suhail Hany avatar
By Suhail Hany
at 2021-08-05T21:35
不好意思我又來了... 這幾天遇到一些問題想破頭只想出一點東西 決定還是來跟各位求助.. 因為剛學script 是超級菜雞 寫得很雜亂請大家見諒 #!/bin/bash last_month=$(date -d and#34;$(date +%Y%m)01 last monthand#34; +%Y%m) ...

直立外接螢幕待機後無法重開

Joseph avatar
By Joseph
at 2021-08-05T14:27
Lenovo T530 筆電,作業系統是 Ubuntu 20.04.2 LTS, 顯示卡 Nvidia NVS 5400M,用Mini DP外接了2560x1440的螢幕。 外接螢幕設橫向的時候一切正常,但是設定成轉90度直立的時候,一旦待機關閉螢幕, 就無法再正常顯示,不管是登入畫面還是登入後的畫面都不會 ...

makefile for loop 問題

Megan avatar
By Megan
at 2021-08-04T16:25
想請教一下,如果有這樣一個text file, Text.txt: a1 b1 c1 a2 b2 c2 ... a100 b100 c100 要怎麼樣在makefile的 for loop 當中用三個變數分別代表 a1~a100 b1~b100 c1~c100呢? 用 for i in $$(cat ...