[odb-users] compile error with libodb-qt module

Boris Kolpackov boris at codesynthesis.com
Tue Jun 9 11:26:47 EDT 2015


Hi Christian,

Christian Sell <christian at gsvitec.com> writes:

> #if !defined(QT_BOOTSTRAPPED) && defined(QT_REDUCE_RELOCATIONS) &&
> defined(__ELF__) && \
> (!defined(__PIC__) || (defined(__PIE__) && defined(Q_CC_GNU) && Q_CC_GNU >=
> 500))
>
> However, the error message clearly states tat __PIE__ is not enough, and that is
> what you set in your header. I first assumed this was the problem, but found
> that adding -x -fPIE to my odb command line fixed the problem.. mysterious.

>From that #if I recon PIE is not enough only for GCC 5 and later. So
as long as ODB is not using GCC 5 in your case, adding -x -fPIE
should be enough. What is strange is that the #define in libodb-qt
doesn't work. Can you confirm that you have '-p qt' option on the
ODB command line?

If the answer is yes, can you put #error just before #define __PIE__
in config.hxx and see if it trips?

Thanks,
Boris



More information about the odb-users mailing list