Can't find installed QT4 when using 'make .... xconfig' command
- 
Hey folks, (I'm using a Mac OS X Yosemite Version 10.10.2 with the latest xcode installed) I'm trying to change a kernel file for an open source project using this guide -- http://arachnoid.com/android/Android-x86/ IF ANY OF YOU COULD PLEASE HELP ME FIGURE OUT WHY MY QT (qmake) CAN'T BE FOUND When I do the following $ . build/envsetup.sh 
 $ export ARCH=x86
 $ lunch android_x86-eng
 $ make -C kernel O=/work/config/.config xconfig #(THIS IS WHERE THE ERROR HAPPENS)I get the following error (even though I installed QT4 from here: https://download.qt.io/archive/qt/4.8/4.8.5/): $ sudo make -C kernel O=/work/config/.config xconfig 
 Password:
 GEN ./Makefile
 CHECK qt- Unable to find the QT4 tool qmake. Trying to use QT3
- Unable to find any QT installation. Please make sure that
- the QT4 or QT3 development package is correctly installed and
- either qmake can be found or install pkg-config or set
- the QTDIR environment variable to the correct location.
 make[2]: *** No rule to make target scripts/kconfig/.tmp_qtcheck', needed byscripts/kconfig/qconf.o'. Stop.
 make[1]: *** [xconfig] Error 2
 make: *** [sub-make] Error 2
- 
Hi and welcome to devnet, That's normal, qmake is not your PATH. In the console your are using add the folder containing qmake in your PATH environment variable. On a side note it's Qt not QT. QT stands for Apple QuickTime. 
- 
Ahh I see, thank you so much SGaist. Sorry I'm so new to this, how do I add the folder containing qmake to my PATH variable? (sorry for the dublicate question I thought I deleted the other one) I see my qmake is in this directory: /Developer/Tools/Qt/qmake I looked at these links but not too sure: 
 http://doc.qt.io/qt-4.8/qmake-variable-reference.html
 http://doc.qt.io/qt-4.8/qmake-environment-reference.html
- 
It's not qmake related it's bash configuration. PATH=$PATH:/Developer/Tools/Qt/
- 
That line doesn't change PATH permanently, just for the current terminal until you close it. 
- 
That line doesn't change PATH permanently, just for the current terminal until you close it. Right, sorry I did that too. and this is what I got ..... hmm I installed from here https://download.qt.io/archive/qt/4.8/4.8.5/ both qt-mac-opensource-4.8.5.dmg && qt-mac-opensource-4.8.5-debug-libs.dmg Pavels-MacBook-Pro:android-x86 Pavel$ 
 Pavels-MacBook-Pro:android-x86 Pavel$
 Pavels-MacBook-Pro:android-x86 Pavel$
 Pavels-MacBook-Pro:android-x86 Pavel$ PATH=$PATH:/Developer/Tools/Qt/
 Pavels-MacBook-Pro:android-x86 Pavel$ sudo make -C kernel O=/work/config/.config xconfig
 GEN ./Makefile
 CHECK qt- Unable to find the QT4 tool qmake. Trying to use QT3
- Unable to find any QT installation. Please make sure that
- the QT4 or QT3 development package is correctly installed and
- either qmake can be found or install pkg-config or set
- the QTDIR environment variable to the correct location.
 make[2]: *** No rule to make target scripts/kconfig/.tmp_qtcheck', needed byscripts/kconfig/qconf.o'. Stop.
 make[1]: *** [xconfig] Error 2
 make: *** [sub-make] Error 2
 Pavels-MacBook-Pro:android-x86 Pavel$
- 
Are you sure that qmake is there ? what does ls -la /Developers/Tools/Qtreturn ?
- 
@SGaist said: ls -la /Developers/Tools/Qt That's a good point you have. I checked and got the following below... seems like it's executable and there. Pavels-MacBook-Pro:Qt Pavel$ pwd 
 /Developer/Tools/Qt
 Pavels-MacBook-Pro:Qt Pavel$ ls -la
 total 200
 drwxrwxr-x 27 root admin 918 Nov 8 20:16 .
 drwxrwxr-x 4 root admin 136 Nov 10 13:33 ..
 lrwxr-xr-x 1 macports wheel 40 Nov 8 20:16 Assistant.app -> /Developer/Applications/Qt/Assistant.app
 lrwxr-xr-x 1 macports wheel 39 Nov 8 20:16 Designer.app -> /Developer/Applications/Qt/Designer.app
 lrwxr-xr-x 1 macports wheel 39 Nov 8 20:16 Linguist.app -> /Developer/Applications/Qt/Linguist.app
 lrwxr-xr-x 1 macports wheel 40 Nov 8 20:16 QMLViewer.app -> /Developer/Applications/Qt/QMLViewer.app
 lrwxr-xr-x 1 macports wheel 19 Nov 8 20:16 findtr -> /usr/bin/findtr-4.8
 lrwxr-xr-x 1 macports wheel 21 Nov 8 20:16 lconvert -> /usr/bin/lconvert-4.8
 lrwxr-xr-x 1 macports wheel 21 Nov 8 20:16 lrelease -> /usr/bin/lrelease-4.8
 lrwxr-xr-x 1 macports wheel 20 Nov 8 20:16 lupdate -> /usr/bin/lupdate-4.8
 lrwxr-xr-x 1 macports wheel 24 Nov 8 20:16 macdeployqt -> /usr/bin/macdeployqt-4.8
 lrwxr-xr-x 1 macports wheel 16 Nov 8 20:16 moc -> /usr/bin/moc-4.8
 lrwxr-xr-x 1 macports wheel 40 Nov 8 20:16 pixeltool.app -> /Developer/Applications/Qt/pixeltool.app
 lrwxr-xr-x 1 macports wheel 33 Nov 8 20:16 qcollectiongenerator -> /usr/bin/qcollectiongenerator-4.8
 lrwxr-xr-x 1 macports wheel 18 Nov 8 20:16 qdbus -> /usr/bin/qdbus-4.8
 lrwxr-xr-x 1 macports wheel 25 Nov 8 20:16 qdbuscpp2xml -> /usr/bin/qdbuscpp2xml-4.8
 lrwxr-xr-x 1 macports wheel 42 Nov 8 20:16 qdbusviewer.app -> /Developer/Applications/Qt/qdbusviewer.app
 lrwxr-xr-x 1 macports wheel 25 Nov 8 20:16 qdbusxml2cpp -> /usr/bin/qdbusxml2cpp-4.8
 lrwxr-xr-x 1 macports wheel 18 Nov 8 20:16 qdoc3 -> /usr/bin/qdoc3-4.8
 lrwxr-xr-x 1 macports wheel 45 Nov 8 20:16 qhelpconverter.app -> /Developer/Applications/Qt/qhelpconverter.app
 lrwxr-xr-x 1 macports wheel 27 Nov 8 20:16 qhelpgenerator -> /usr/bin/qhelpgenerator-4.8
 lrwxr-xr-x 1 macports wheel 18 Nov 8 20:16 qmake -> /usr/bin/qmake-4.8
 lrwxr-xr-x 1 macports wheel 19 Nov 8 20:16 qt3to4 -> /usr/bin/qt3to4-4.8
 lrwxr-xr-x 1 macports wheel 16 Nov 8 20:16 rcc -> /usr/bin/rcc-4.8
 lrwxr-xr-x 1 macports wheel 16 Nov 8 20:16 uic -> /usr/bin/uic-4.8
 lrwxr-xr-x 1 macports wheel 17 Nov 8 20:16 uic3 -> /usr/bin/uic3-4.8
 lrwxr-xr-x 1 macports wheel 24 Nov 8 20:16 xmlpatterns -> /usr/bin/xmlpatterns-4.8
 Pavels-MacBook-Pro:Qt Pavel$
- 
And if you call qmake directly in the console ? 
- 
:) seems to output (shown below) the required :/ .... The installation seemed to have went correctly. I'm doing the 'make......xconfig' command (for a linux kernel modification) in a folder on my desktop. Simply going by this guide: http://arachnoid.com/android/Android-x86/ 
 That's where I realized I need the Qt libraries so I installed them from the website. Is possible there is some conflict between some other systems?
 I know I can use 'make ... menue config' instead since it doesn't use Qt libraries but it is case-sensitive which sucks on a mac since you need to do modifications there too (source: http://www.linuxchix.org/content/courses/kernel_hacking/lesson2 ) so I'd prefer 'make ... xconfig'Pavels-MacBook-Pro:Qt Pavel$ 
 Pavels-MacBook-Pro:Qt Pavel$ qmake
 Usage: qmake [mode] [options] [files]QMake has two modes, one mode for generating project files based on 
 some heuristics, and the other for generating makefiles. Normally you
 shouldn't need to specify a mode, as makefile generation is the default
 mode for qmake, but you may use this to test qmake on an existing projectMode: 
 -project Put qmake into project file generation mode
 In this mode qmake interprets files as files to
 be built,
 defaults to *.c; *.ui; *.y; *.l; *.ts; *.xlf; *.qrc; *.h; *.hpp; *.hh; *.hxx; *.H; *.cpp; *.cc; *.cxx; *.C
 Note: The created .pro file probably will
 need to be edited. For example add the QT variable to
 specify what modules are required.
 -makefile Put qmake into makefile generation mode (default)
 In this mode qmake interprets files as project files to
 be processed, if skipped qmake will try to find a project
 file in your current working directoryWarnings Options: 
 -Wnone Turn off all warnings; specific ones may be re-enabled by
 later -W options
 -Wall Turn on all warnings
 -Wparser Turn on parser warnings
 -Wlogic Turn on logic warnings (on by default)
 -Wdeprecated Turn on deprecation warnings (on by default)Options: - You can place any variable assignment in options and it will be *
- processed as if it was in [files]. These assignments will be parsed *
- before [files].                                                     *
 -o file Write output to file
 -d Increase debug level
 -t templ Overrides TEMPLATE as templ
 -tp prefix Overrides TEMPLATE so that prefix is prefixed into the value
 -help This help
 -v Version information
 -after All variable assignments after this will be
 parsed after [files]
 -norecursive Don't do a recursive search
 -recursive Do a recursive search
 -set <prop> <value> Set persistent property
 -unset <prop> Unset persistent property
 -query <prop> Query persistent property. Show all if <prop> is empty.
 -cache file Use file as cache [makefile mode only]
 -spec spec Use spec as QMAKESPEC [makefile mode only]
 -nocache Don't use a cache file [makefile mode only]
 -nodepend Don't generate dependencies [makefile mode only]
 -nomoc Don't generate moc targets [makefile mode only]
 -nopwd Don't look for files in pwd [project mode only]
 Pavels-MacBook-Pro:Qt Pavel$
 
- 
Just thought of something: you are trying to cross-compile a linux kernel on OS X. You should rather create a virtual machine using e.g. VirtualBox and do everything directly form Linux. That will save you time. 
