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