尝试打包我的自定义构建的MongoDB 2.6.6(使用SSL),我使用了来自www.mongodb.org的源代码中的buildscript /的packager.py脚本。
我已根据this以及由于文件位置而导致的错误,在一些地方对其进行了更改。
我已经过来了,但现在我得到的错误来自rpmbuild
:
error: File not found: /tmp/tmp7vZvNP/rpmbuild/BUILDROOT/mongodb-org-2.6.6-1.%{_arch}/usr/bin/mongod
抛开我搜索过的事实,无法找到%{_arch}
来自哪里,mongod
/tmp/tmp7vZvNP/rpmbuild/BUILDROOT/mongodb-org-2.6.6-1.%\{_arch\}/usr/bin/mongodb-linux-x86_64-2.6.6/bin/
二进制文件
为规范文件定义的{_bindir}在哪里? 还有什么想法我接下来应该追求的是什么?
答案 0 :(得分:0)
所以在阅读@Etan Reisner的评论后,我做了以下事情:
将write_rpm_macros_file
更改为如下所示:
def write_rpm_macros_file(path, topdir, arch):
f=open(path, 'w')
try:
f.write("%%_topdir %s\n" % topdir)
f.write("%%_arch %s\n" % arch)
f.write("%%_bindir %s" % "/usr/bin/mongodb-linux-x86_64-2.6.6/bin/")
finally:
f.close()
现在我正确构建了一个RPM。
修改: 我更改了二进制文件tar.gz文件,现在不需要%_bindir宏...