配置脚本创建一个 Makefile。在那个 Makefile 中是以下内容:
# Shared libraries must be installed with executable mode on some systems;
# rather than figuring out exactly which, we always give them executable mode.
# Also, making them read-only seems to be a good idea...
INSTALL_SHARED= ${INSTALL} -m 555
我不是汽车制造专家,所以可能有一些选项可以调整它。但是,我在规范文件的 %install 部分执行此操作
%install
sed -i 's/INSTALL_SHARED= ${INSTALL} -m 555/INSTALL_SHARED= ${INSTALL} -m 755'/ $RPM_BUILD_DIR/Python-%{version}/Makefile
make install DESTDIR=$RPM_BUILD_ROOT
此外,由于我正在构建 python,我还需要关闭安装后的 rpm brp-python-bytecompile 部分。我在 fedora 邮件列表中找到了这个,这归功于 David Malcom @ RedHat。这是原始线程-您可以将其放在规范文件的顶部:
%global __os_install_post %(echo '%{__os_install_post}' | sed -e 's!/usr/lib[^[:space:]]*/brp-python-bytecompile[[:space:]].*$!!g')