[vbox-dev] configure fails with distros

Jan Engelhardt jengelh at medozas.de
Tue Aug 19 16:20:06 GMT 2008

The configure script (which is not really an autotools configure, and I 
guess should not be named as such then) assumes that Qt lives in 
particular locations, which is a horribly wrong assumption.

$ ./configure --build-debug --disable-kmods --disable-pulse 
--disable-alsa --disable-xpcom
Checking for Qt3: 
  Qt3 not found at "/usr/qt/3 /usr/lib/qt3 /usr/lib/qt-3.3 /usr/share/qt3 /usr/lib64/qt-3.3 /usr/X11R6 /usr/lib/qt" or Qt3 headers not found
  Check the file /home/jengelh/Coding/vbox/VirtualBox-1.6.4/configure.log for detailed error information.

So let's unravel it.

$ tail -n5 configure.log
using the following command line:
g++ -O -Wall -o .tmp_out .tmp_src.cc -I/usr/lib/qt/include -L/usr/lib/qt/lib64 -lqt-mt -lpthread
.tmp_src.cc:2:21: error: qglobal.h: No such file or directory
.tmp_src.cc: In function 'int main()':
.tmp_src.cc:5: error: 'QT_VERSION_STR' was not declared in this scope

So qt3 is installed in /usr, like most packages in most distributions. 
Let's try again.

$ ./configure --build-debug --disable-kmods --disable-pulse --disable-alsa --disable-xpcom --with-qt-dir=/usr
$ tail -n5 configure.log
g++ -O -Wall -o .tmp_out .tmp_src.cc -I/usr/include -L/usr/lib64 -lqt-mt 

Now the libdir looks good, though the include path is still wrong, 
because it is located in /usr/include/qt3, and I do not see a way 
without touching the configure script to configure it. Could you use 
pkg-config instead of hardwiring paths pretty please? There are so many 
things hardcoded in this configure... like -g for debug. How about 
moving to autoconf-- so that I can just do `./configure CFLAGS=-ggdb3 
CXXFLAGS=-ggdb3` and enjoy the rest of the day.

More information about the vbox-dev mailing list