LinuxSir.cn,穿越时空的Linuxsir!

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

ybuild system 0.1.0 & hwrepos 0.1 发布——做自己的RPM,用自己的RPM

[复制链接]
发表于 2006-7-3 20:48:42 | 显示全部楼层 |阅读模式
[再注:hwrepos已经停止维护,fedora.cn现在主要以yum仓库形式提供软件,fedora.cn的ybuild repository暂时只在开发者中使用,未来会以RPM形式发布
关于fedora.cn yum仓库:
http://www.linuxsir.cn/bbs/showthread.php?t=263806
]

ybuild system 0.1.0 & hwrepos 0.1 发布


0 简介

0.1 什么是ybuild system?
ybuild system是fedora cn(https://gro.clinux.org/projects/fedora/)的一个子项目,是一个用于构建RPM仓库的
工具集合。使用这个系统,你只需要拥有一个包含RPM spec模板(specin)文件和相应的补丁组成的目录树,就可以建
造出一组RPM来。同时,建造RPM过程中可以自动解决相应的依赖性问题。生成的RPM也可以通过yum提供的工具生成一
个yum仓库。

0.2 什么是hwrepos?
hwrepos = hellwolf's repository, 是第一个使用ybuild维护的仓库,用于ybuild初期的测试和开发用,其最终将
被fedora cn的repository所代替。

1 适用系统和依赖性

1.1 ybuild 0.1.0
ybuild由两个包组成:ybuild 和 perl-Ybuild, ybuild需要安装有perl-Ybuild和createrepo工具,perl-Ybuild
需要perl,perl-RPM2和perl-Expect。ybuild目前已在FC5上测试,但不保证其他版本FC的适用性。

1.2 hwrepos 0.1
hwrepos只适用于FC5

2 下载和安装

2.1 RPM-GPG-KEY
目前的RPM由hellwolf打包,RPM-GPG-KEY可以从下面的地址得到:
https://gro.clinux.org/scm/cvswe ... &cvsroot=fedora
将其另存为一个文件后,用rpm --import命令导入该文件即可。

2.2 ybuild 0.1.0
perl-RPM2, perl-Expect目前还不在FC5的官方仓库中(包含base,updates和extras),fedora cn提供了这两个
包的RPM:perl-Expect-1.17-1.fc5.y2.noarch.rpm,perl-RPM2-0.66-10.fc5.y9.i386.rpm。都可以从 https://gro.clinux.org/frs/?group_id=730 得到。
perl-Ybuild-0.1.0-1.fc5.y3.noarch.rpm和ybuild-0.1.0-1.fc5.y3.i386.rpm也可从https://gro.clinux.org/frs/?group_id=730 得到。
如还有其他依赖新问题都可从官方仓库用yum解决。

2.3 hwrepos 0.1

直接下载
https://gro.clinux.org/frs/download.php/1633/hwrepos-0.1.tar.gz
解压到任意目录即可。

3 使用简介

3.1 基本设置
默认的配置文件为/etc/ybuild.conf
最简化的配置:
{
  reposdir        => '/data/share/softwares/hwrepos/',
  distfilesdir    => '/data/share/softwares/distfiles/',
  ybuilddir       => '/data/share/softwares/ybuild/',
}

reposdir为repository的目录,这里使用的是hwrepos。
distfilesdir为下载的源代码所存放的目录。
ybuilddir为编译出来的RPM所存放的位置。

3.2 初始化repos
正确设置好/etc/ybuild.conf后,你要做的就是初始化repository。
你可以使用ybuild-initrepos工具。
$ybuild-initrepos
Are you sure to go on?(yes/no)yes
ybuild add app-text/acroread
Add packages in directory app-text/acroread
db in app-text/acroread is missing, updating
Add package: acroread
ybuild add app-text/chmsee
Add packages in directory app-text/chmsee
db in app-text/chmsee is missing, updating
Add package: chmsee-debuginfo
Add package: chmsee
......

3.3 查询命令
初始化成功后,运行
ybuild list
查看现在一共有多少RPM包可以创建

ybuild list -f
列出所有包,并且打印出该包目前的状态,比如:
[U I]chmsee
第一个标志表示包的数据是否最新,若最新则显示U
第二个标志表示包是否构造了最新的RPM,如果已经有了最新的RPM则显示B
地三个标志表示系统是否安装有最新的RPM,如果是则显示I

ybuild info chmsee
查看chmsee的相关信息

ybuild info -s chmsee
查看由模板生成的spec文件

3.4 建造RPM

在这之前首先要做一些设定。
因为建造和安装RPM过程中可能需要运行rpm或者yum进行包的安装,而这些命令是需要root权限的,为了能让普通
用户权限也能建造和安装RPM,ybuild模仿mock,用/usr/sbin/ybuild-helper来执行这些特权命令:
-rwsr-x--- 1 root ybuilder 5.6K Jul  3 16:53 /usr/sbin/ybuild-helper
从权限设置上,你可以看出,只要你是ybuilder组的用户(这个组在RPM安装过程中自动添加)就可以运行它。
为了把你加入到ybuilder组中,你可以运行
#gpasswd -a #username# ybuilder
或者使用工具system-config-users

加入到该组之后,重新登录(如果你在X,那么需要注销一下)后运行groups命令你会看到类似的输出:
users fuse ybuilder
说明你已经是ybuilder组的成员了。

好了,现在开始你就可以建造RPM了,这里用chmsee为例,看一下建造过程:
运行

  1. $ybuild build chmsee
  2. build package chmsee: data of package is old, rebuild needed
  3. rm -rf /tmp/ybuild_OFBZfnZRIF/SOURCES/
  4. mkdir /tmp/ybuild_OFBZfnZRIF/SOURCES/
  5. checking distfiles
  6. ln -s /home/hellwolf/tmp/distfiles/chmsee-0.9.6.tar.bz2 /tmp/ybuild_OFBZfnZRIF/SOURCES/
  7. checking patches
  8. ln -s /home/hellwolf/tmp/hwrepos/app-text/chmsee/patch/desktop-mimetype.patch /tmp/ybuild_OFBZfnZRIF/SOURCES/
  9. making source rpm
  10. mkdir -p /tmp/ybuild_OFBZfnZRIF/SRPM/
  11. rpmbuild -bs --nodeps --define "_sourcedir /tmp/ybuild_OFBZfnZRIF/SOURCES/" --define "_srcrpmdir /tmp/ybuild_OFBZfnZRIF/SRPM/" --define "ybuildnum 1" /tmp/ybuild_OFBZfnZRIF/chmsee.spec
  12. Wrote: /tmp/ybuild_OFBZfnZRIF/SRPM/chmsee-0.9.6-1.fc5.y1.src.rpm
  13. Resolve dependencies of /tmp/ybuild_OFBZfnZRIF/SRPM/chmsee-0.9.6-1.fc5.y1.src.rpm
  14. --->gtkhtml3-devel >= 3.8
  15. nothing provide gtkhtml3-devel >= 3.8
  16. try to resolve it via ybuild repository
  17. failed: No such file or directory
  18. try to resolve it use yum later
  19. --->gtk2-devel >= 2.8
  20. gtk2-devel-2.8.19-2 provide it
  21. --->libglade2-devel >= 2.0
  22. libglade2-devel-2.5.1-4.fc5.1 provide it
  23. --->chmlib-devel
  24. nothing provide chmlib-devel
  25. try to resolve it via ybuild repository
  26. failed: No such file or directory
  27. try to resolve it use yum later
  28. --->ImageMagick
  29. ImageMagick-6.2.5.4-4.2.1.fc5.3 provide it
  30. resolve packages via yum
  31. /usr/sbin/ybuild-helper yum install "gtkhtml3-devel >= 3.8" chmlib-devel
  32. Loading "changelog" plugin
  33. Loading "installonlyn" plugin
  34. Setting up Install Process
  35. Setting up repositories
  36. core                                                                 [1/4]
  37. updates                                                              [2/4]
  38. freshrpms                                                            [3/4]
  39. extras                                                               [4/4]
  40. Reading repository metadata in from local files
  41. Parsing package install arguments
  42. Resolving Dependencies
  43. --> Populating transaction set with selected packages. Please wait.
  44. ---> Downloading header for gtkhtml3-devel to pack into transaction set.
  45. gtkhtml3-devel-3.10.1-1.f 100% |=========================|  13 kB    00:00
  46. ---> Package gtkhtml3-devel.i386 0:3.10.1-1.fc5.1 set to be updated
  47. ---> Downloading header for chmlib-devel to pack into transaction set.
  48. chmlib-devel-0.38-1.fc5.i 100% |=========================| 2.5 kB    00:00
  49. ---> Package chmlib-devel.i386 0:0.38-1.fc5 set to be updated
  50. --> Running transaction check
  51. --> Processing Dependency: chmlib = 0.38-1.fc5 for package: chmlib-devel
  52. --> Restarting Dependency Resolution with new changes.
  53. --> Populating transaction set with selected packages. Please wait.
  54. ---> Downloading header for chmlib to pack into transaction set.
  55. chmlib-0.38-1.fc5.i386.rp 100% |=========================| 3.6 kB    00:00
  56. ---> Package chmlib.i386 0:0.38-1.fc5 set to be updated
  57. --> Running transaction check

  58. Dependencies Resolved

  59. =============================================================================
  60. Package                 Arch       Version          Repository        Size
  61. =============================================================================
  62. Installing:
  63. chmlib-devel            i386       0.38-1.fc5       extras            5.4 k
  64. gtkhtml3-devel          i386       3.10.1-1.fc5.1   updates            24 k
  65. Installing for dependencies:
  66. chmlib                  i386       0.38-1.fc5       extras             30 k

  67. Transaction Summary
  68. =============================================================================
  69. Install      3 Package(s)
  70. Update       0 Package(s)
  71. Remove       0 Package(s)
  72. Total download size: 59 k
  73. Is this ok [y/N]:y
  74. Downloading Packages:
  75. (1/3): gtkhtml3-devel-3.1 100% |=========================|  24 kB    00:00
  76. (2/3): chmlib-0.38-1.fc5. 100% |=========================|  30 kB    00:01
  77. (3/3): chmlib-devel-0.38- 100% |=========================| 5.4 kB    00:00
  78. Running Transaction Test
  79. Finished Transaction Test
  80. Transaction Test Succeeded
  81. Running Transaction
  82.   Installing: chmlib                       ######################### [1/3]
  83.   Installing: gtkhtml3-devel               ######################### [2/3]
  84.   Installing: chmlib-devel                 ######################### [3/3]

  85. Installed: chmlib-devel.i386 0:0.38-1.fc5 gtkhtml3-devel.i386 0:3.10.1-1.fc5.1
  86. Dependency Installed: chmlib.i386 0:0.38-1.fc5
  87. Complete!
  88. Resolve dependencies of /tmp/ybuild_OFBZfnZRIF/SRPM/chmsee-0.9.6-1.fc5.y1.src.rpm
  89. --->gtkhtml3-devel >= 3.8
  90. gtkhtml3-devel-3.10.1-1.fc5.1 provide it
  91. --->gtk2-devel >= 2.8
  92. gtk2-devel-2.8.19-2 provide it
  93. --->libglade2-devel >= 2.0
  94. libglade2-devel-2.5.1-4.fc5.1 provide it
  95. --->chmlib-devel
  96. chmlib-devel-0.38-1.fc5 provide it
  97. --->ImageMagick
  98. ImageMagick-6.2.5.4-4.2.1.fc5.3 provide it
  99. making binary rpms
  100. rm -rf /tmp/ybuild_OFBZfnZRIF/RPMS/
  101. mkdir /tmp/ybuild_OFBZfnZRIF/RPMS/
  102. rpmbuild --rebuild --define "_rpmdir /tmp/ybuild_OFBZfnZRIF/RPMS/" --define "ybuildnum 1" /tmp/ybuild_OFBZfnZRIF/SRPM/chmsee-0.9.6-1.fc5.y1.src.rpm
  103. ...
  104. ...
  105. mv /tmp/ybuild_OFBZfnZRIF/RPMS/i386/chmsee-0.9.6-1.fc5.y1.i386.rpm /home/hellwolf/tmp/ybuild//RPMS/
  106. mv /tmp/ybuild_OFBZfnZRIF/RPMS/i386/chmsee-debuginfo-0.9.6-1.fc5.y1.i386.rpm /home/hellwolf/tmp/ybuild//debug/
  107. mv /tmp/ybuild_OFBZfnZRIF/SRPM/chmsee-0.9.6-1.fc5.y1.src.rpm /home/hellwolf/tmp/ybuild//SRPMS/
  108. package chmsee built successfully
复制代码

就这么简单,中间有一次用yum安装软件,你需要按一下输入一次y来确认——你也可以通过build命令的-y选项来
跳过确认步骤。

3.5 安装RPM
执行
ybuild install chmsee
即可,同样依赖性问题会得到适当的解决。

3.6 卸载RPM
ybuild uninstall chmsee
这个命令执行的其实就是yum remove

4 其他命令简介
ybuild-mkmanifest, 生成ybuild包的Manifest文件,开发者使用。

ybuild-updateyumrepos, 该命令调用createrepos命令使你的ybuilddir成为一个yum仓库,你可以方便的维护自
己的yum仓库了。

ybuild-cleandistfiles, 清理不用的distfile

5 Bug报告
fedora cn还在建设中,目前你可以到
https://gro.clinux.org/tracker/? ... 730&func=browse
提交bug。
ybuild还在初步阶段,非常欢迎你的加入和测试:)


