我在Fedora8上安裝Chmsee
命令為:yum
-y install chmsee
安裝結束后,啟動chmsee,結果系統就出現了一個錯誤:
/usr/libexec/chmsee/chmsee:
error while loading shared libraries: libgtkembedmoz.so: cannot open
shared object file: No such file or directory
從網上朋友的解決方案,大概有以下兩種
可以參考http://www.linuxdiyf.com/bbs/thread-70016-1-1.html
第一種:
查閱資料發現這個
libgtkembedmoz.so
屬于
Firefox
,出現這個原因是更新
Firefox
,我把
Firefox
還原,正常了。
第二種:
#
運行
chmsee
加載庫文件失敗
[marco.chan@fedora8
~]# chmsee
/usr/libexec/chmsee/chmsee: error while loading shared
libraries: libgtkembedmoz.so: cannot open shared object file: No such
file or
directory??#
錯誤提示
#
如果少了某個庫文件,我一般會嘗試搜索電腦里是否已經有存在
(
個人習慣
)
[root@fedora8
share]# find / -name
libgtkembedmoz.so??
/usr/lib/firefox-2.0.0.10/libgtkembedmoz.so
#
在
firefox
中找到這個庫文件。
[root@fedora8
~]# vi /etc/ld.so.conf
#
編輯庫文件配置文件,添加一行:
/usr/lib/firefox-2.0.0.10
[root@fedora8
~]# /sbin/ldconfig #
使得對剛才的配置生效
[marco.chan@fedora8
~]# chmsee #
運行正常
...
作者對此方法也作了以下解釋
這樣的修改方式有一個缺點:當
firefox-2.0.0.10
目錄名稱發生變化的時候
(
比如升級、或者刪除了
firefox)
,那么
ld.so.conf
配置文件中的“
/usr/lib/firefox-
2.0.0.10”
路徑就失效了,也就意味著又無法找到
libgtkembedmoz.so
這個庫了!所以我復制
libgtkembedmoz.so
到一個比較固定的
lib
庫文件中,比如
qt
的
lib
庫文件里
(
因為
ld.so.conf
配置文件里有指明
qt
庫文件位置
)
,這樣就比較穩妥了很多
...
由第二種方案我想到了第三種方案
第三種:
# vi
/etc/ld.so.conf.d/firefox.conf
內容為:
/usr/lib/firefox-2.0.0.10/
然后載入配置
# /sbin/ldconfig
# chmsee
Ok
了。
這種方法出現的問題和第二種的問題是一樣的。
那么該如何解決上面的問題呢?
第四種方案:
# mkdir /opt/lib
# cp
/usr/lib/firefox-2.0.0.10/ libgtkembedmoz.so /opt/lib
# vi
/etc/ld.so.conf.d/firefox.conf
內容為:
/opt/lib
然后載入配置
# /sbin/ldconfig
就可以了。即使你的
firefox
以后升級,也沒有問題了。
所以,以后如果遇到了找不到.so庫的問題,都可以通過此種方法來解決,前提是,在你的機器上已經存在了這樣的庫,如果不存在的話,那么你就要先安裝這樣的庫。如過還不行的話再做上面的配置。
|----------------------------------------------------------------------------------------|
版權聲明 版權所有 @zhyiwww
引用請注明來源 http://m.tkk7.com/zhyiwww
|----------------------------------------------------------------------------------------|
posted on 2007-12-14 17:36
zhyiwww 閱讀(8603)
評論(0) 編輯 收藏 所屬分類:
linux