How to troubleshoot / debug - beginner's question
-
OK, I finally cloned the code I wanted from github -using SmartGit.
It won't "run" with this error
.Executable /media/z/DOC_COPY_LABEL/Projects /QT_Repository/examples/bluetooth/build-btscanner-Desktop-Debug/btscanner does not exist.
Nice , but it reports "after the fact" - btscanner DOES NOT EXIST
AND IT WON'T TELL ME WHY .This is the only "error" I get when I run qmake
/media/z/DOC_COPY_LABEL/Projects /QT_Repository/examples/bluetooth/btscanner/btscanner.pro:4: error: 'qtConfig' is not a recognized test function.
What is the recommended way (tutorial?) to sort-of "go backwards" to find out the problem if Qt does not tell me and there are NO OBVIOUS errors reported ?
-
Hi,
What repository is that ?
Which version of Qt are you using ?
With which compiler ? -
Local repository taken form
Qt Creator 3.5.1
Based on Qt 5.5.1 (GCC 5.2.1 20151129, 64 bit)Compiler ?
Is that part of IDE ?
I do not know what complier is used by QT Creator to "build".I can create new project and it runs - so I figure it is NOT related to anything you have asked about.
I just need some guidance WHERE to find why the file was not build , for what reason.
-
No the compiler is not part of the IDE.
From the looks of if you are on Linux and if so, you are likely using gcc
Since you are using Qt Creator, there's a build panel at the bottom that shows what is going on. It's the first place to check.
Before that, your clone of qtconnectivity is likely on the dev branch, you should checkout the branch that matches the Qt version you are using to build the example.
-
Here is "compiler output"
18:58:36: Running steps for project btscanner...
18:58:36: Configuration unchanged, skipping qmake step.
18:58:36: Starting: "/usr/bin/make"
Some of the required modules (qtConfig(listwidget)) are not available.
Skipped.
18:58:36: The process "/usr/bin/make" exited normally.
18:58:36: Elapsed time: 00:00.Question
If required module is missing, what is being "skipped and exited normally"?This is "digital" it either works or not .
I would expect "exit with error ".What is with this wishy-washy approach of Qt?
Not too user friendly for start..."start debugging"
returns SAME - missing fileNot much debugging help form that.
So - how and where I ADD qtConfig(listwidget) and WHY it did not come with cloning ?
-
After commenting out
requires(qtConfig(listwidget))
in x.pro fileI get real errors indicating that cloning from github was futile.
So much for "examples ".
Time to start over.TARGET = btscanner
QT = core bluetooth widgets
//requires(qtConfig(listwidget))
TEMPLATE = app
SOURCES =
main.cpp
device.cpp
service.cppHEADERS =
device.h
service.hFORMS =
device.ui
service.uitarget.path = $$[QT_INSTALL_EXAMPLES]/bluetooth/btscanner
INSTALLS += target -
Here is an compiler output after cleaning up the cloned code and setting some options and adding -j to make .
btscanner in now functional
20:16:47: Running steps for project btscanner...
20:16:47: Starting: "/usr/bin/make" clean
rm -f .moc/moc_device.cpp .moc/moc_service.cpp
rm -f .uic/ui_device.h .uic/ui_service.h
rm -f .obj/main.o .obj/device.o .obj/service.o .obj/moc_device.o .obj/moc_service.o
rm -f *~ core *.core
20:16:47: The process "/usr/bin/make" exited normally.
20:16:47: Configuration unchanged, skipping qmake step.
20:16:47: Starting: "/usr/bin/make" -j
/usr/lib/x86_64-linux-gnu/qt5/bin/uic ../btscanner/device.ui -o .uic/ui_device.h
/usr/lib/x86_64-linux-gnu/qt5/bin/uic ../btscanner/service.ui -o .uic/ui_service.h
g++ -c -g -O2 -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -g -fno-exceptions -Wall -W -D_REENTRANT -fPIC -DQT_NO_TSLIB -DQT_NO_FOREACH -DQT_NO_JAVA_STYLE_ITERATORS -DQT_NO_EXCEPTIONS -D_LARGEFILE64_SOURCE -D_LARGEFILE_SOURCE -DQT_BLUETOOTH_LIB -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_CORE_LIB -I../btscanner -I. -isystem /usr/include/x86_64-linux-gnu/qt5 -isystem /usr/include/x86_64-linux-gnu/qt5/QtBluetooth -isystem /usr/include/x86_64-linux-gnu/qt5/QtWidgets -isystem /usr/include/x86_64-linux-gnu/qt5/QtGui -isystem /usr/include/x86_64-linux-gnu/qt5/QtCore -I.moc -isystem /usr/include/libdrm -I.uic -I/usr/lib/x86_64-linux-gnu/qt5/mkspecs/linux-g++-64 -o .obj/service.o ../btscanner/service.cpp
/usr/lib/x86_64-linux-gnu/qt5/bin/moc -DQT_NO_TSLIB -DQT_NO_FOREACH -DQT_NO_JAVA_STYLE_ITERATORS -DQT_NO_EXCEPTIONS -D_LARGEFILE64_SOURCE -D_LARGEFILE_SOURCE -DQT_BLUETOOTH_LIB -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_CORE_LIB -I/usr/lib/x86_64-linux-gnu/qt5/mkspecs/linux-g++-64 -I'/media/z/DOC_COPY_LABEL/Projects /QT_Repository/examples/bluetooth/btscanner' -I/usr/include/x86_64-linux-gnu/qt5 -I/usr/include/x86_64-linux-gnu/qt5/QtBluetooth -I/usr/include/x86_64-linux-gnu/qt5/QtWidgets -I/usr/include/x86_64-linux-gnu/qt5/QtGui -I/usr/include/x86_64-linux-gnu/qt5/QtCore -I. -I/usr/include/c++/5 -I/usr/include/x86_64-linux-gnu/c++/5 -I/usr/include/c++/5/backward -I/usr/lib/gcc/x86_64-linux-gnu/5/include -I/usr/local/include -I/usr/lib/gcc/x86_64-linux-gnu/5/include-fixed -I/usr/include/x86_64-linux-gnu -I/usr/include ../btscanner/service.h -o .moc/moc_service.cpp -
@AnneRanch
Does your Qt installation work at all?
How you installed Qt / Qt Creator?The easy way to test whether the example projects run or not would be to go to the welcome screen of Qt Creator and select an example from "Examples" tab.
Even if you want to clone your code from git, you could give it a try and see if you can run examples from there.What Linux distribution are you using?
Qt Creator 3.5 seems a bit outdated to me@AnneRanch said in How to troubleshoot / debug - beginner's question:
WHY it did not come with cloning ?
This line is actually included
Edit:
Ah never mind. So it's working now?