附录 hwrepos 0.1现有的包列表:
$ybuild list -d| sort
app-i18n/cce/
app-text/acroread/
app-text/chmsee/
CPAN/perl-Expect/
CPAN/perl-RPM2/
CPAN/perl-Ybuild/
media-fonts/acroread-fonts-chs/
media-fonts/fonts-chinese-extras/
media-libs/alsa-oss/
media-libs/win32codecs/
net-im/eva/
sys-base/fuse-convmvfs/
sys-devel/ybuild/
发表于 2006-7-4 00:24:59 | 显示全部楼层

  1. package chmsee built successfully
  2. [maplerian@belldandy ~]$ ybuild install chmsee -s
  3. Odd number of elements in hash assignment at /usr/bin/ybuild line 81.
  4. Use of uninitialized value in list assignment at /usr/bin/ybuild line 81.
  5. chmsee set to be installed later
  6. Resolve dependencies of /home/maplerian/softwares/ybuild//RPMS/chmsee-0.9.6-1.y1.i386.rpm
  7. --->/bin/sh
  8. bash-3.1-11 provide it
  9. --->/bin/sh
  10. bash-3.1-11 provide it
  11. --->chmlib
  12. chmlib-0.38-1.fc5 provide it
  13. --->gtk2 >= 2.8
  14. gtk2-2.8.18-1 provide it
  15. --->gtkhtml3 >= 3.8
  16. gtkhtml3-3.10.1-1.fc5.1 provide it
  17. --->libICE.so.6
  18. libICE-1.0.0-2.2 provide it
  19. --->libORBit-2.so.0
  20. ORBit2-2.14.0-1 provide it
  21. --->libSM.so.6
  22. libSM-1.0.0-2.2 provide it
  23. --->libart_lgpl_2.so.2
  24. libart_lgpl-2.3.17-2.2.1 provide it
  25. --->libatk-1.0.so.0
  26. atk-1.11.4-2 provide it
  27. --->libbonobo-2.so.0
  28. libbonobo-2.14.0-1 provide it
  29. --->libbonobo-activation.so.4
  30. libbonobo-2.14.0-1 provide it
  31. --->libbonoboui-2.so.0
  32. libbonoboui-2.14.0-1 provide it
  33. --->libc.so.6
  34. glibc-2.4-8 provide it
  35. --->libc.so.6(GLIBC_2.0)
  36. glibc-2.4-8 provide it
  37. --->libc.so.6(GLIBC_2.1)
  38. glibc-2.4-8 provide it
  39. --->libc.so.6(GLIBC_2.2)
  40. glibc-2.4-8 provide it
  41. --->libcairo.so.2
  42. cairo-1.0.4-1 provide it
  43. --->libchm.so.0
  44. chmlib-0.38-1.fc5 provide it
  45. --->libcrypto.so.6
  46. openssl-0.9.8a-5.2 provide it
  47. --->libdl.so.2
  48. glibc-2.4-8 provide it
  49. --->libgconf-2.so.4
  50. GConf2-2.14.0-1 provide it
  51. --->libgdk-x11-2.0.so.0
  52. gtk2-2.8.18-1 provide it
  53. --->libgdk_pixbuf-2.0.so.0
  54. gtk2-2.8.18-1 provide it
  55. --->libglade-2.0.so.0
  56. libglade2-2.5.1-5 provide it
  57. --->libglade2 >= 2.0
  58. libglade2-2.5.1-5 provide it
  59. --->libglib-2.0.so.0
  60. glib2-2.10.2-2 provide it
  61. --->libgmodule-2.0.so.0
  62. glib2-2.10.2-2 provide it
  63. --->libgnome-2.so.0
  64. libgnome-2.14.1-2 provide it
  65. --->libgnome-keyring.so.0
  66. gnome-keyring-0.4.9-1 provide it
  67. --->libgnomecanvas-2.so.0
  68. libgnomecanvas-2.14.0-1 provide it
  69. --->libgnomeprint-2-2.so.0
  70. libgnomeprint22-2.12.1-4.2 provide it
  71. --->libgnomeprintui-2-2.so.0
  72. libgnomeprintui22-2.12.1-1.2.1 provide it
  73. --->libgnomeui-2.so.0
  74. libgnomeui-2.14.1-2 provide it
  75. --->libgnomevfs-2.so.0
  76. gnome-vfs2-2.14.2-1 provide it
  77. --->libgobject-2.0.so.0
  78. glib2-2.10.2-2 provide it
  79. --->libgthread-2.0.so.0
  80. glib2-2.10.2-2 provide it
  81. --->libgtk-x11-2.0.so.0
  82. gtk2-2.8.18-1 provide it
  83. --->libgtkhtml-3.8.so.15
  84. gtkhtml3-3.10.1-1.fc5.1 provide it
  85. --->libm.so.6
  86. glibc-2.4-8 provide it
  87. --->libpango-1.0.so.0
  88. pango-1.12.3-1 provide it
  89. --->libpangocairo-1.0.so.0
  90. pango-1.12.3-1 provide it
  91. --->libpangoft2-1.0.so.0
  92. pango-1.12.3-1 provide it
  93. --->libpopt.so.0
  94. popt-1.10.2-18 provide it
  95. --->libpthread.so.0
  96. glibc-2.4-8 provide it
  97. --->libpthread.so.0(GLIBC_2.0)
  98. glibc-2.4-8 provide it
  99. --->libssl.so.6
  100. openssl-0.9.8a-5.2 provide it
  101. --->libxml2.so.2
  102. libxml2-2.6.23-1.2 provide it
  103. --->libz.so.1
  104. zlib-1.2.3-1.2.1 provide it
  105. sudo rpm -Uvh /home/maplerian/softwares/ybuild//RPMS/chmsee-0.9.6-1.y1.i386.rpm
  106. Preparing...                ########################################### [100%]
  107.    1:chmsee                 ########################################### [100%]

