Too many -I flags

Hello!

If I try to compile ROOT QT support I get the following error message:

I have QT 4.3.3 installed. The installation location of QT is /usr. Could that be a problem? I see many subdirectories of /usr/include in the command line of the call to rmkdepend.

I am using version 5.19.02 but I observed this problem already with earlier versions.

Regards,
Sebastian

I have the same problem,

to be more precise, the call producing the error message seems to be wrong:

bin/rmkdepend -R -fqt/src/GQtGUI.d -Y -w 1000 -- -pipe -m32 -Wall -W -Woverloaded-virtual -fPIC -Iinclude  -pthread -DQT_QT3SUPPORT_LIB -DQT3_SUPPORT -DQT_GUI_LIB -DQT_CORE_LIB  -DQT_DLL  -DQT_NO_DEBUG  -DQT_THREAD_SUPPORT -DQT_SHARED -I/usr/mkspecs/default  -I. -I/usr/include/a52dec -I/usr/include/aalib.h -I/usr/include/acl -I/usr/include/af_vfs.h -I/usr/include/aio.h -I/usr/include/akode -I/usr/include/aliases.h -I/usr/include/alloca.h -I/usr/include/alsa -I/usr/include/ao -I/usr/include/a.out.h -I/usr/include/argp.h -I/usr/include/argz.h -I/usr/include/ar.h -I/usr/include/arpa -I/usr/include/asm -I/usr/include/asm-arm -I/usr/include/asm-bi-x86_64 -I/usr/include/asm-generic -I/usr/include/asm-i386 -I/usr/include/asm-ia64 -I/usr/include/asm-parisc -I/usr/include/asm-powerpc -I/usr/include/asm-s390 -I/usr/include/asm-x86_64 -I/usr/include/aspell.h -I/usr/include/assert.h -I/usr/include/atk-1.0 -I/usr/include/attr -I/usr/include/audiofile.h -I/usr/include/aupvlist.h -I/usr/include/autosprintf.h -I/usr/include/avahi-client -I/usr/include/avahi-common -I/usr/include/avahi-compat-libdns_sd -I/usr/include/avahi-core -I/usr/include/avahi-glib -I/usr/include/avahi-ui -I/usr/include/bits -I/usr/include/blkid -I/usr/include/bltBind.h -I/usr/include/bltChain.h -I/usr/include/blt.h -I/usr/include/bltHash.h -I/usr/include/bltList.h -I/usr/include/bltPool.h -I/usr/include/bltTree.h -I/usr/include/bltVector.h -I/usr/include/bluetooth -I/usr/include/bonobo-activation-2.0 -I/usr/include/boost -I/usr/include/byteswap.h -I/usr/include/bzlib.h -I/usr/include/c++ -I/usr/include/cairo -I/usr/include/cdda_interface.h -I/usr/include/cdda_paranoia.h -I/usr/include/CLHEP -I/usr/include/CLucene -I/usr/include/CLucene.h -I/usr/include/complex.h -I/usr/include/conversion_check.h -I/usr/include/cpio.h -I/usr/include/crypt.h -I/usr/include/ctype.h -I/usr/include/cups -I/usr/include/curl -I/usr/include/cursesapp.h -I/usr/include/cursesf.h -I/usr/include/curses.h -I/usr/include/cursesm.h -I/usr/include/cursesp.h -I/usr/include/cursesw.h -I/usr/include/cursslk.h -I/usr/include/db_185.h -I/usr/include/db4 -I/usr/include/db.h -I/usr/include/dbm.h -I/usr/include/dbus-1.0 -I/usr/include/dirent.h -I/usr/include/dlfcn.h -I/usr/include/dns_sd.h -I/usr/include/drm -I/usr/include/e2p -I/usr/include/elf.h -I/usr/include/emerald -I/usr/include/endian.h -I/usr/include/enet -I/usr/include/envz.h -I/usr/include/err.h -I/usr/include/errno.h -I/usr/include/error.h -I/usr/include/et -I/usr/include/eti.h -I/usr/include/etip.h -I/usr/include/evdns.h -I/usr/include/event.h -I/usr/include/evhttp.h -I/usr/include/execinfo.h -I/usr/include/expat_external.h -I/usr/include/expat.h -I/usr/include/ext2fs -I/usr/include/f2c.h -I/usr/include/fam.h -I/usr/include/fcntl.h -I/usr/include/features.h -I/usr/include/fenv.h -I/usr/include/fftw3.f -I/usr/include/fftw3.h -I/usr/include/FlexLexer.h -I/usr/include/fmtmsg.h -I/usr/include/fnmatch.h -I/usr/include/fontconfig -I/usr/include/form.h -I/usr/include/fpu_control.h -I/usr/include/freetype -I/usr/include/freetype2 -I/usr/include/fstab.h -I/usr/include/ft2build.h -I/usr/include/fts.h -I/usr/include/ftw.h -I/usr/include/gconf -I/usr/include/_G_config.h -I/usr/include/gconv.h -I/usr/include/gcrypt.h -I/usr/include/gcrypt-module.h -I/usr/include/gdbm.h -I/usr/include/getopt.h -I/usr/include/gettext-po.h -I/usr/include/gif_lib.h -I/usr/include/GL -I/usr/include/glib-2.0 -I/usr/include/glitz-glx.h -I/usr/include/glitz.h -I/usr/include/glob.h -I/usr/include/gmp.h -I/usr/include/gmpxx.h -I/usr/include/gnome-vfs-2.0 -I/usr/include/gnome-vfs-module-2.0 -I/usr/include/gnu -I/usr/include/gnu-versions.h -I/usr/include/gpg-error.h -I/usr/include/gpgme.h -I/usr/include/gpm.h -I/usr/include/grp.h -I/usr/include/gsl -I/usr/include/gssapi -I/usr/include/gssapi.h -I/usr/include/gssrpc -I/usr/include/gtk-2.0 -I/usr/include/gtk-unix-print-2.0 -I/usr/include/hal -I/usr/include/icc34.h -I/usr/include/iconv.h -I/usr/include/idna.h -I/usr/include/idn-free.h -I/usr/include/idn-int.h -I/usr/include/ieee1284.h -I/usr/include/ieee754.h -I/usr/include/ifaddrs.h -I/usr/include/inttypes.h -I/usr/include/iwlib.h -I/usr/include/jack -I/usr/include/jconfig.h -I/usr/include/jerror.h -I/usr/include/jmorecfg.h -I/usr/include/jpeglib.h -I/usr/include/k3bufferedsocket.h -I/usr/include/k3clientsocketbase.h -I/usr/include/k3datagramsocket.h -I/usr/include/k3httpproxysocketdevice.h -I/usr/include/k3resolver.h -I/usr/include/k3reverseresolver.h -I/usr/include/k3serversocket.h -I/usr/include/k3socketaddress.h -I/usr/include/k3socketbase.h -I/usr/include/k3socketdevice.h -I/usr/include/k3socks.h -I/usr/include/k3sockssocketdevice.h -I/usr/include/k3streamsocket.h -I/usr/include/kaboutdata.h -I/usr/include/kallocator.h -I/usr/include/kascii.h -I/usr/include/kauthorized.h -I/usr/include/kautosavefile.h -I/usr/include/kautostart.h -I/usr/include/kcalendarsystem.h -I/usr/include/kcharsets.h -I/usr/include/kcmdlineargs.h -I/usr/include/kcodecs.h -I/usr/include/kcommondecoration.h -I/usr/include/kcomponentdata.h -I/usr/include/kcompositejob.h -I/usr/include/kconfigbase.h -I/usr/include/kconfiggroup.h -I/usr/include/kconfig.h -I/usr/include/kcoreconfigskeleton.h -I/usr/include/kdatetime.h -I/usr/include/kdebug.h -I/usr/include/kdecorationbridge.h -I/usr/include/kdecorationfactory.h -I/usr/include/kdecoration.h -I/usr/include/kdecore_export.h -I/usr/include/kdedmodule.h -I/usr/include/kdefakes.h -I/usr/include/kde_file.h -I/usr/include/kdesktopfile.h -I/usr/include/kdeversion.h -I/usr/include/kencodingdetector.h -I/usr/include/kerberosIV -I/usr/include/kexportplugin.h -I/usr/include/keyutils.h -I/usr/include/kfilterbase.h -I/usr/include/kfilterdev.h -I/usr/include/kgenericfactory.h -I/usr/include/kgenericfactory.tcc -I/usr/include/kglobal.h -I/usr/include/kjob.h -I/usr/include/kjobtrackerinterface.h -I/usr/include/kjobuidelegate.h -I/usr/include/klauncher_iface.h -I/usr/include/klibloader.h -I/usr/include/klibrary.h -I/usr/include/klocale.h -I/usr/include/klocalizedstring.h -I/usr/include/klocalsocket.h -I/usr/include/klockfile.h -I/usr/include/kmacroexpander.h -I/usr/include/kmessage.h -I/usr/include/kmimetype.h -I/usr/include/kmimetypetrader.h -I/usr/include/kpluginfactory.h -I/usr/include/kplugininfo.h -I/usr/include/kpluginloader.h -I/usr/include/kprocess.h -I/usr/include/kprotocolinfo.h -I/usr/include/kptydevice.h -I/usr/include/kpty_export.h -I/usr/include/kpty.h -I/usr/include/kptyprocess.h -I/usr/include/krandom.h -I/usr/include/krandomsequence.h -I/usr/include/krb5 -I/usr/include/krb5.h -I/usr/include/ksavefile.h -I/usr/include/kserviceaction.h -I/usr/include/kservicegroup.h -I/usr/include/kservice.h -I/usr/include/kservicetype.h -I/usr/include/kservicetypeprofile.h -I/usr/include/kservicetypetrader.h -I/usr/include/ksharedconfig.h -I/usr/include/ksharedptr.h -I/usr/include/kshell.h -I/usr/include/ksocketfactory.h -I/usr/include/ksortablelist.h -I/usr/include/kstandarddirs.h -I/usr/include/kstringhandler.h -I/usr/include/ksycocaentry.h -I/usr/include/ksycoca.h -I/usr/include/ksycocatype.h -I/usr/include/ksystemtimezone.h -I/usr/include/ktempdir.h -I/usr/include/ktemporaryfile.h -I/usr/include/ktimezone.h -I/usr/include/ktoolinvocation.h -I/usr/include/ktypelist.h -I/usr/include/ktzfiletimezone.h -I/usr/include/kurl.h -I/usr/include/kuser.h -I/usr/include/kwinconfig.h -I/usr/include/kwineffects.h -I/usr/include/kwinglobals.h -I/usr/include/kwinglutils_funcs.h -I/usr/include/kwinglutils.h -I/usr/include/kwinshadereffect.h -I/usr/include/ladspa.h -I/usr/include/langinfo.h -I/usr/include/lastlog.h -I/usr/include/lber.h -I/usr/include/lber_types.h -I/usr/include/lcms.h -I/usr/include/ldap_cdefs.h -I/usr/include/ldap_features.h -I/usr/include/ldap.h -I/usr/include/ldap_schema.h -I/usr/include/ldap_utf8.h -I/usr/include/liba2ps.h -I/usr/include/libaio.h -I/usr/include/libart-2.0 -I/usr/include/libbonobo-2.0 -I/usr/include/libexslt -I/usr/include/libgen.h -I/usr/include/libgsf-1 -I/usr/include/libIDL-2.0 -I/usr/include/libintl.h -I/usr/include/libio.h -I/usr/include/liblazy.h -I/usr/include/libmal -I/usr/include/libmng_conf.h -I/usr/include/libmng.h -I/usr/include/libmng_types.h -I/usr/include/libpng12 -I/usr/include/libqtpod -I/usr/include/libsmbclient.h -I/usr/include/libthinkfinger.h -I/usr/include/libwmf -I/usr/include/libwnck-1.0 -I/usr/include/libx86.h -I/usr/include/libxklavier -I/usr/include/libxml -I/usr/include/libxml2 -I/usr/include/libxslt -I/usr/include/limits.h -I/usr/include/link.h -I/usr/include/linux -I/usr/include/lirc -I/usr/include/locale.h -I/usr/include/ltdl.h -I/usr/include/magick -I/usr/include/malloc.h -I/usr/include/marble -I/usr/include/math.h -I/usr/include/mcheck.h -I/usr/include/memory.h -I/usr/include/menu.h -I/usr/include/mntent.h -I/usr/include/monetary.h -I/usr/include/mqueue.h -I/usr/include/Mrm -I/usr/include/mtd -I/usr/include/mysql -I/usr/include/nagios -I/usr/include/nc_tparm.h -I/usr/include/ncurses_dll.h -I/usr/include/ncurses.h -I/usr/include/ndbm.h -I/usr/include/net -I/usr/include/netash -I/usr/include/netatalk -I/usr/include/netax25 -I/usr/include/netdb.h -I/usr/include/neteconet -I/usr/include/netinet -I/usr/include/netipx -I/usr/include/netpacket -I/usr/include/netrom -I/usr/include/netrose -I/usr/include/NetworkManager -I/usr/include/nfs -I/usr/include/nl_types.h -I/usr/include/nss.h -I/usr/include/obstack.h -I/usr/include/ogg -I/usr/include/openssl -I/usr/include/orbit-2.0 -I/usr/include/panel.h -I/usr/include/pango-1.0 -I/usr/include/paths.h -I/usr/include/pciaccess.h -I/usr/include/pcrecpparg.h -I/usr/include/pcrecpp.h -I/usr/include/pcre.h -I/usr/include/pcreposix.h -I/usr/include/pcre_scanner.h -I/usr/include/pcre_stringpiece.h -I/usr/include/pgsql -I/usr/include/pi-address.h -I/usr/include/pi-appinfo.h -I/usr/include/pi-args.h -I/usr/include/pi-bluetooth.h -I/usr/include/pi-buffer.h -I/usr/include/pi-cmp.h -I/usr/include/pi-contact.h -I/usr/include/pi-datebook.h -I/usr/include/pi-debug.h -I/usr/include/pi-dlp.h -I/usr/include/pi-error.h -I/usr/include/pi-expense.h -I/usr/include/pi-file.h -I/usr/include/pi-foto.h -I/usr/include/pi-header.h -I/usr/include/pi-hinote.h -I/usr/include/pi-inet.h -I/usr/include/pi-macros.h -I/usr/include/pi-mail.h -I/usr/include/pi-md5.h -I/usr/include/pi-memo.h -I/usr/include/pi-money.h -I/usr/include/pi-net.h -I/usr/include/pi-notepad.h -I/usr/include/pi-padp.h -I/usr/include/pi-palmpix.h -I/usr/include/pi-serial.h -I/usr/include/pi-slp.h -I/usr/include/pi-sockaddr.h -I/usr/include/pi-socket.h -I/usr/include/pi-source.h -I/usr/include/pi-sys.h -I/usr/include/pi-syspkt.h -I/usr/include/pi-threadsafe.h -I/usr/include/pi-todo.h -I/usr/include/pi-usb.h -I/usr/include/pi-util.h -I/usr/include/pi-veo.h -I/usr/include/pi-versamail.h -I/usr/include/pi-version.h -I/usr/include/pixman.h -I/usr/include/plotcompat.h -I/usr/include/plot.h -I/usr/include/plotter.h -I/usr/include/pngconf.h -I/usr/include/png.h -I/usr/include/poll.h -I/usr/include/poppler -I/usr/include/popt.h -I/usr/include/pr29.h -I/usr/include/printf.h -I/usr/include/profile.h -I/usr/include/protocols -I/usr/include/pspell -I/usr/include/pth.h -I/usr/include/pthread.h -I/usr/include/pty.h -I/usr/include/punycode.h -I/usr/include/pwd.h -I/usr/include/python2.5 -I/usr/include/qimageblitz -I/usr/include/Qt -I/usr/include/Qt3Support -I/usr/include/QtAssistant -I/usr/include/QtCore -I/usr/include/QtDBus -I/usr/include/QtDesigner -I/usr/include/qtest_kde.h -I/usr/include/QtGui -I/usr/include/QtNetwork -I/usr/include/QtOpenGL -I/usr/include/QtScript -I/usr/include/QtSql -I/usr/include/QtSvg -I/usr/include/QtTest -I/usr/include/QtUiTools -I/usr/include/QtXml -I/usr/include/raptor.h -I/usr/include/rasqal -I/usr/include/rdma -I/usr/include/readline -I/usr/include/re_comp.h -I/usr/include/redland -I/usr/include/regex.h -I/usr/include/regexp.h -I/usr/include/resmgr.h -I/usr/include/resolv -I/usr/include/resolv.h -I/usr/include/rpc -I/usr/include/rpcsecgss -I/usr/include/rpcsvc -I/usr/include/sane -I/usr/include/sasl -I/usr/include/sched.h -I/usr/include/scsi -I/usr/include/SDL -I/usr/include/search.h -I/usr/include/security -I/usr/include/semaphore.h -I/usr/include/sensors -I/usr/include/setjmp.h -I/usr/include/sgtty.h -I/usr/include/shadow.h -I/usr/include/signal.h -I/usr/include/slapi-plugin.h -I/usr/include/sonnet -I/usr/include/soprano -I/usr/include/Soprano -I/usr/include/sound -I/usr/include/spawn.h -I/usr/include/sqlite3ext.h -I/usr/include/sqlite3.h -I/usr/include/ss -I/usr/include/ssl -I/usr/include/stab.h -I/usr/include/startup-notification-1.0 -I/usr/include/stdint.h -I/usr/include/stdio_ext.h -I/usr/include/stdio.h -I/usr/include/stdlib.h -I/usr/include/strigi -I/usr/include/string.h -I/usr/include/stringprep.h -I/usr/include/strings.h -I/usr/include/stropts.h -I/usr/include/sys -I/usr/include/syscall.h -I/usr/include/sysexits.h -I/usr/include/sysfs -I/usr/include/syslog.h -I/usr/include/tar.h -I/usr/include/termcap.h -I/usr/include/term_entry.h -I/usr/include/term.h -I/usr/include/termio.h -I/usr/include/termios.h -I/usr/include/tgmath.h -I/usr/include/thread_db.h -I/usr/include/tic.h -I/usr/include/tiffconf.h -I/usr/include/tiff.h -I/usr/include/tiffio.h -I/usr/include/tiffio.hxx -I/usr/include/tiffvers.h -I/usr/include/time.h -I/usr/include/tld.h -I/usr/include/ttyent.h -I/usr/include/ucontext.h -I/usr/include/uil -I/usr/include/ulimit.h -I/usr/include/unctrl.h -I/usr/include/unistd.h -I/usr/include/usb.h -I/usr/include/usbpp.h -I/usr/include/ustat.h -I/usr/include/utempter.h -I/usr/include/utils.h -I/usr/include/utime.h -I/usr/include/utmp.h -I/usr/include/utmpx.h -I/usr/include/uuid -I/usr/include/values.h -I/usr/include/video -I/usr/include/vorbis -I/usr/include/wait.h -I/usr/include/wand -I/usr/include/wchar.h -I/usr/include/wctype.h -I/usr/include/wireless.h -I/usr/include/wordexp.h -I/usr/include/wv2 -I/usr/include/X11 -I/usr/include/Xaw3d -I/usr/include/xcb -I/usr/include/xercesc -I/usr/include/xf86drm.h -I/usr/include/xf86mm.h -I/usr/include/xlocale.h -I/usr/include/Xm -I/usr/include/xmi.h -I/usr/include/zconf.h -I/usr/include/zlib.h -I/usr/include/zutil.h -D__cplusplus -- qt/src/GQtGUI.cxx
bin/rmkdepend: error:  Too many -I flags.
make: *** [qt/src/GQtGUI.o] Error 1

edit: Forcing ROOT to use Qt3 with --with-qt-incdir=… --with-qt-libdir=… does not produce this error message. However that is not what I want.

I found a workaround, the problem is that QtCore and the other Qt header directories are nested directly in /usr/include.

I created a directory /usr/include/Qt4, did a

and compiled ROOT with ./configure --with-qt-incdir=/usr/include/Qt4. It now compiles flawlessly. The problem seems to be a wildcard in some makefile, which makes sense considering that usually in a dedicated Qt header directory there are only the needed subdirs present.

I changed line 1967 of the configure script to qtdirlist=`ls $qtmainincdir/Qt*` and the compilation went on fine.