LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1266|回复: 8

请问高手们是如何解决包依赖关系的

[复制链接]
发表于 2009-5-29 21:36:10 | 显示全部楼层 |阅读模式
slack本身没有ports这样的工具,各位是如何靠脑子解决包依赖关系的?

我很想学学,早不到入门方法。
发表于 2009-5-29 22:15:02 | 显示全部楼层
./configure 或者在终端运行程序,会给你提示缺什么,然后装就是了~
回复 支持 反对

使用道具 举报

发表于 2009-5-29 23:53:47 | 显示全部楼层
奇怪的是
我用 slackware 以来,自己安装了几个软件,都没有遇到过 依赖 问题,感觉没有依赖的世界真的很轻松
O(∩_∩)O~
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-5-30 21:16:16 | 显示全部楼层
Post by vvoody;1992075
./configure 或者在终端运行程序,会给你提示缺什么,然后装就是了~


你的意识是先安装目标程序,运行装的程序后如有依赖会提示对吗?
回复 支持 反对

使用道具 举报

发表于 2009-5-30 21:25:49 | 显示全部楼层
ggy@darkstar:~$ ldd `which smplayer`                                       注:这二个`` 是esc键下面的`   
        linux-gate.so.1 =>  (0xffffe000)                                      
        libQtXml.so.4 => /usr/lib/qt/lib/libQtXml.so.4 (0xb7f87000)           
        libQtGui.so.4 => /usr/lib/qt/lib/libQtGui.so.4 (0xb75a8000)           
        libpng.so.3 => /usr/lib/libpng.so.3 (0xb7551000)                     
        libfreetype.so.6 => /usr/lib/libfreetype.so.6 (0xb74db000)            
        libgobject-2.0.so.0 => /usr/lib/libgobject-2.0.so.0 (0xb74a1000)      
        libSM.so.6 => /usr/lib/libSM.so.6 (0xb7498000)                        
        libICE.so.6 => /usr/lib/libICE.so.6 (0xb7481000)                     
        libXrender.so.1 => /usr/lib/libXrender.so.1 (0xb7479000)              
        libfontconfig.so.1 => /usr/lib/libfontconfig.so.1 (0xb7450000)        
        libXext.so.6 => /usr/lib/libXext.so.6 (0xb7442000)                    
        libX11.so.6 => /usr/lib/libX11.so.6 (0xb735b000)                     
        libQtNetwork.so.4 => /usr/lib/qt/lib/libQtNetwork.so.4 (0xb7241000)   
        libQtCore.so.4 => /usr/lib/qt/lib/libQtCore.so.4 (0xb7007000)         
        libz.so.1 => /usr/lib/libz.so.1 (0xb6ff3000)                          
        libgthread-2.0.so.0 => /usr/lib/libgthread-2.0.so.0 (0xb6fef000)
        librt.so.1 => /lib/librt.so.1 (0xb6fe6000)
        libglib-2.0.so.0 => /usr/lib/libglib-2.0.so.0 (0xb6f12000)
        libdl.so.2 => /lib/libdl.so.2 (0xb6f0e000)
        libpthread.so.0 => /lib/libpthread.so.0 (0xb6ef6000)
        libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0xb6e0e000)
        libm.so.6 => /lib/libm.so.6 (0xb6de8000)
        libgcc_s.so.1 => /usr/lib/libgcc_s.so.1 (0xb6ddb000)
        libc.so.6 => /lib/libc.so.6 (0xb6c7b000)
        libexpat.so.1 => /usr/lib/libexpat.so.1 (0xb6c5a000)
        libXau.so.6 => /usr/lib/libXau.so.6 (0xb6c57000)
        libxcb-xlib.so.0 => /usr/lib/libxcb-xlib.so.0 (0xb6c55000)
        libxcb.so.1 => /usr/lib/libxcb.so.1 (0xb6c3e000)
        /lib/ld-linux.so.2 (0xb7fcb000)
        libXdmcp.so.6 => /usr/lib/libXdmcp.so.6 (0xb6c38000)
ggy@darkstar:~$

把软件装好后可以这么看,简单明了!
slackware 的安装时有个目录叫L 里面已经把99%的依赖包,也就是库文件都安装上了。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-5-30 21:29:49 | 显示全部楼层
Post by sunny_5252;1992359

把软件装好后可以这么看,简单明了!
slackware 的安装时有个目录叫L 里面已经把99%的依赖包,也就是库文件都安装上了。


我看不懂,能细说吗?
回复 支持 反对

使用道具 举报

发表于 2009-5-30 22:16:14 | 显示全部楼层
这个我总结一下,
.configure 这里是用源代码编译的时候,如果有没有的包,会停止编译过程,看出错提示,就知道差的包了。

sunny_5252说的是安装好slack的包后,用ldd命令可以查看某个软件依赖的库文件。

slackware的安装文件是分类放的,其中的  L 目录里面是库文件,安装的时候可以选择安装。他的建议是把这个文件夹中的全部安装。
回复 支持 反对

使用道具 举报

发表于 2009-5-30 23:01:37 | 显示全部楼层
ldd是个好方法。
slackware(12.0)下我装过最痛苦的是Deluge,一堆py、wx的依赖,当时12.0都没,千辛万苦装好了就不高兴去用他了。。。
回复 支持 反对

使用道具 举报

发表于 2009-5-31 12:51:21 | 显示全部楼层
如果是full安装,平时使用大部分软件都不会有依赖问题
不过有时候新版的要依赖新版的库,./configure时就可以知道
如果本身不太熟悉手动编译的方法,建议安装该软件前,看看说明文档,对应一下自己系统上的库版本(你可以用pkgtool来view一下)
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表