作者sasoric (sasori.c)
看板Linux
標題Re: [問題] zypper一問
時間Sun Apr 18 18:36:44 2010
這個功能就真的很詭異了
似乎只有lib*.so.*這類的檔案可以這樣玩
方才找到Novell的某份文件裡面有寫到,可以用這種方式來安裝套件
例如:zypper in libstdc++.so.5
zypper似乎會把libstdc++.so.5解讀成libstdc++33
我猜是zypper有資料庫將libstdc++.so.5對應到libstdc++33
我為這樣認為是因為我做了簡單的小實驗
這次我要找的是libGLU.so.1
$ ls /usr/lib/libGLU.so*
libGLU.so libGLU.so.1 libGLU.so.1.3.070600
$
# libGLU.so -> libGLU.so.1
# libGLU.so.1 -> libGLU.so.1.3.070600
1) zypper wp libGLU.so.1:找到Mesa
2) zypper wp libGLU.so.1.3.070600:找不到 'libGLU.so.1.3.070600' 的提供者
3) zypper wp libGLU.so:找不到 'libGLU.so' 的提供者。
zypper只能找到libGLU.so.1,卻找不到其他兩個
就算libGLU.so是script產生的symbolic link所以找不到
但連實體檔案也找不到就有點說不過去
因此我認為這部分是由zypper有做對應表,而不是對package有搜尋功能
而今天下午我找到一個solution,雖然非常的難用,但是在不借助yum或smart的狀況下
似乎是唯一的方法
在YaST中,Software的部分有一個Package Search(Webpin)
在搜尋的時候把Content鉤選,就可以針對openSUSE community上所有的package進行搜尋
注意:是"所有的",包含第三方的package
YaST找出來的結果很亂,建議用網頁介面
http://packages.opensuse-community.org/
套件會根據來自不同repository做分類,不想用第三方的package,看oss及non-oss的
repository就好
感謝各位的協助及討論 :)
※ 引述《chiouss (Heart-shaped chant)》之銘言:
: ※ 引述《sasoric (sasori.c)》之銘言:
: : wp的功能我覺得是查尋某個套件來自於哪個repository,沒有查尋套件中檔案的功能
: 是有這個功能,但是不怎麼理想,在某些情況會有找不到該找到的東西。比方說找 libstdc++.so.5
: opensuse:~ # zypper wp libstdc++.so.5
: Loading repository data...
: Reading installed packages...
: S | Name | Type | Version | Arch | Repository
: --+-------------------+---------+------------+--------+------------------
: | libstdc++33 | package | 3.3.3-15.3 | x86_64 | openSUSE-11.2-Oss
: | libstdc++33 | package | 3.3.3-15.3 | i586 | openSUSE-11.2-Oss
: | libstdc++33-32bit | package | 3.3.3-15.3 | x86_64 | openSUSE-11.2-Oss
: opensuse:~ #
: 但是比方說我今天想要用 locate 這個指令,用 zypper 找
: opensuse:~ # zypper wp locate
: Loading repository data...
: Reading installed packages...
: No providers of 'locate' found.
: 但是換成用 cnf 就會告訴我答案
: opensuse:~ # cnf locate
: Program 'locate' is present in package 'findutils-locate', which is installed on your system.
: Absolute path to 'locate' is '/usr/bin/locate'. Please check your $PATH variable to see whether it contains the mentioned path.
: opensuse:~ #
: 不過很可惜像您所說的,cnf 只能用來找執行檔,如果今天找的東西是 library 這類的就沒轍了
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.112.90.49
推 dilutetarget:在openSUSE 11.2之後 YaST裡面的Software中有個 04/19 16:41
→ dilutetarget:Package Search(webpin) 如本文作者所說的 04/19 16:42
→ dilutetarget:將Search In處除預設外再勾選Contents去做搜尋 04/19 16:43
→ dilutetarget:似乎有不錯的搜尋結果 我覺得蠻好用的 推薦大家一下 04/19 16:44