Error 0002 file contains an invalid rpath

Rpm Build Error Contains An Invalid Rpath We have collected for you the most relevant information on Rpm Build Error Contains An Invalid Rpath, as well as possible solutions to this problem. Take a look at the links provided and find the solution that works. Other people have encountered Rpm Build Error Contains An […]

Содержание

  1. Rpm Build Error Contains An Invalid Rpath
  2. c++ — rpmbuild check-rpath reports error that path is not .
  3. linux — RPM build check-rpaths error 0x0001 — Unix & Linux .
  4. RPM build is failing on the rpath in the new shared libs .
  5. WARNING: ‘check-rpaths’ detected a broken RPATH and will .
  6. WARNING: ‘check-rpaths’ detected a broken RPATH and will .
  7. assembly problem through rpmbuild on centos · Issue #9 .
  8. Creating of RPM in CentOS7 fails · Issue #191 · rizsotto .
  9. Troubleshooting Jekyll build errors for GitHub Pages sites .
  10. rpmbuild打包遇到问题汇总_u014007037зљ„дё“ж Џ-CSDNеЌље®ў
  11. scientific linux — RPM build errors — Unix & Linux Stack .
  12. Rpm Build Error Contains An Invalid Rpath Fixes & Solutions
  13. WARNING: ‘check-rpaths’ detected a broken RPATH and will cause ‘rpmbuild’ to fail #1058
  14. Comments
  15. Error 0002 file contains an invalid rpath
  16. new error about making package of zimbra
  17. Fix three issues when building RPM packages #1158
  18. Comments
  19. Footer

Rpm Build Error Contains An Invalid Rpath

We have collected for you the most relevant information on Rpm Build Error Contains An Invalid Rpath, as well as possible solutions to this problem. Take a look at the links provided and find the solution that works. Other people have encountered Rpm Build Error Contains An Invalid Rpath before you, so use the ready-made solutions.

c++ — rpmbuild check-rpath reports error that path is not .

    https://stackoverflow.com/questions/58372820/rpmbuild-check-rpath-reports-error-that-path-is-not-absolute-incorrectly
    So in my case I got no rpath error/warning in the «make» step which would have been understandable but instead I got them in the «cpack»-step which makes no sense at all. I bypassed it with setting the environment variable export QA_SKIP_RPATHS=1 AFTER the «make» and BEFORE the «cpack» step.

linux — RPM build check-rpaths error 0x0001 — Unix & Linux .

    https://unix.stackexchange.com/questions/202009/rpm-build-check-rpaths-error-0x0001
    Thanks for contributing an answer to Unix & Linux Stack Exchange! Please be sure to answer the question.Provide details and share your research! But avoid …. Asking for help, clarification, or responding to other answers.

RPM build is failing on the rpath in the new shared libs .

    https://github.com/mozilla-services/heka/issues/1311
    Feb 05, 2015 · It is an error to have an RPATH in the libraries or executable in an RPM. So the RPATHs will be removed.

WARNING: ‘check-rpaths’ detected a broken RPATH and will .

    https://github.com/openzfs/zfs/issues/1058
    ERROR 0002: file /sbin/zdb contains an invalid rpath //lib64 in [//lib64] ERROR 0002: file /sbin/zpool contains an invalid rpath //lib64 in [//lib64] ERROR 0002: file /sbin/zfs contains an invalid rpath //lib64 in [//lib64] ERROR 0002: file /lib64/libzfs.so.1.0.1 contains an invalid rpath //lib64 in [//lib64] ERROR 0002: file /lib64/libzpool.so .

WARNING: ‘check-rpaths’ detected a broken RPATH and will .

    https://www.linuxquestions.org/questions/fedora-35/warning-%27check-rpaths%27-detected-a-broken-rpath-and-will-cause-%27rpmbuild%27-to-fail-606748/
    Dec 18, 2007 · This book contains many real life examples derived from the author’s experience as a Linux system and network administrator, trainer and consultant. They hope these examples will help you to get a better understanding of the Linux system and that you feel encouraged to …

assembly problem through rpmbuild on centos · Issue #9 .

    https://github.com/SpiderLabs/ModSecurity-nginx/issues/9
    Analytics cookies. We use analytics cookies to understand how you use our websites so we can make them better, e.g. they’re used to gather information about the pages you visit and how many clicks you need to accomplish a task.

