Uploaded image for project: 'Qt'
  1. Qt
  2. QTBUG-76272

ICU libs shipped with Qt have wrong RPATH on Linux

    XMLWordPrintable

Details

    • Bug
    • Resolution: Unresolved
    • P4: Low
    • None
    • 5.11.1, 5.12.0, 5.12.1, 5.12.2, 5.12.3, 6.3.0
    • Build tools: Other
    • None
    • Linux/X11

    Description

      I've installed Qt 5.11 and 5.12 via the standard maintenance tool of Qt.

      The ICU libs shipped with Qt have a wrong, hard-coded, absolute RPATH set up. This should be changed in RUNPATH [$ORIGIN].

      The following libs have this issue:

      gcc_64/lib/libicudata.so.56.1
      gcc_64/lib/libicui18n.so.56.1
      gcc_64/lib/libicuio.so.56.1
      gcc_64/lib/libicule.so.56.1
      gcc_64/lib/libiculx.so.56.1
      gcc_64/lib/libicutest.so.56.1
      gcc_64/lib/libicutu.so.56.1
      gcc_64/lib/libicuuc.so.56.1

      To see the problem, run for instance

      ```
      $ readelf -d gcc_64/lib/libicuuc.so.56.1 | grep path
      0x000000000000000f (RPATH) Library rpath: [/home/qt/icu_install/lib]
      ```

      as can be seen, the path is hard-coded to be `/home/qt/icu_install/lib`.

      I've fixed this manually by setting

      ```
      $ chrpath -c gcc_64/lib/libicuuc.so.56.1
      $ chrpath -r "\$ORIGIN" gcc_64/lib/libicuuc.so.56.1
      ```

      which changes RPATH -> RUNPATH and the value to $ORIGIN.

      For some 3rd party deployment tools, it is really useful that these incorrect RPATHs are removed.

      Attachments

        Issue Links

          No reviews matched the request. Check your Options in the drop-down menu of this sections header.

          Activity

            People

              qtbuildsystem Qt Build System Team
              stabbles Harmen Stoppels
              Votes:
              2 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

                Created:
                Updated:

                Gerrit Reviews

                  There are no open Gerrit changes