I cannot Debug with the old Qt 4.8.0 psql driver. And the new Qt 4.8.1 psql driver cannot be loaded..
[ListAvailableSQLDrivers : [0mPluginsPath() C:\QtSDK\Desktop\Qt\4.8.1\msvc2010\plugins
[ListAvailableSQLDrivers : [0mQSqlDatabase::drivers() QSQLITE
[ListAvailableSQLDrivers : [0mQSqlDatabase::drivers() QODBC3
[ListAvailableSQLDrivers : [0mQSqlDatabase::drivers() QODBC
I'm working with QtSDK 1.2 (Qt 4.8.1), Win7 64bit and PgAdmin 1.14.3
My QT c++ software can load the old psql driver from Qt 4.8.0:
C:\QtSDK\Desktop\Qt\4.8.1\msvc2010\plugins\sqldrivers,
qsqlpsql4.dll,
qsqlpsql4d.dll
I've tried to compile the psql driver from the Qt Sources. That worked partially. On my laptop, the compiled driver cannot be loaded, but on the laptops of my buddies this driver is working. We all have Win7 64bit. Any ideas how to track this down are welcomed.
thanx QtDeveloper
I'd recommend not to mix Qt-dlls of one computer with plugins built/installed on another.
Qt stores default paths of plugins in Qt-dlls and the paths provided during compilation/installation on different computers may differ.
Try to use procmon from sysinternals, and see during the start of the process which paths the app tries to open while seatching for the plugins.
Try to copy \plugins\sqldrivers* to <YourAppStartPath>\plugins\sqldrivers
Related
The Problem
I cannot stress this enough but I have looked as far as I can over the internet for a solution and either they didn't have a solution or all they did was add a support ticket. The problem is that after creating a python qt quick application I try opening the QML file but when I go to the design tab it give me this error:
Code
The Designer is very finicky and can crash for various reasons. I've had success seeing the actual errors causing this dialog by launching Creator from the command line with debugging enabled:
QT_LOGGING_RULES="qtc.nodeinstances.init.debug=true" "/Applications/QtCommercial/Qt Creator.app/Contents/MacOS/Qt Creator"
That's specific to macOS but the like approach should work on any OS.
Look for error messages related to "Puppet". That's the name of the subprocess that actually renders the QML for Designer.
You can also go to Preferences -> Qt Quick -> QML Emulation Layer and try the opposite of the current setting and see if it works any better.
The solution that works for me is as follows:
OS: windows 10
Go to Tools >> Options >> Qt Quick >> (tab) Qt Designer
In the "Use fallback QML emulation layer", you see the placeholder path there. Switch it to C:\Qt\Tools\QtDesignStudio\bin or use browse if you have a different install location for Qt such that path\to\QtDesignStudio\bin
Boy do I have a FIX for you guys. I had been screwing around with this same issue to no avail, until I came across an error that wouldn't let me download qt3d (something) and I know that was part of the installation choices so I decided to uninstall everything. A thing to note when uninstalling: the Maintenance Tool doesn't uninstall everything. There were still Qt files located in C:\Users\user\AppData\Roaming I needed to delete those. Also, I needed to go into the Registry Run >>> Regedit >>>> Edit >>> Find >>> then search for Qt and that brought up all of the QT keys that still remained. I just deleted them one by one. For the Reinstall I practically installed everything (within reason) here's the list of my installation selections. Happy Hunting Fellow Qt'errr's!
Qt 5.15.2
Web Assembly
MSVC 2015-64BIT
MSVC2019-32BIT
MSVC2019-64BIT
MinGW 8.1.0 32BIT
MinGW 8.1.0 64BIT
UWP ARMv7 (MSVC 2015)
UWP x64 (MSVC 2015)
UWP ARMv7 (MSVC 2019)
UWP x64 (MSVC 2019)
UWP x86 (MSVC 2019)
Android
SOURCES
Developer and Designer Tools
Qt Creator 4.15.1 CDB Debugger Support
Debugging Tools for Windows
Qt Creator 4.15.1 Debug Symbols
Qt Creator 4.15.1 Plugin Development
Qt 3D Studio 2.8.0
-MinGW 8.1.0 32BIT
MinGW 8.1.0 64BIT
Qt 3D Studio OpenGL Runtime 2.8.0
MinGW 7.3.0 64Bit
Qt Installer Framework 4.1
Cmake 3.19.2 32bit
Cmake 3.19.2 64bit
Ninja
License: I chose L GPL
I chose Cmake not qmake
Graphic drivers were the issue in my case. Try updating or changing them.
Maybe that your Direct3D driver seems to have issues with Qt.
The error can be avoided by defining:QT_OPENGL=software in the Windows environment.
Assuming the root cause is the display driver of your computer.
Please reference:
https://bugreports.qt.io/browse/QTCREATORBUG-23455
I am trying to run a Qt application under EGLFS with Linux Mint on a Macbook Pro.
I have:
Configured and compiled Qt with all the needed flags and dependences.
Tried to run the app with X11 turned off.
Used kms integration.
Installed all the Mesa drivers ( I have an intel GPU ).
Even compiled EGL myself.
But it keeps saying "Unable to create EGL Display".
Does anyone knows what am I missing ?
P.S For example I can run weston-launch which I believe it runs over drm-egl.
I had the same problem like you. I have solved it by:
Building Qt with "-opengl desktop" switch.
Making conf file with my displays (look at: http://doc.qt.io/qt-5/embedded-linux.html at section "eglfs with eglfs_kms backend") inside application directory
Exporting QT_QPA_EGLFS_KMS_CONFIG=conf
Then switch to free tty and run application with -platform eglfs argument.
This is my first attempt at making a Qt Application work on different systems.
I have opted for static linking method.I have already compiled the sources of Qt 5.5 and compiled my application with the static Qt. The executable is working fine on my computer.
My operating system is Ubuntu 15.04. But when I tried to run the same executable on Ubuntu 14.04 then I ran into trouble. The key details of the error message are given below.
libstdc++.so.6 cxxabi_1.3.8 not found
I did a standard Google search and realised it was because I had a newer version of it on my machine, the machine where I had created the executable. There were so many different approaches to handle this problem. One of the solutions I saw involved shipping your own copy of libstdc++.so with the executable. But when I tried to copy the .so file to a pen drive, there was a warning saying that the file system does not support such files.
My question is , what am I doing wrong ? Also if I wanted to make the executable target Ubuntu 10.04, what would be the correct procedure handling the backward compatibility issues. I know that one method would be to install the same OS on my machine and then create the executable , is there any other way?
libstd++ is backward compatible but not forward compatible, which means you can run a program with a newer version of libstdc++ than the one you compiled it with but not vice-versa. This is what you experienced.
One way to deal with this issue is using older OS versions as the build machine. When you for example use Ubuntu 14.04 LTS, you'll get this list of compatible target systems.
The build system you're using will probably limit available compilers. On Ubuntu 14.04 you get GCC 4.8, which is good for most C++11 and packages for clang 3.6 are available, which will give you full C++14 support.
Targeting Ubuntu 10.04 will be challenging if you do not want to use a stone age compiler.
The idea of shipping libstdc++ will not help you much because you'll run into the same problem with libc.
I try to write a program in Qt Creator using db library. When i run my application in Qt Creator, i get that error: "QSqlDatabase: QODBC driver not loaded
QSqlDatabase: available drivers: QSQLITE"
The qsqlodbc.dll and qsqlodbcd.dll files exist in the plugins/sqldrivers folder of the Qt 5.1.0 installation.
Why can not it find the driver altough it exits in the default installation?
Thanks
I am trying to use ODBC driver in one of my Qt5 project.
I compiled QODBC driver and copied the driver dlls to the Qt\Qt5.0.0\5.0.0\msvc2010\plugins\sqldrivers folder.
When I try the following code:
QSqlDatabase db = QSqlDatabase::addDatabase("QODBC");
I get the following error:
QSqlDatabase: QODBC driver not loaded
QSqlDatabase: available drivers: QSQLITE QODBC QODBC3
Same error is encountered if I tried loading QODBC3.
Even though QODBC and QODBC3 drivers are present, Qt still could not load QODBC driver.
I am running Windows 7 (64 bit) PC.
Has anybody encountered such error? Any clues on what might be wrong ?
I found the issue was caused due to incorrect Visual studio versions used while compiling odbc sql driver.
I had both VS 2008 and VS 2010 in my computer. My Qt5.0 was using VS2010. But when I compiled the odbc sql driver, I had used VS2008. And that caused the problem.
Qt was able to detect the sql odbc driver but could not load it.
I solved this by recompiling the odbc driver using VS2010 and odbc driver works pefectly.
Here are the steps to compile and use sql odbc drivers in Qt 5.0
open qt command prompt:
this can be found in start menu under Qt
set vc++ environment variables:
To do this , cd into to the C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\ folder and run vcvarsall.bat
Important point to note is, compile the driver using the same version of Visual Studio thats used by Qt.
cd into \Qt5.0.0\5.0.0\Src\qtbase\src\plugins\sqldrivers\odbc source folder
qmake odbc.pro
nmake
If it runs correctly, the compiled qsqlodbc.dll and qsqlodbcd.dll
will be available in \Qt5.0.0\5.0.0\Src\qtbase\plugins\sqldrivers folder.
While deploying qt based application, qsqlodbc.dll (release version) need to be copied to sqldrivers folder.