Creating of RPM in CentOS7 fails · Issue #191 · rizsotto .

    https://github.com/rizsotto/Bear/issues/191
    @reverendhomer thanks for the explanation. I did test it, and with the original /usr/share/man it works. While with the $ it fails. Have the impression that it cpack does not have these variables set. I’m thinking to revert to add the original /usr/share/man line. But not sure it will work if you set the install prefix to something else.

Troubleshooting Jekyll build errors for GitHub Pages sites .

    https://docs.github.com/en/[email protected]/github/working-with-github-pages/troubleshooting-jekyll-build-errors-for-github-pages-sites
    GitHub Pages is available in public repositories with GitHub Free and GitHub Free for organizations, and in public and private repositories with GitHub Pro, GitHub Team, GitHub Enterprise Cloud, and GitHub Enterprise Server.

rpmbuild打包遇到问题汇总_u014007037зљ„дё“ж Џ-CSDNеЌље®ў

    https://blog.csdn.net/u014007037/article/details/78727526
    ERROR 0002: file ‘xxx.so’ contains an invalid rpath ‘xxx’ in [xxx] 经过网上查询,得知 иї™дёЂж­ҐеЏЄж˜ЇдёЂз§ЌжЈЂжµ‹ж˜ЇдёЌж˜Їд»Јз Ѓдё­дЅїз”Ёдє†rpath,那我们可以简单的注释掉rpath检测就可以了,具体做法就是: vi

    scientific linux — RPM build errors — Unix & Linux Stack .

      https://unix.stackexchange.com/questions/155314/rpm-build-errors
      RPM is expecting your package to follow the standard packaging guidelines for Unix software. The GNU release guidelines are typical, but a lot of non-GNU software follows these rules, too.. Specifically here, you have a package called supportScripts, version 1, so the tarball is expected to be called supportScripts-1.tar.gz, and it is expected to unpack into a directory called supportScripts-1.

    Rpm Build Error Contains An Invalid Rpath Fixes & Solutions

    We are confident that the above descriptions of Rpm Build Error Contains An Invalid Rpath and how to fix it will be useful to you. If you have another solution to Rpm Build Error Contains An Invalid Rpath or some notes on the existing ways to solve it, then please drop us an email.

    Источник

    WARNING: ‘check-rpaths’ detected a broken RPATH and will cause ‘rpmbuild’ to fail #1058

    All the rpms build fine except for the last one.

    make[2]: Leaving directory /tmp/zfs-build-makerpm-smsftL7R/BUILD/zfs-0.6.0

    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

    • 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= /usr/lib/rpm/check-rpaths

ERROR 0002: file /sbin/mount.zfs contains an invalid rpath //lib64 in [//lib64]
ERROR 0002: file /sbin/ztest contains an invalid rpath //lib64 in [//lib64]
ERROR 0002: file /sbin/zstreamdump contains an invalid rpath //lib64 in [//lib64]
ERROR 0002: file /sbin/zinject contains an invalid rpath //lib64 in [//lib64]
ERROR 0002: file /sbin/zdb contains an invalid rpath //lib64 in [//lib64]
ERROR 0002: file /sbin/zpool contains an invalid rpath //lib64 in [//lib64]
ERROR 0002: file /sbin/zfs contains an invalid rpath //lib64 in [//lib64]
ERROR 0002: file /lib64/libzfs.so.1.0.1 contains an invalid rpath //lib64 in [//lib64]
ERROR 0002: file /lib64/libzpool.so.1.0.1 contains an invalid rpath //lib64 in [//lib64]
ERROR 0002: file /lib64/libnvpair.so.1.0.1 contains an invalid rpath //lib64 in [//lib64]
error: Bad exit status from /tmp/zfs-build-makerpm-smsftL7R/TMP/rpm-tmp.kADNUZ (%install)

RPM build errors:
Bad exit status from /tmp/zfs-build-makerpm-smsftL7R/TMP/rpm-tmp.kADNUZ (%install)
make[1]: [rpm-common] Error 1

The text was updated successfully, but these errors were encountered:

Источник

Error 0002 file contains an invalid rpath

Post by wildhuman » Sun Aug 27, 2006 8:24 pm

