|
From: Mojca M. <moj...@gm...> - 2012-08-22 11:21:19
|
On Wed, Aug 22, 2012 at 12:03 PM, Petr Mikulik wrote:
>> What is the status of the Qt terminal? It easily builds and works on
>> linux systems.
>
> Not here, I still see the error I reported in January:
>
> ***************************************
>
> During make, I see:
>
> /usr/src/packages/BUILD/qt-everywhere-opensource-src-4.7.1/bin/rcc: Command
> not found
> make[3]: *** [qrc_QtGnuplotResource.cpp] Error 127
>
> and similarly for lrelease.
>
> Directory
> /usr/src/packages/BUILD/qt-everywhere-opensource-src-4.7.1
> does not exist; rcc and lrelease are directly in /usr/bin/.
>
> Is this a bug in pkg-config? Here is what I get with pkg-config:
>
> $ pkg-config --variable=rcc_location QtCore
> /usr/src/packages/BUILD/qt-everywhere-opensource-src-4.7.1/bin/rcc
I get (properly)
/opt/local/bin/rcc
on Mac. The file
/opt/local/lib/pkgconfig/QtCore.pc
defines
prefix=/opt/local
rcc_location=${prefix}/bin/rcc
This means that there's a bug in your linux distribution, specifically
in the qt package. My guess is that QtCore.pc uses wrong settings. Can
you please send the contents of that file?
> $ pkg-config --variable=uic_location QtCore
> /usr/bin/uic
>
>
> Among others, the following libraries are installed:
> libqt4-devel-4.7.1-154.1
I guess this is the one being used. Try to locate QtCore.pc and send
the contents.
> qt3-devel-3.3.8b-87.11
> qt3-3.3.8b-87.11
>
> It's on OpenSUSE 11.1 with KDE3.
>
> ***************************************
>
> I think the problem is in configure.in which contains this check:
>
> RCC=`$PKG_CONFIG --variable=rcc_location QtCore`
> if test x"$RCC" = x ; then
> if test x"$QT4LOC" != x ; then
> RCC=$QT4LOC/bin/rcc
> else
> RCC=rcc
> fi
> fi
>
> I think it should be replaced by
> if "$QT4LOC/bin/rcc exists"
> then RCC=$QT4LOC/bin/rcc
> else RCC=rcc
If your Qt configuration (QtCore.pc) is problematic, you could easily
end up with
QT4LOC=`$PKG_CONFIG --variable=exec_prefix QtCore`
conveniently setting
QT4LOC=/usr/src/packages/BUILD/qt-everywhere-opensource-src-4.7.1
for you (note that if you set QT4LOC yourself, it would be overwritten
in current implementation) and you would just as well end up with the
same wrong path to rcc. The patch that you proposed might solve the
problem for "broken installation in a certain way", but not for a
"broken installation in a different way".
There is definitely room for improvement for finding moc/rcc/lrelease.
If nothing else it seems as if there is no way to specify something
like
RCC=/usr/bin/rcc-4.8 ./configure --enable-qt
like it's possible to do for EMACS or PDFLATEX etc.
My suggestion would be to debug the problem with Qt4 on your
distribution first. Then patches can still be applied to Gnuplot's
./configure.in then.
But I definitely don't agree with this code:
> if "$QT4LOC/bin/rcc exists"
> then RCC=$QT4LOC/bin/rcc
> else RCC=rcc
Imagine a properly configured QtCore.pc listing:
prefix=/usr
exec_prefix=${prefix}
rcc_location=${prefix}/bin/rcc-4.8
In this case your proposal wouldn't work properly, while current
implementation would be ok.
Mojca
|