我正在构建一个RPM文件,在安装RPM期间,我需要获取.rpm文件的路径。
echo $PWD将返回- '/‘
echo %(pwd)将返回到RPM生成位置的路径。
进一步解释
假设我正在生成A.rpm文件,当在远程系统上部署时,我希望将远程系统放到文件中。
A.rpm argument.txt
在%预部分中,我想读取argument.txt文件,也就是类似的内容
if [ ! -f [what to put here]/argument.txt ]; then
do something
fi
rpm文件位置在构建时中是未知的,参数文件被保证放置在rpm 旁边。
我怎样才能做到这
有没有办法指定rpmbuild生成的RPM的版本?
例如:在RPM版本为4.8.0的机器上,我希望能够生成适合在运行rpm版本4.4.2.3的机器上部署的RPM文件,以及适合在rpm版本4.8.0上部署的RPM文件
出于遗留原因,我需要这样做--目前我需要一个带有RPM版本4.4.2.3的专用遗留构建框。
TY
我需要在MacOS上为Java软件包构建一个RPM。我使用的是自制的rpmbuild,4.14.2.1版本。工具链的设置是正确的,我在最后得到了一个有效的RPM。只有一个问题: RPM有一个目标操作系统字符串"darwin",因为它是在那里构建的,并且试图在普通Linux (认为CentOS)上安装它时,消息失败了。
Transaction check error:
package myrpm.noarch is intended for a different operating system
事实上,查询RPM证实了原因:
# rpm -qp --qf '%{o
我正在尝试将mysql-proxy-0.8.4.tar.gz编译并打包到rpm中。我按照说明来构建
[root@localhost mysql-proxy]# rpmbuild -ta --clean mysql-proxy-0.8.4.tar.gz
我得到了这个错误
checking which pkg-config file to use to find Lua... configure: error: MySQL Proxy can't be built using --without-lua, lua 5.1 is required
error: Bad exit status
我正在尝试使用rpmbuild工具构建一个rpm。我有源代码,它构建了大约30 GB的二进制文件。这个软件,我要做的rpm有几十个可执行程序。当我只复制单个可执行文件的二进制文件时(例如。我的rpm构建成功。但是当我将整个构建转储到rpm时,rpmbuild做了所有的事情,但是最终给出了一个seg错误。
这是我的规范文件:
# This is a sample spec file for wget
%define _topdir /root/mywget
%define name source
%define release 1
%define ver