I have spent all my time and job on compiling and creating zimbra.
And now, I have isntalled all thirdparty software and perl compoments. I am beginning to make package for zimbra.
But I meet new errors now when I made packages

this is my step:

#make allclean all
the error information is:

/mnt/scsi/tmp/zimbra/ZimbraBuild/defs/sourcetargets.def:11: warning: overriding commands for target `ORIGINAL’

/mnt/scsi/tmp/zimbra/ZimbraBuild/defs/sourcetargets.def:8: warning: ignoring old commands for target `ORIGINAL’

/mnt/scsi/tmp/zimbra/ZimbraBuild/defs/sourcetargets.def:11: warning: overriding commands for target `VERSION’

/mnt/scsi/tmp/zimbra/ZimbraBuild/defs/sourcetargets.def:8: warning: ignoring old commands for target `VERSION’

/mnt/scsi/tmp/zimbra/ZimbraBuild/defs/sourcetargets.def:11: warning: overriding commands for target `trunk/ZimbraBuild/RE/BUILD’

/mnt/scsi/tmp/zimbra/ZimbraBuild/defs/sourcetargets.def:8: warning: ignoring old commands for target `trunk/ZimbraBuild/RE/BUILD’

/mnt/scsi/tmp/zimbra/ZimbraBuild/defs/sourcetargets.def:11: warning: overriding commands for target `11545412209502-src.tgz’

/mnt/scsi/tmp/zimbra/ZimbraBuild/defs/sourcetargets.def:8: warning: ignoring old commands for target `11545412209502-src.tgz’

