二进制文件打包后损坏

二进制文件打包后损坏

快速概述一下,我正在做的是使用捆绑 Nodejs 应用程序附上.js转换为单个二进制文件,然后使用rpmbuild将带有配置文件的整个项目转换为单个包。打包之前一切都很好,但安装结果 rpm 后有一个二进制文件被损坏。该文件是 40MB 的二进制文件,而 rpm 为 52MB,但安装后提取的二进制文件只有 15MB。

这是我的规格文件:

Name: Packager
Version: 2.0
Release: 0
License: Proprietary
Group: System/Extras
Distribution: Linux CentOS
Packager: Ammar Lakis <[email protected]>
Requires: mongodb-server
Summary: A quick packager

%description
Package made for packaging

%build
cd %{my_source}
npm run build

%install
cp -r %{my_source}/pkg/ $RPM_BUILD_ROOT

%post
systemctl enable packager

%files
/usr/bin/packager
/usr/bin/packager-tools
/etc/packager

构建过程是用这个命令完成的

rpmbuild -bb --define 'my_source /root/Packager/' packager.spec

是否有任何原因导致捆绑文件被截断?

答案1

默认情况下,rpmbuild 在将二进制文件和库/usr/lib/rpm/brp-compress放入 rpm 文件后将其剥离(使用 )。您应该能够通过添加到规范文件的开头来禁用此功能

%global __os_install_post %{nil}

相关内容