ggobi / qtbase

Dynamic bindings from R to the Qt library
20 stars 7 forks source link

cannot install qtbase (separate issue) #3

Closed ttriche closed 13 years ago

ttriche commented 13 years ago

per lawremi, no more unnecessary symlinks:

tim@tims-x200s:/usr/include$ for i in `ls -d qt4/*`; do
  j="."`echo $i | sed -e s/qt4\\//; `; sudo rm $j; 
done

OK, let's try again:

tim@tims-x200s:/etc/apt$ cmake --version
cmake version 2.8.3

And...

tim@tims-x200s:~/qtbase$ R CMD INSTALL .
WARNING: ignoring environment value of R_HOME
* installing to library ‘/home/tim/R/library’
* installing *source* package ‘qtbase’ ...
** libs
** arch -
mkdir -p ../kdebindings-build;
cd ../kdebindings-build; \
  cmake ../kdebindings -DCMAKE_INSTALL_PREFIX=../inst/local; \
  LD_LIBRARY_PATH=../../generator/bin make install
-- The C compiler identification is GNU
-- The CXX compiler identification is GNU
-- Check for working C compiler: /usr/bin/gcc
-- Check for working C compiler: /usr/bin/gcc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Looking for Q_WS_X11
-- Looking for Q_WS_X11 - not found.
-- Looking for Q_WS_WIN
-- Looking for Q_WS_WIN - not found.
-- Looking for Q_WS_QWS
-- Looking for Q_WS_QWS - not found.
-- Looking for Q_WS_MAC
-- Looking for Q_WS_MAC - not found.
CMake Error at /usr/share/cmake-2.8/Modules/FindQt4.cmake:1102 (MESSAGE):
  Qt libraries, includes, moc, uic or/and rcc NOT found!
Call Stack (most recent call first):
  CMakeLists.txt:5 (FIND_PACKAGE)