(cd /mnt/scsi/tmp/zimbra/ZimbraBuild/../ZimbraServer; /zimbra/apache-ant-1.6.5/bin/ant

-Dzimbra.buildinfo.version=4.0.0_GA_246==== ORIGINAL VERSION trunk/ZimbraBuild/RE/BUILD 11545412209502.FC4

Buildfile: build.xml
BUILD FAILED

Target `ORIGINAL’ does not exist in this project.
Total time: 1 second

make: *** [/mnt/scsi/tmp/zimbra/ZimbraBuild/../ZimbraServer/build/dist/tomcat/webapps/service.war] Error 1
But when I executed «ant» at /ZimbraServer, it is success. I don’t know how should I do. and then I executed ant under any directory which has build.xml. I did not find any error information.
:confused: Who can help me? :confused:

new error about making package of zimbra

Post by wildhuman » Mon Aug 28, 2006 9:34 pm

Even if I executed the make dev-install, it is the almost same error:

what is the reason on earth? who can tell me? 😡
/mnt/scsi/tmp/zimbra/ZimbraBuild/defs/sourcetargets.def:11: warning: overriding commands for target `ORIGINAL’

/mnt/scsi/tmp/zimbra/ZimbraBuild/defs/sourcetargets.def:8: warning: ignoring old commands for target `ORIGINAL’

/mnt/scsi/tmp/zimbra/ZimbraBuild/defs/sourcetargets.def:11: warning: overriding commands for target `VERSION’

/mnt/scsi/tmp/zimbra/ZimbraBuild/defs/sourcetargets.def:8: warning: ignoring old commands for target `VERSION’

/mnt/scsi/tmp/zimbra/ZimbraBuild/defs/sourcetargets.def:11: warning: overriding commands for target `trunk/ZimbraBuild/RE/BUILD’

/mnt/scsi/tmp/zimbra/ZimbraBuild/defs/sourcetargets.def:8: warning: ignoring old commands for target `trunk/ZimbraBuild/RE/BUILD’

/mnt/scsi/tmp/zimbra/ZimbraBuild/defs/sourcetargets.def:11: warning: overriding commands for target `11545412209502-src.tgz’

/mnt/scsi/tmp/zimbra/ZimbraBuild/defs/sourcetargets.def:8: warning: ignoring old commands for target `11545412209502-src.tgz’

(cd /opt/zimbra; tar xzf /mnt/scsi/tmp/zimbra/ZimbraBuild/../ThirdParty/mysql/FC4/mysql-standard-4.1.20-pc-linux-gnu-i686-glibc23.tar.gz;)

(cd /opt/zimbra; tar xzf /mnt/scsi/tmp/zimbra/ZimbraBuild/../ThirdParty/openldap/builds/FC4/openldap-2.3.21.tgz;)

cp -f /mnt/scsi/tmp/zimbra/ZimbraBuild/../ZimbraServer/conf/ldap/DB_CONFIG /opt/zimbra/openldap-2.3.21/var/openldap-data

cp -f /mnt/scsi/tmp/zimbra/ZimbraBuild/../ZimbraServer/conf/ldap/slapd.conf.production /opt/zimbra/openldap-2.3.21/etc/openldap/slapd.conf

cp -f /mnt/scsi/tmp/zimbra/ZimbraBuild/../ZimbraServer/conf/ldap/amavisd.schema /opt/zimbra/openldap-2.3.21/etc/openldap/schema

cp -f /mnt/scsi/tmp/zimbra/ZimbraBuild/../ZimbraServer/conf/ldap/zimbra.schema /opt/zimbra/openldap-2.3.21/etc/openldap/schema

cp -f /mnt/scsi/tmp/zimbra/ZimbraBuild/../ZimbraServer/conf/ldap/zimbra.ldif /opt/zimbra/openldap-2.3.21/etc/openldap/zimbra.ldif

cp -f /mnt/scsi/tmp/zimbra/ZimbraBuild/../ZimbraServer/conf/ldap/widgets.ldif /opt/zimbra/openldap-2.3.21/etc/openldap/widgets.ldif

(cd /mnt/scsi/tmp/zimbra/ZimbraBuild/../ZimbraServer; /zimbra/apache-ant-1.6.5/bin/ant

-Dzimbra.buildinfo.version=4.0.0_GA_246==== ORIGINAL VERSION trunk/ZimbraBuild/RE/BUILD 11545412209502.FC4

Buildfile: build.xml
BUILD FAILED

Target `ORIGINAL’ does not exist in this project.
Total time: 1 second

Источник

Fix three issues when building RPM packages #1158

There are three issues with the current RPM packages generated by make -C tmp package :

  1. The build fails at this step due to an invalid rpath setting:
  1. Installation of the generated RPM fails on Fedora because /lib is a symlink to /usr/lib, but it’s in the RPM as a directory:
  1. CMake defaults to installing in /usr/local. This should be /usr. See https://www.tldp.org/HOWTO/HighQuality-Apps-HOWTO/fhs.html and the underlying FHS for further discussion.

A PR for all three of these is coming momentarily.

The text was updated successfully, but these errors were encountered:

Upon further research: #⁠1 is a known issue in CPack (see here among many other reports). I’m using a much newer version of CMake, but it appears their «solution» was just to allow you to specify more directories in CPACK_RPM_EXCLUDE_FROM_AUTO_FILELIST. I’ll make this more comprehensive.

And for #⁠3, /usr/local is correct when doing make install. It’s only the RPM that should use /usr.

I’ll update and resubmit.

I played a bit with CPack. I found it pretty flexible on one hand. However, we cannot easily use it together with Fedora COPR

Have you tried using CPACK_RPM_PACKAGE_SOURCES to generate a src.rpm? In theory, you should then be able to upload that to COPR. This is a little outside of the scope but I can take a look at that as well.

well, I think at least major RPM distributions (which are served by COPR) would be good to have on yum/dnf level.

it is not that useful to be able to build RPM by people themselves, just because if they build, they can build from source code.

This is how I always do it, incidentally, when installing either the server or client on a new machine. Clone from github, follow the build instructions, but as the last step, do make -C tmp package instead of make -C tmp install . Then install the generated package using yum/dnf or apt.

This has SO many advantages. The idea of using make install to put stuff in /usr/local really should have gone out with the ’90s.

I understand advantages of using packages 🙂

© 2023 GitHub, Inc.

You can’t perform that action at this time.

You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session.

Источник

I’ve been building RPMs using CMake & CPack 3.13.4 on OEL7 for several months without issue. My CMake configuration contained these lines:

SET(CMAKE_SKIP_BUILD_RPATH  FALSE)
SET(CMAKE_BUILD_WITH_INSTALL_RPATH FALSE)
SET(CMAKE_INSTALL_RPATH "${CMAKE_INSTALL_PREFIX}/lib")
SET(CMAKE_INSTALL_RPATH_USE_LINK_PATH FALSE)

This has allowed me to ensure that the locally built versions of the library are used before any installed versions. Without making any changes to these lines I am suddenly unable to build RPMs any more. I now get this error message:

+ /usr/lib/rpm/check-rpaths
*******************************************************************************
*
* 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   0002: file '/opt/project/lib/libConfigLoader.so.4.0.0' contains an invalid rpath '/opt/project/lib' in [/opt/project/lib]
ERROR   0002: file '/opt/project/lib/libConfigLoaderDb.so.4.0.0' contains an invalid rpath '/opt/project/lib' in [/opt/project/lib]

This seems wrong because it’s stating that /opt/project/lib is not an absolute path, which it is.

The permissions of /opt/project/lib are:

[user@c7 ]$ ll -d /opt/
drwxrwxr-x. 10 root root 139 Oct 11 14:31 /opt/
[user@c7 ]$ ll -d /opt/project/
drwxrwx--- 11 root project 114 Oct 11 14:32 /opt/project/
[user@c7 ]$ ll -d /opt/project/lib
drwxrwx--- 2 root project 4096 Oct 11 14:53 /opt/project/lib

I am able to suppress the error by prepending QA_RPATHS=0x0002 to my make command, but I’m concerned that doing this might obscure other errors in future.

I looked into the check-rpaths script (and the check-rpaths-worker script that it uses), and the issue seems to come from this part, where j has been set to the rpath, in this case /opt/project/lib:

            case "$j" in
                (/lib/*|/usr/lib/*|/usr/X11R6/lib/*|/usr/local/lib/*)
                    badness=0;;
                (/lib64/*|/usr/lib64/*|/usr/X11R6/lib64/*|/usr/local/lib64/*)
                    badness=0;;

                ($ORIGIN|${ORIGINX}|$ORIGIN/*|${ORIGINX}/*)
                    test $allow_ORIGIN -eq 0 && badness=8 || {
                        badness=0
                        new_allow_ORIGIN=1
                    }
                    ;;
                (/*$PLATFORM*|/*${PLATFORM}*|/*$LIB*|/*${LIB}*)
                    badness=0;;

                (/lib|/usr/lib|/usr/X11R6/lib)
                    badness=1;;
                (/lib64|/usr/lib64|/usr/X11R6/lib64)
                    badness=1;;

                (.*)
                    badness=4;;
                (*) badness=2;;
            esac

(Source)

I don’t understand how this ever let /opt/project/lib pass, as from that ‘case’ statement it would always drop to the (*) case and set badness=2

What else can I try?

which information that I executed «ant» under ZimbraServer:
[mkdir] Created dir: /mnt/scsi/tmp/zimbra/ZimbraServer/build/classes

[mkdir] Created dir: /mnt/scsi/tmp/zimbra/ZimbraServer/build/generated/src/java

[mkdir] Created dir: /mnt/scsi/tmp/zimbra/ZimbraServer/build/wiki

[mkdir] Created dir: /mnt/scsi/tmp/zimbra/ZimbraServer/build/zimlets

[mkdir] Created dir: /mnt/scsi/tmp/zimbra/ZimbraServer/build/data

Trying to override old definition of task deploy
make-dirs:

[echo] Creating dirs under /mnt/scsi/tmp/zimbra/ZimbraServer/build/dist

[mkdir] Created dir: /mnt/scsi/tmp/zimbra/ZimbraServer/build/dist/conf

[mkdir] Created dir: /mnt/scsi/tmp/zimbra/ZimbraServer/build/dist/openldap/etc/openldap/schema

[mkdir] Created dir: /mnt/scsi/tmp/zimbra/ZimbraServer/build/dist/bin

[mkdir] Created dir: /mnt/scsi/tmp/zimbra/ZimbraServer/build/dist/conf/msgs

[mkdir] Created dir: /mnt/scsi/tmp/zimbra/ZimbraServer/build/dist/db

[mkdir] Created dir: /mnt/scsi/tmp/zimbra/ZimbraServer/build/dist/lib/ext

[mkdir] Created dir: /mnt/scsi/tmp/zimbra/ZimbraServer/build/dist/lib/jars

[mkdir] Created dir: /mnt/scsi/tmp/zimbra/ZimbraServer/build/dist/libexec

[mkdir] Created dir: /mnt/scsi/tmp/zimbra/ZimbraServer/build/dist/tomcat/common/endorsed

[mkdir] Created dir: /mnt/scsi/tmp/zimbra/ZimbraServer/build/dist/tomcat/common/lib

[mkdir] Created dir: /mnt/scsi/tmp/zimbra/ZimbraServer/build/dist/tomcat/conf

[mkdir] Created dir: /mnt/scsi/tmp/zimbra/ZimbraServer/build/dist/tomcat/webapps

[mkdir] Created dir: /mnt/scsi/tmp/zimbra/ZimbraServer/build/dist/wiki

[mkdir] Created dir: /mnt/scsi/tmp/zimbra/ZimbraServer/build/dist/zimlets
compile:

[javac] Compiling 1203 source files to /mnt/scsi/tmp/zimbra/ZimbraServer/build/classes

[javac] Note: Some input files use or override a deprecated API.

[javac] Note: Recompile with -Xlint:deprecation for details.

[javac] Note: Some input files use unchecked or unsafe operations.

[javac] Note: Recompile with -Xlint:unchecked for details.

Trying to override old definition of task deploy
set-buildinfo-vars:

[echo] Version: 4.0
generate-buildinfo:

[mkdir] Created dir: /mnt/scsi/tmp/zimbra/ZimbraServer/build/buildinfo

[javac] Compiling 1 source file to /mnt/scsi/tmp/zimbra/ZimbraServer/build/classes
jar:

[echo] Hostname: mail.localhost.localdomain

[jar] Building jar: /mnt/scsi/tmp/zimbra/ZimbraServer/build/zimbrastore.jar

Trying to override old definition of task deploy
set-buildinfo-vars:

[echo] Version: 4.0
generate-ldap-config:

[mkdir] Created dir: /mnt/scsi/tmp/zimbra/ZimbraServer/build/attrs

[copy] Copying 2 files to /mnt/scsi/tmp/zimbra/ZimbraServer/build/attrs

[mkdir] Created dir: /mnt/scsi/tmp/zimbra/ZimbraServer/build/ldap-config

[copy] Copying 1 file to /mnt/scsi/tmp/zimbra/ZimbraServer/build/ldap-config

[copy] Copying 1 file to /mnt/scsi/tmp/zimbra/ZimbraServer/build/ldap-config

[copy] Copying 1 file to /mnt/scsi/tmp/zimbra/ZimbraServer/build/ldap-config
BUILD SUCCESSFUL

Total time: 59 seconds

Skip to content



Open


Issue created Jan 04, 2022 by John Thacker@johnthackerDeveloper

Fedora RPM package build failing with RPATH of /usr/local/lib64

Summary

Fedora Linux recently introduced RPATH hardening on RPM generation, and it fails when the RPATH is set to a default of /usr/local/lib64

https://fedoraproject.org/wiki/Changes/Broken_RPATH_will_fail_rpmbuild

https://docs.fedoraproject.org/en-US/packaging-guidelines/#_beware_of_rpath

While /usr/local/lib64 is not considered acceptable, either a directory under there, like /usr/local/lib64/wireshark or a path that includes $ORIGIN is considered acceptable. So enabling -DENABLE_RPATH_ORIGIN=ON in the spec file for Fedora is acceptable, as would be moving the libraries to a subdirectory instead. It is also possible to disable the RPATH checks via several mechanisms described in the links

Steps to reproduce

ninja rpm-package

Also look at the recent CI builds

What is the current bug behavior?

Fails complaining of an invalid RPATH

What is the expected correct behavior?

Package should build

Relevant logs and/or screenshots

*******************************************************************************
*
* WARNING: 'check-rpaths' detected a broken RPATH OR RUNPATH 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   0002: file '/usr/local/lib64/wireshark/extcap/androiddump' contains an invalid  '/usr/local/lib64' in [/usr/local/lib64]
ERROR   0002: file '/usr/local/lib64/wireshark/extcap/sdjournal' contains an invalid  '/usr/local/lib64' in [/usr/local/lib64]
ERROR   0002: file '/usr/local/lib64/wireshark/extcap/randpktdump' contains an invalid  '/usr/local/lib64' in [/usr/local/lib64]
ERROR   0002: file '/usr/local/lib64/wireshark/extcap/udpdump' contains an invalid  '/usr/local/lib64' in [/usr/local/lib64]
ERROR   0002: file '/usr/local/lib64/wireshark/extcap/ciscodump' contains an invalid  '/usr/local/lib64' in [/usr/local/lib64]
ERROR   0002: file '/usr/local/lib64/wireshark/extcap/dpauxmon' contains an invalid  '/usr/local/lib64' in [/usr/local/lib64]
ERROR   0002: file '/usr/local/lib64/wireshark/extcap/sshdump' contains an invalid  '/usr/local/lib64' in [/usr/local/lib64]

build
osfedora

Edited Jan 04, 2022 by John Thacker


Description


Jonathan Wakely



2021-11-03 11:16:36 UTC

Description of problem:

The check-rpaths script prints output like:

> ERROR   0020: file '/opt/gcc-latest/lib64/libtsan.so.2.0.0' contains an  referencing '..' of an absolute path [/opt/gcc-latest/lib/../lib64]


Note the "contains an  referencing" part.


Version-Release number of selected component (if applicable):

rpm-build-4.17.0-1.fc35.x86_64
rpm-build-4.17.0-1.fc36.1.x86_64


How reproducible:

Always

Steps to Reproduce:
1. gcc -shared -o libx.so -Wl,-rpath,/home/lib64,-rpath,/home/../lib64 -x c /dev/null
2. /usr/lib/rpm/check-rpaths-worker libx.so


Actual results:

ERROR   0002: file 'libx.so' contains an invalid  '/home/lib64' in [/home/lib64]
ERROR   0020: file 'libx.so' contains an  referencing '..' of an absolute path [/home/lib64:/home/../lib64]



Expected results:

"contains an invalid rpath" or "contains an invalid runpath"

Note however that the second ERROR will say "contains an runpath referencing" which is not correct English grammar. So even fixing the incorrect definition of the $lower variable won't fix it completely.


Additional info:

This was caused by this upstream commit:
https://github.com/rpm-software-management/rpm/commit/5417bffe37a9dfbfd33734f3f46d82adb927463b


Comment 2


Panu Matilainen



2022-06-22 11:41:34 UTC

Fixed in rawhide as of 4.18 alpha, also scheduled for fix in 4.17.x branch.

Update: Spotify for Linux v0.9.4 is now available. See here.

Hi everybody!

Today we pushed the latest and greatest Spotify client to our repository. This time you’re getting the good stuff first, this version has only been rolled out to a small percentage of Windows/Mac users. It contains some of the features that were presented on our recent press event, such as being able to follow artists and tastemakers. Have a look at the brand new Follow page, where you can find interesting artists and other people to follow. You’ll get updates on their activity, such as newly released albums etc.

As for Linux-specific fixes, there are some minor bug fixes. The biggest change is the packaging. The client now is installed to /opt and it uses XDG mechanisms to register icons and menus. The executable is now also built without hardcoded paths to libraries. This means that the folder can be put anywhere and just run from there. Unfortunately, this release still depends on libssl0.9.8. We’ll try to get rid of that in upcoming releases!

The new client is just a «sudo apt-get update && sudo apt-get upgrade» away!

What, you don’t already have Spotify installed? Lookie here: http://www.spotify.com/download/previews/

Don’t use Debian? Check out these zip packages:

http://download.spotify.com/preview/spotify-client-linux-0.8.8.323.gd143501e-i686.zip

http://download.spotify.com/preview/spotify-client-linux-0.8.8.323.gd143501e-amd64.zip

Edit: updated to include the zip packages.

Понравилась статья? Поделить с друзьями:

Читайте также:

  • Error 000007d5 brom cmd startcmd fail
  • Error 000001 system does not meet minimum requirements watch dogs legion
  • Error 000001 system does not meet minimum requirements far cry 5 решение
  • Error 000001 far cry 5 как исправить ошибку
  • Error 0000007e occured while loading resources 1c program aborted

  • 0 0 голоса
    Рейтинг статьи
    Подписаться
    Уведомить о
    guest

    0 комментариев
    Старые
    Новые Популярные
    Межтекстовые Отзывы
    Посмотреть все комментарии