复制代码

不錯,越来越方便喽。。

本帖子中包含更多资源

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

x
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-7-4 08:00:25 | 显示全部楼层
安装方法补充:

  1. 手动下载下面四个RPM后执行:

  2. yum localinstall perl-Expect-1.17-1.fc5.y2.noarch.rpm perl-RPM2-0.66-10.fc5.y9.i386.rpm perl-Ybuild-0.1.0-1.fc5.y3.noarch.rpm ybuild-0.1.0-1.fc5.y3.i386.rpm

  3. 可以自动解决依赖性问题
复制代码


已知BUG:
* 依赖性少一个rpm-build,build前记得用yum install rpm-build确保你已经安装它。
* 普通用户build的时候可能会遇到/usr/src/redhat/BUILD/不能写的情况,目前的临时解决方法:
          1.  将/usr/src/redhat/BUILD/设置为普通用户可写。
或者 2.  配置rpm环境:~/.rpmmacros 文件,增加类似下面一行:
          %_topdir %(echo $HOME)/rpmbuild/
意思就是在~/rpmbuild中建造,你只需确保存在~/rpmbuild/BUILD文件夹即可
回复 支持 反对

使用道具 举报

发表于 2006-7-8 05:19:18 | 显示全部楼层
* fc6 rawhide 包含 perl-Expect,但是还是需要自行编译 perl-RPM2
* FE 一直有个工具 fedora-rpmdevtools,可以用来设置 buildroot,生成 template 等等
回复 支持 反对

