Linux世界: June 2009的归档

yum的CheckSum问题

| 评论(1)

一、前言

  • 最近在yum更新上吃了一点小亏,俺将俺系统从fedora10升级到了fedora11,然后架设的yum服务器在rhel开发机器上竟然不好使了,提示:

http://10.0.78.118/repo/linux/4AS/Everything/i386/os/repodata/primary.xml.gz: [Errno -3] Error performing checksum
Trying other mirror.
Error: failure: repodata/primary.xml.gz from ascnew: [Errno 256] No more mirrors to try. 

  • 于是求助Google无果,然后去fedora11上比对repodata/repomd.xml的checksum,发现该createrepo使用的sumtype竟然是sha256,导致rhel开发机器上没有sha256的算法,从而checksum类型失败。

fedora升级与输入法

| 暂无评论
    fedora升级会发生一些问题,比如老版本的abc包没有删除,会导致新版本的包所依赖这个abc包因为老版本的库连接错误而发生莫名其妙的问题;fedora下一般我用scim输入法。
    值得注意的是scim输入法其实不是一个输入法,它只是一个平台或者称为架构。
    在scim随fedora升级的过程中,就会产生一些莫名其妙的错误,比如汉字输入法不显示也不提示任何日志错误或警告,也许这个是fedora官方没有充分测试有关系,毕竟fedora官方提倡使用的是iBus输入法。
   这里有几个命令可以检查你的系统是否存在着不正确的依赖:
package-cleanup --problems
package-cleanup --dupes
rpm -Va --nofiles --nodigest
通过没有什么问题,可以尝试卸载scim所有的包,重新安装scim、scim-bridge等系列包即可完成输入法的安装。

    随着automake、autoconf的进一步发展,大多数的开源工程都采用了autoconf的架构来进行研发。

fedora11发布了

| 暂无评论
fedora11在今天发布了,主要的一些特性表现如下:
1,字体的自动化和mime类型的安装;
2,声音控制方面;
3,Intel, ATI and Nvidia显卡的内核化,将得到更好的支持,并极大的加快系统的启动速度;
4,安全指纹;
5,智能输入总线系统,将很好的支持汉字输入;
6,Presto将减少系统更新的下载量,更好的用于系统更新;
其他特性如下:
1,ext4系统;
2,虚拟化改进控制,主要是分辨率、Usb等支持方面;
3,MinGW,一种Windows下的编译器。

官方下载:http://fedoraproject.org/get-fedora

configure.inconfigure.ac中,一般在宏内不能直接使用变量,只能用常量,但是如果想使用变量,我们知道可以使用m4_esyscmdesyscmd宏来避免类似如

warning: AC_INIT: not a literal: $VERSION
的警告,这个警告可能会对后续的操作产生一定错误,比如以宏AC_INIT为例:
VERSION=`echo $(cat ./version.txt)`
AC_INIT(my-fine-package, [$version])
就会产生一个警告,但是写成如下宏的定义格式,就不会产生警告:
AC_INIT(my-fine-package, m4_esyscmd([echo $(cat ./version.txt)]))
但是这样有一个问题,我们在产生的configure文件内容中,会出现变量如下形式:
VERSION='1.0.0
'
这样在执行./configure的时候,产生shell的语法错误,怎么解决这个问题呢?去掉换行即可,在产生shell的过程当中,我们可以避免换行:
1,echo命令是会自动产生一个换行的,带上-n选项,那么就可以去掉换行,如下所示:
AC_INIT(my-fine-package, m4_esyscmd([echo -n $(cat ./version.txt)]))
2,使用tr命令去掉换行:
AC_INIT(my-fine-package, m4_esyscmd([tr -d "\n" < VERSION)]))
方法是多样的,就需要看你的shell功底了,:)。

Yum使用

| 暂无评论

yum(Yellow dog Updater,
Modified)是redhat系列(包括CentOS、SUSE、Fedora等发行版本)操作系统特有的软件管理工具,类似FreeBSD的
port和Debian的apt-get,当然yum有着更强大的功能,无论是图形还是文字界面上的。