LinuxSir.cn,穿越时空的Linuxsir!

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

怎么制作tgz??

[复制链接]
发表于 2005-8-1 01:14:54 | 显示全部楼层 |阅读模式
在以前安装damnsmall linux(debian一个live分支)时留下了一个9.9M的xfree86 .dsl
在fanx下查看时, :cool: 有内容
发现它和tgz包是一样的
把一些已经编译好的文件打包了,只要解压后就能够用的
但运行installpkg xfree86.dsl
提示不是一个tgz文件
错了?
改名成xfree86.tgz
还是没有成功 :beat
难道fanx错报?
回到windows
用winrar打开(如图)的确是像tgz一样的文件自解压包啊
:ask
请教一下大家
像这样的情况,怎么才能把它变成tgz??

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
发表于 2005-8-1 06:02:50 | 显示全部楼层
makepkg
搜索精华贴先……
回复 支持 反对

使用道具 举报

发表于 2005-8-1 09:28:13 | 显示全部楼层
简单点的可以用checkinstall
回复 支持 反对

使用道具 举报

发表于 2005-8-1 09:45:40 | 显示全部楼层
slackware的tgz包里面带有安装目的地的信息(install/slack-desc),这样installpkg才会知道把解压后的文件安装到哪里,因此一般的tar.gz压缩格式的文件不能用installpkg
回复 支持 反对

使用道具 举报

发表于 2005-8-1 16:49:51 | 显示全部楼层
install/slack-desc只是包的描述,并不是必须的,也不包含安装目的地信息。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-8-1 16:52:59 | 显示全部楼层
似乎不像大家想得那么简单呢
试试把它改成.tgz
然后直接installpkg
但显示
gzip -l命令出错,
经过测试,发现gzip无法识别它的格式
但它的确是压缩格式
RAR可以打开啊
请问大家,如果我把它里面的文件解压了,怎么制作tgz??
它不是源代码,是已经编译好的文件打包
回复 支持 反对

使用道具 举报

发表于 2005-8-1 16:56:42 | 显示全部楼层
mkdir temp
把包解压到temp
确保usr和home直接在temp目录下
然后cd temp
makepkg -l y -c n -p package-arch-version-build.tgz
比如
makepkg -l y -c n -p xfree86-i386-1-1rph.tgz
你这么做的目的是什么,有何必要。
回复 支持 反对

使用道具 举报

发表于 2005-8-1 16:58:30 | 显示全部楼层
补充:
cd temp
chown -R root.root usr
chgrp -R bin {usr/,}{s,}bin usr/{local,X11R6}/bin
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-8-1 16:58:45 | 显示全部楼层
( cd usr/lib ; rm -rf libscim-1.0.so.0 )
( cd usr/lib ; ln -sf libscim-1.0.so.0.5.1 libscim-1.0.so.0 )
( cd usr/lib ; rm -rf libscim-gtkutils-1.0.so.0 )
( cd usr/lib ; ln -sf libscim-gtkutils-1.0.so.0.5.1 libscim-gtkutils-1.0.so.0 )

install目录下的安装脚本,可惜的是dsl里没有这样的东西
回复 支持 反对

使用道具 举报

发表于 2005-8-1 17:00:32 | 显示全部楼层
标准的Slackware包中是没有符号连接的,建立符号链接的任务要交给install/doinst.sh脚本。

这就是makepkg -l y参数的用处。
回复 支持 反对

使用道具 举报

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

本版积分规则

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