使用道具 举报

发表于 2006-7-8 06:11:43 | 显示全部楼层
ybuild-initrepos 生成的 rpms/RPMS, rpms/debug, rpms/SRPMS 目录权限不对

每次更新 hwrepos 都必须重新运行 ybuild-initrepos 吗,有点慢。

repos 还是 repo?

https://gro.clinux.org/scm/cvswe ... ild/?cvsroot=fedora 是修改过的 ybuild.spec。我觉得直接用 rpms/ 的目录结构就可以,需要写个脚本来导出不同 release 的 repos tree 罢了。按照内容分类没什么意义。将 release 目录作为软件包的下级目录更容易维护一些吧。
回复 支持 反对

使用道具 举报

发表于 2006-7-8 06:15:27 | 显示全部楼层
编译第一个文件 chmsee 就出错了。下载之后直接提示下载出错。

  1. [yuan@localhost repo]$ ybuild install chmsee
  2. package chmsee is out of date(data of package is old, rebuild needed), build it now?(yes/no)yes
  3. building package chmsee: data of package is old, rebuild needed
  4. build package chmsee: data of package is old, rebuild needed
  5. rm -rf /tmp/ybuild_YKNofxnMzy/SOURCES/
  6. mkdir /tmp/ybuild_YKNofxnMzy/SOURCES/
  7. checking distfiles
  8. chmsee-0.9.6.tar.bz2 is missing, try to download it
  9. curl -O -R -S --fail --show-error http://chmsee.gro.clinux.org/chmsee-0.9.6.tar.bz2
  10.   % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
  11.                                  Dload  Upload   Total   Spent    Left  Speed
  12. 100  330k  100  330k    0     0  18095      0  0:00:18  0:00:18 --:--:-- 18653
  13. download failed at /usr/lib/perl5/vendor_perl/5.8.8/Ybuild/Repos.pm line 424.

