24.10.2022 16:58, Christian Kandeler via Qbs пишет:
On 10/24/22 15:38, Карелин Павел wrote:


24.10.2022 13:48, Christian Kandeler via Qbs пишет:
On 10/24/22 12:34, Карелин Павел wrote:
I think runpath is wrong for libqbscore.so.1.23.2: instead of '$ORIGIN/../lib/qtcreator' it should be '$ORIGIN/../../lib/qtcreator'

Why? bin/ and lib/ are located on the same level.
Because loading the libqbsscriptengine.so.1.23 library comes from libqbscore.so.1.23.2, not bin/qbs. I conducted an experiment: in the libqbscore.so.1.23.2 I replaced runpath from '$ORIGIN/..:$ORIGIN/../lib/qtcreator:/opt/qt515/lib' to '$ORIGIN/../../lib/qtcreator:/opt/qt515/lib:/usr/bi'
And everything worked for me.

The problem seems to be differences in linker behavior. My binaries have RPATH set, yours use RUNPATH. The former works recursively, the latter doesn't. What linker are you using? I have binutils 2.39.
Systerm compiler from Ubuntu 20.04. GCC version 9.4.0

In my qbs projects, I explicitly use RPATH instead of RUNPATH using the following command:
    cpp.driverLinkerFlags: [
        "-Wl,--disable-new-dtags",
    ]

This could be used in QBS assembly. The only thing, is that I probably will not quickly navigate which qbs-script is better to place this instruction. I will try.

--
Pavel




Christian

_______________________________________________
Qbs mailing list
Qbs@qt-project.org
https://lists.qt-project.org/listinfo/qbs

_______________________________________________
Qbs mailing list
Qbs@qt-project.org
https://lists.qt-project.org/listinfo/qbs

Reply via email to