RPM build check-rpaths error 0x0001
6,266
Solution 1
Below is the work around that helped me build it
QA_RPATHS=\$[ 0x0001|0x0002 ] rpmbuild --quiet -bb rpm.spec
Solution 2
Remove the entry /usr/lib/rpm/check-rpaths
from ~/.rpmmacros
and re-run rpmbuild
.
Related videos on Youtube
Author by
Avinash Nair
Updated on September 18, 2022Comments
-
Avinash Nair over 1 year
While building my custom rpm package using the below mentioned command
rpmbuild -v -bb test.specs
I get the below error,
+ /usr/lib/rpm/check-rpaths /usr/lib/rpm/check-buildroot ******************************************************************************* * * WARNING: 'check-rpaths' detected a broken RPATH and will cause 'rpmbuild' * to fail. To ignore these errors, you can set the '$QA_RPATHS' * environment variable which is a bitmask allowing the values * below. The current value of QA_RPATHS is 0x0000. * * 0x0001 ... standard RPATHs (e.g. /usr/lib); such RPATHs are a minor * issue but are introducing redundant searchpaths without * providing a benefit. They can also cause errors in multilib * environments. * 0x0002 ... invalid RPATHs; these are RPATHs which are neither absolute * nor relative filenames and can therefore be a SECURITY risk * 0x0004 ... insecure RPATHs; these are relative RPATHs which are a * SECURITY risk * 0x0008 ... the special '$ORIGIN' RPATHs are appearing after other * RPATHs; this is just a minor issue but usually unwanted * 0x0010 ... the RPATH is empty; there is no reason for such RPATHs * and they cause unneeded work while loading libraries * 0x0020 ... an RPATH references '..' of an absolute path; this will break * the functionality when the path before '..' is a symlink * * * Examples: * - to ignore standard and empty RPATHs, execute 'rpmbuild' like * $ QA_RPATHS=$[ 0x0001|0x0010 ] rpmbuild my-package.src.rpm * - to check existing files, set $RPM_BUILD_ROOT and execute check-rpaths like * $ RPM_BUILD_ROOT=<top-dir> /usr/lib/rpm/check-rpaths * ******************************************************************************* ERROR 0001: file '/opt/TestMachineLinuxWithJre/lib/tls/x64Linux2.6gcc4.4.5/libnddstlsd.so' contains a standard rpath '/usr/X11R6/lib64' in [/usr/X11R6/lib64]
Guys! is there a way out, Thanks in advance
-
Admin over 8 yearsif you don't need specs file and all, just install some package files via rpm, give a try on
https://github.com/jordansissel/fpm
.
-
-
Rich Homolka almost 8 yearsYou can also put this env var in your %install section. Makes it easier to do automated builds.
-
Sinc about 2 yearsI had to merge the flags together to avoid an error that 0x0002 is a command not found:
QA_RPATHS=\$[0x0003]
. The help provided in the error isn't very precise.