复制代码


是不是 Ybuild 模块不能在 fc6 里面用?



  1. sub download_distfile{
  2. 236     my ($config,$distfile) = @_;
  3. 237
  4. 238     my $url = $distfile->{'url'};
  5. 239     my $distname = $distfile->{'name'};
  6. 240     my @client ;
  7. 241     if(ref($config->{'client'}) eq 'ARRAY'){
  8. 242         @client = @{$config->{'client'}};
  9. 243     }else{
  10. 244         if(-f '/usr/bin/curl'){
  11. 245             push @client,qw(curl -O -R -S --fail --show-error);
  12. 246         }elsif(-f '/usr/bin/wget'){
  13. 247             push @client,qw(wget -nd -m);
  14. 248         }
  15. 249     }
  16. 250     my $dir = getcwd;
  17. 251     chdir $config->{'distfilesdir'} or die "chdir to distfiles dir failed:$!";
  18. 252     my $rt = 1;
  19. 253     if(defined $config->{'distfiles_mirror'}){
  20. 254         $rt = yb_system_nodie(@client,$config->{'distfiles_mirror'}.'/'.$distname);
  21. 255         if($rt){
  22. 256             yb_errmsg "download from mirror failed";
  23. 257         }else{
  24. 258             return 0;
  25. 259         }
  26. 260     }
  27. 261     if($url){
  28. 262         $rt = yb_system_nodie(@client,$url);
  29. 263     }
  30. 264     chdir $dir or die "chdir to $dir failed";
  31. 265     return $rt;
  32. 266 }