-- Configuring incomplete, errors occurred!
make[1]: Entering directory `/home/tim/qtbase/kdebindings-build'
make[1]: *** No rule to make target `install'.  Stop.
make[1]: Leaving directory `/home/tim/qtbase/kdebindings-build'
make: *** [all] Error 2
ERROR: compilation failed for package ‘qtbase’
* removing ‘/home/tim/R/library/qtbase’

and

Determining if the Q_WS_X11 exist failed with the following output:
Change Dir: /home/tim/qtbase/kdebindings-build/CMakeFiles/CMakeTmp

Run Build Command:/usr/bin/make "cmTryCompileExec/fast"
make[1]: Entering directory `/home/tim/qtbase/kdebindings-build/CMakeFiles/CMakeTmp'
make -f CMakeFiles/cmTryCompileExec.dir/build.make CMakeFiles/cmTryCompileExec.dir/build
make[2]: Entering directory `/home/tim/qtbase/kdebindings-build/CMakeFiles/CMakeTmp'
/usr/bin/cmake -E cmake_progress_report /home/tim/qtbase/kdebindings-build/CMakeFiles/CMakeTmp/CMakeFiles 1
Building C object CMakeFiles/cmTryCompileExec.dir/CheckSymbolExists.c.o
/usr/bin/gcc    -o CMakeFiles/cmTryCompileExec.dir/CheckSymbolExists.c.o   -c /home/tim/qtbase/kdebindings-build/CMakeFiles/CMakeTmp/CheckSymbolExists.c
/home/tim/qtbase/kdebindings-build/CMakeFiles/CMakeTmp/CheckSymbolExists.c:2:28: fatal error: QtCore/qglobal.h: No such file or directory
compilation terminated.
make[2]: *** [CMakeFiles/cmTryCompileExec.dir/CheckSymbolExists.c.o] Error 1
make[2]: Leaving directory `/home/tim/qtbase/kdebindings-build/CMakeFiles/CMakeTmp'
make[1]: *** [cmTryCompileExec/fast] Error 2
make[1]: Leaving directory `/home/tim/qtbase/kdebindings-build/CMakeFiles/CMakeTmp'

File /home/tim/qtbase/kdebindings-build/CMakeFiles/CMakeTmp/CheckSymbolExists.c:
/* */
#include <QtCore/qglobal.h>

void cmakeRequireSymbol(int dummy,...){(void)dummy;}
int main()
{
#ifndef Q_WS_X11
  cmakeRequireSymbol(0,&Q_WS_X11);
#endif
  return 0;
}

Determining if the Q_WS_WIN exist failed with the following output:
Change Dir: /home/tim/qtbase/kdebindings-build/CMakeFiles/CMakeTmp

Run Build Command:/usr/bin/make "cmTryCompileExec/fast"
make[1]: Entering directory `/home/tim/qtbase/kdebindings-build/CMakeFiles/CMakeTmp'
make -f CMakeFiles/cmTryCompileExec.dir/build.make CMakeFiles/cmTryCompileExec.dir/build
make[2]: Entering directory `/home/tim/qtbase/kdebindings-build/CMakeFiles/CMakeTmp'
/usr/bin/cmake -E cmake_progress_report /home/tim/qtbase/kdebindings-build/CMakeFiles/CMakeTmp/CMakeFiles 1
Building C object CMakeFiles/cmTryCompileExec.dir/CheckSymbolExists.c.o

/usr/bin/gcc    -o CMakeFiles/cmTryCompileExec.dir/CheckSymbolExists.c.o   -c /home/tim/qtbase/kdebindings-build/CMakeFiles/CMakeTmp/CheckSymbolExists.c
/home/tim/qtbase/kdebindings-build/CMakeFiles/CMakeTmp/CheckSymbolExists.c:2:28: fatal error: QtCore/qglobal.h: No such file or directory
compilation terminated.
make[2]: *** [CMakeFiles/cmTryCompileExec.dir/CheckSymbolExists.c.o] Error 1
make[2]: Leaving directory `/home/tim/qtbase/kdebindings-build/CMakeFiles/CMakeTmp'
make[1]: *** [cmTryCompileExec/fast] Error 2
make[1]: Leaving directory `/home/tim/qtbase/kdebindings-build/CMakeFiles/CMakeTmp'

File /home/tim/qtbase/kdebindings-build/CMakeFiles/CMakeTmp/CheckSymbolExists.c:
/* */
#include <QtCore/qglobal.h>

void cmakeRequireSymbol(int dummy,...){(void)dummy;}
int main()
{
#ifndef Q_WS_WIN
  cmakeRequireSymbol(0,&Q_WS_WIN);
#endif
  return 0;
}

Determining if the Q_WS_QWS exist failed with the following output:
Change Dir: /home/tim/qtbase/kdebindings-build/CMakeFiles/CMakeTmp

Run Build Command:/usr/bin/make "cmTryCompileExec/fast"
make[1]: Entering directory `/home/tim/qtbase/kdebindings-build/CMakeFiles/CMakeTmp'
make -f CMakeFiles/cmTryCompileExec.dir/build.make CMakeFiles/cmTryCompileExec.dir/build
make[2]: Entering directory `/home/tim/qtbase/kdebindings-build/CMakeFiles/CMakeTmp'
/usr/bin/cmake -E cmake_progress_report /home/tim/qtbase/kdebindings-build/CMakeFiles/CMakeTmp/CMakeFiles 1
Building C object CMakeFiles/cmTryCompileExec.dir/CheckSymbolExists.c.o
/usr/bin/gcc    -o CMakeFiles/cmTryCompileExec.dir/CheckSymbolExists.c.o   -c /home/tim/qtbase/kdebindings-build/CMakeFiles/CMakeTmp/CheckSymbolExists.c
/home/tim/qtbase/kdebindings-build/CMakeFiles/CMakeTmp/CheckSymbolExists.c:2:28: fatal error: QtCore/qglobal.h: No such file or directory
compilation terminated.
make[2]: *** [CMakeFiles/cmTryCompileExec.dir/CheckSymbolExists.c.o] Error 1
make[2]: Leaving directory `/home/tim/qtbase/kdebindings-build/CMakeFiles/CMakeTmp'
make[1]: *** [cmTryCompileExec/fast] Error 2
make[1]: Leaving directory `/home/tim/qtbase/kdebindings-build/CMakeFiles/CMakeTmp'

make[1]: Leaving directory `/home/tim/qtbase/kdebindings-build/CMakeFiles/CMakeTmp'

File /home/tim/qtbase/kdebindings-build/CMakeFiles/CMakeTmp/CheckSymbolExists.c:
/* */
#include <QtCore/qglobal.h>

void cmakeRequireSymbol(int dummy,...){(void)dummy;}
int main()
{
#ifndef Q_WS_QWS
  cmakeRequireSymbol(0,&Q_WS_QWS);
#endif
  return 0;
}

Determining if the Q_WS_MAC exist failed with the following output:
Change Dir: /home/tim/qtbase/kdebindings-build/CMakeFiles/CMakeTmp

