Definindo a ordem RPATH no QMake

Eu tenho um programa Linux Qt. Eu gostaria que usasse preferencialmente as bibliotecas Qt (dinâmicas) no diretório do executável, se elas existirem, caso contrário, use as bibliotecas Qt do sistema. RPATH para o resgate.

Eu adiciono esta linha aoqmakeArquivo .pro de:

QMAKE_LFLAGS    += '-Wl,-rpath,\'\$ORIGIN\''

e olhando para o executável resultante comreadelf Entendo:

0x000000000000000f (RPATH)              Library rpath: [$ORIGIN:/usr/local/Trolltech/Qt-5.2.0/lib]
0x000000000000001d (RUNPATH)            Library runpath: [$ORIGIN:/usr/local/Trolltech/Qt-5.2.0/lib]

Parece certo, masldd mostra que está usando a versão do sistema:

libQt5Core.so.5 => /usr/local/Trolltech/Qt-5.2.0/lib/libQt5Core.so.5 (0x00007f2d2fe09000)

Se eu editar manualmente o Makefile resultante do qmake para trocar a ordem dos dois rpaths, então $ ORIGIN virá depois de / usr / local / ..., obtenho o comportamento correto:

0x000000000000000f (RPATH)              Library rpath: [/usr/local/Trolltech/Qt-5.2.0/lib:$ORIGIN]
0x000000000000001d (RUNPATH)            Library runpath: [/usr/local/Trolltech/Qt-5.2.0/lib:$ORIGIN]

libQt5Core.so.5 => ./libQt5Core.so.5 (0x00007fb92aba9000)

Meu problema é comoqmake constrói a variável final LFLAGS. Não consigo descobrir como colocar minha adição ($ ORIGIN) após t, a biblioteca do sistema. Alguma ideia?

questionAnswers(4)

yourAnswerToTheQuestion