复制代码


你的这段下载的代码没问题吧.. ?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-7-10 18:02:29 | 显示全部楼层
curl下载gro的东西有问题,设置client:
  1. ybuild.conf里添加一行:
  2.   client          => [qw(wget --no-verbose -nd -m)]
复制代码


另外hwrepos不继续了,现在是fedora.cn仓库了,看此帖:
http://www.linuxsir.cn/bbs/showthread.php?t=263806
回复 支持 反对

使用道具 举报

发表于 2006-7-11 00:43:13 | 显示全部楼层
ybuild build chm不成功。
  1. checking for LIBGLADE... yes
  2. checking for GTKHTML... yes
  3. checking for CHMLIB... yes
  4. checking for OpenSSL location... no
  5. checking for RSAPublicEncrypt in -lrsaref... no
  6. checking for BIO_new in -lcrypto... no
  7. configure: error: cannot link with OpenSSL
  8. error: Bad exit status from /var/tmp/rpm-tmp.28562 (%build)
  9. RPM build errors:
  10.     Bad exit status from /var/tmp/rpm-tmp.28562 (%build)
  11. command return error code 256 at /usr/lib/perl5/vendor_perl/5.8.8/Ybuild/Utils.pm line 85.
复制代码
回复 支持 反对

使用道具 举报

发表于 2006-7-11 01:00:29 | 显示全部楼层
说明一下,同样的配置我可以编译CCE。

另外,源里的那个cce和我编译的那个一样,都不能调出中文输入法输入法(Ctrl+空格)。gpm也不能中键直接粘贴选中的文字,不知道算不算bug?

还有,为啥我编译出来的RPM文件名是cce-0.51-4.y1.i386.rpm而不是FTP里面的cce-0.51-4.fc5.y3.i386.rpm呢?我yum升级过ybuild了,也ybuild-initrepos过了。

y1和y3区别何在?还有.fc5是怎么来的?要怎样配置?
回复 支持 反对

使用道具 举报

发表于 2006-7-11 09:19:40 | 显示全部楼层
每次编译都自动加1的,所以你再编译两次就有 y3 了。按照 hellwolf 的说法,把自己的 ybuild.conf 改成用 'x' 或者更小的字母,免得和仓库冲突。.fc5 是 %{?dist} 扩展来的。
回复 支持 反对

使用道具 举报

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

本版积分规则

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