Run Build Command:/usr/bin/make "cmTryCompileExec/fast"
make[1]: Entering directory `/home/tim/qtbase/kdebindings-build/CMakeFiles/CMakeTmp'
make -f CMakeFiles/cmTryCompileExec.dir/build.make CMakeFiles/cmTryCompileExec.dir/build
make[2]: Entering directory `/home/tim/qtbase/kdebindings-build/CMakeFiles/CMakeTmp'
/usr/bin/cmake -E cmake_progress_report /home/tim/qtbase/kdebindings-build/CMakeFiles/CMakeTmp/CMakeFiles 1
Building C object CMakeFiles/cmTryCompileExec.dir/CheckSymbolExists.c.o
/usr/bin/gcc    -o CMakeFiles/cmTryCompileExec.dir/CheckSymbolExists.c.o   -c /home/tim/qtbase/kdebindings-build/CMakeFiles/CMakeTmp/CheckSymbolExists.c
/home/tim/qtbase/kdebindings-build/CMakeFiles/CMakeTmp/CheckSymbolExists.c:2:28: fatal error: QtCore/qglobal.h: No such file or directory
compilation terminated.
make[2]: *** [CMakeFiles/cmTryCompileExec.dir/CheckSymbolExists.c.o] Error 1
make[2]: Leaving directory `/home/tim/qtbase/kdebindings-build/CMakeFiles/CMakeTmp'
make[1]: *** [cmTryCompileExec/fast] Error 2
make[1]: Leaving directory `/home/tim/qtbase/kdebindings-build/CMakeFiles/CMakeTmp'

File /home/tim/qtbase/kdebindings-build/CMakeFiles/CMakeTmp/CheckSymbolExists.c:
/* */
#include <QtCore/qglobal.h>

void cmakeRequireSymbol(int dummy,...){(void)dummy;}
int main()
{
#ifndef Q_WS_MAC

  cmakeRequireSymbol(0,&Q_WS_MAC);
#endif
  return 0;
}

OK, I hope this may help! If you know of an obvious thing I should check, I'll do whatever I can to fix this up. Thanks!

lawremi commented 13 years ago

Thanks for making a new issue. Please don't worry about any of the Q_WS symbols except for Q_WS_X11, because the other ones are supposed to fail for your platform. The Q_WS_X11 fails, because it can't find qglobals.h, because the necessary include path -I/usr/include/qt4 is not on the compiler command line. Not sure why cmake is making that mistake.

ttriche commented 13 years ago

Update: I installed libsmokeqt4-dev and smoke-dev-tools, along with adding

include_directories("/usr/include/qt4") 

to CMakeLists.txt in kdebindings. Didn't help.

ttriche commented 13 years ago

Dammit, I didn't mean to close this bug. Can't figure out how to un-do it.

lawremi commented 13 years ago

You shouldn't need to install any smoke packages. That will likely only cause conflicts, so I would just get rid of them. Also, the include_directories line would not help. This is an issue with the way cmake is checking for Qt. My guess is that it is failing to find qmake. As far as I can tell, qmake needs to be on your PATH. So please try which qmake to see if it's there. And I managed to reopen the issue.

ttriche commented 13 years ago
tim@tims-x200s:~/Dropbox/visnab$ which qmake
/usr/bin/qmake

D'oh!

ttriche commented 13 years ago

ARGH I CLOSED THE DAMNED THING AGAIN!!!!!

Damn you Github!

ttriche commented 13 years ago

I sent an email to GitHub support requesting anti-knucklehead features in Issues, so that project owners don't have to deal with knobs like me. Lo siento

lawremi commented 13 years ago

Yes the "Comment and Close" has almost got me a couple of times. Anyway, I wonder what happens if you run qmake -query QT_INSTALL_HEADERS?

ttriche commented 13 years ago
tim@tims-x200s:~/qtbase$ qmake -query QT_INSTALL_HEADERS
/opt/qtsdk-2010.05/qt/include

That's kind of not very cool. Maybe this is what's hosing everything. I think I tried to build RStudio at one point. Clearly, Vim is jealous, and showing its displeasure.

Thanks for the tip, I think I have a good idea how to solve this now!

[Not Closing]

ttriche commented 13 years ago

I installed the Qt SDK from TrollTech, re-pulled the repo for qtbase, and now it seems to be working fine.

Also the GitHub people said they're working on the Comment and Facepalm button so that is also cool.

Thanks much for your help and patience. It's nontrivial to build all the pre-requisites for visnab...

[Now actually closing the bug on purpose!]

lawremi commented 13 years ago

Great. Do you have a list of Ubuntu packages that you needed to install? On my Gentoo box it's just qt-core and qt-gui.

ttriche commented 13 years ago

I had to install the Qt Mobile package so that the qtMultiMedia extensions were in there. I can try uninstalling the TrollTech Qt SDK and see what happens... but not right now :-)

lawremi commented 13 years ago

Ok. It shouldn't depend on qt-multimedia though. Might emit some messages about not having it, but it should still work.

ttriche commented 13 years ago

Actually it failed outright. I couldn't figure out why, so I just compiled the beta mobile/multimedia libraries from the Qt site and afterwards it was fine. Now I can plot Circos-like plots in VisNAB, which was the point of the exercise :-)