qt could not find the platform plugin cocoa Mac M1 - qt

I keep getting this error while trying to run usdview on mac m1.
Regardless of usdview, there seems to be something wrong with qt
that I have no idea what it is.
I am posting this after hours of googling and none of the solutions out there worked..
I tried installing cv2, brew install qt5, brew install qt6, etc.
What is Qt platform plugin cocoa and why is it not being installed no matter what?
qt.core.plugin.loader: In /Users/username/miniforge3/plugins/platforms/libqwebgl.dylib:
Plugin uses incompatible Qt library (5.15.0) [release]
qt.core.plugin.loader: In /Users/username/miniforge3/plugins/platforms/libqoffscreen.dylib:
Plugin uses incompatible Qt library (5.15.0) [release]
qt.core.plugin.loader: In /Users/username/miniforge3/plugins/platforms/libqminimal.dylib:
Plugin uses incompatible Qt library (5.15.0) [release]
qt.core.plugin.loader: In /Users/username/miniforge3/plugins/platforms/libqcocoa.dylib:
Plugin uses incompatible Qt library (5.15.0) [release]
qt.qpa.plugin: Could not find the Qt platform plugin "cocoa" in ""
This application failed to start because no Qt platform plugin could be initialized. Reinstalling the application may fix this problem.

The platform plugin needs to be provided by the software vendor and is part of the application. It's not part of your local system. So you have to ask the vendor for a complete setup.
On Mac OS, you can actually look into the application and see, which platform plugins are provided: Right click the application in finder, select "Show package content" (I have to guess the name as my Mac speaks German, it will be the second menu entry from the top probably) - navigate into Contents/plugins/platforms. There should be a libqcocoa.dylib. If not, the setup is definitely incomplete.
And while you are already there: Under Contents/Frameworks should be the complete Qt stuff needed. Qt under /Users/username/miniforge3/plugins/platforms/ looks like the complete wrong place. Which is why you get errors like "Plugin uses incompatible Qt library".

Related

Run Binary With Specific QT Version - Cannot mix incompatible Qt library

I'm trying to replicate an application that we currently have running on a physical Ubuntu server using an Ubuntu machine in Virtual Box. It is a QT application but on the server we are running it using pm2 from NPM. After installing QT, and installing drivers needed for the application i've tried to run it but keep coming across this error:
Cannot mix incompatible Qt library (version 0x50701) with this library (version 0x50905)
I've inherited the code from someone else and don't want to change the project to QT5.9.5, so i'm trying to run with 5.7.1, I've followed instructions on other questions in order to change the QT version to 5.7.1 but still get the same error when running it.
I followed the instructions here:
https://unix.stackexchange.com/questions/116254/how-do-i-change-which-version-of-qt-is-used-for-qmake
When checking the QT version using "qmake -v" in the console I get the following output:
QMake version 3.0 Using Qt version 5.7.1 in /home/sam/Qt5.7.1/5.7/gcc_64/lib
So although it looks to me like i'm using the desired version of Qt (5.7.1), i'm still getting the incompatible library issue, i'm very new to all of this so apologies if this is a stupid question. If anyone could tell me what to do in order to use the compatible library that'd be great, thanks.
I will try to explain this in steps!
Each complete set of Qt libraries is called a Qt "distribution". You can get Qt distributions from a variety of sources:
Installed from the package manager of your OS (.deb/.rpm).
From a downloaded zip file on http://qt.io
As a cloned repo from git
etc..
Some of the available Qt distributions will come pre-built, and some will need to be built from sources. In either case they will all have a qmake program that is specific to that particular Qt distribution. This program is responsible for building programs so that they link to the particular Qt distribution that the qmake is part of. qmake is also used when building with QtCreator.
If you have a binary built with one qmake and you try to run it on another computer, it might find the wrong Qt libraries during dynamic linking and spit out errors of "incompatible version of Qt".
There are many solutions to this problem;
Collect all the Qt libraries (Mine are in /home/myusername/Qt/5.version/gcc_64/lib/*.so) in the same folder as your program executable. This will make sure they are prefered to any other version of Qt that may be in your dynamic linker's path.
Uninstall the OS supplied Qt version(s). This may not be advisable especially if other programs use them.
Rebuilt your program from source using the correct qmake.

GDB with QtCreator cannot read variables

I have tried to setup QtCreator with Qt 5.9.5 on my new ubutnu 18.04 and have been met with spades of problems. Right now my issue is that certain variables cannot be read by GDB when trying to debug a project. I have already tried tinkering with GDB setting in QtCreator with no success, and now I think my issue is that I do not have the debugging symbols installed for Qt( As mentioned here: https://bugreports.qt.io/browse/QTCREATORBUG-8278)
However when I search for debugging symbols via apt-get search I can see "qt4-bin-dbg - Qt 4 binaries debugging symbols" ( Which I installed ) but nothing for Qt 5. This link : https://packages.debian.org/sid/qtbase5-dbg suggests that it should be called qtbase5-dbg but this also does not exist.
So, does anybody know how I can download the debugging symbols, or any alternative fix???
This answer summarizes the content of the comments above.
Since Ubuntu Zesty, debug symbols for Qt5 are not distributed anymore. More details can be found on askubuntu here.
That is, there was indeed a qtbase5-dbg package, that is not available since Zesty.
Hence the solution is to use the Qt SDK as provided by the Qt company at http://download.qt.io/official_releases/qt/.
Alternatively, you can also download the sources and compile the Qt packages yourself. Using the Qt sources while debugging can be helpful if you experience bugs in the Qt framework itself.

Unknown module(s) in QT: declarative

Sorry, this may be a dumb question, but I'm totally new in QT, I just need to run a project and Log some data.
I installed Qt "qt-unified-windows-x86-2.0.3-2-online", open the project and then click on configure, and then I got this error:
Unknown module(s) in QT: declarative
which wont let me compile the code. Everything else looks fine.
From researching I get that I may lack some libraries, I'm using windows, How do I get the proper library in windows? which is the library I need?
I'm using "Qt Creator user the kit Desktop Qt 5.7.0 MinGW 32bit."
Thank you.
I'm downloading linux, a live version, to try to run the code in there
The error occurs when trying to build a project that depends on the deprecated QtDeclarative module on Qt version 5.6 and later, as the module was removed in version 5.6.
The source code for the module is still available you can compile it from source. Or you can install a Qt version below Qt 5.6 to build the project.
You probably don't have declarative library installed somehow, here it is recommended to use a command-line utility named windeployqt, something like
windeployqt -declarative

Qt Creator 4.8.4. windows 7 - 64bit installation

I have some difficulties with QT, which I need for school for some GUI applications.
I have recently done these steps:
1) mingw-get-inst-20120426.exefrom SourceForge installed to C:\MinGW\ with default settings.
2) Qt libraries 4.8.4 for Windows (minGW 4.4, 317 MB) from QT Project installed to C:\Qt\ with default settings. Here an error occurs:
!!!There is a problem with your MinQW instalation
!!!g++ not found in c:\MinGW\bin\
!!!Do you still want to continue? Yes
I checked c:\MinGW\bin\ there is no such file
3) Qt Creator 2.6.0 for Windows (51 MB)also from QT installed to C:\Qt\gtcreator-2.6.0 with default settings
4) Run the QT IDE
5) Open project or create new project. Another error occurs here
!!!No valid kits fond.
Qt Creator uses the invalid kit Desktop to parse the project.
6) Open Options->Build & Run->Kits (But I don't know how should I set Kits and where to find them).
7) Can you also help me, how to set Qt version
(Options->Buid&Run->Qt Version)? Where do I find qmake.exe?
I also didn't find how to create GUI Application. There is no such option in New File or Project...
Thanks for help.
That is quite tricky ;)
Precompiled Qt (MinGW) is only win32 (not win64).
Precompiled Qt is compiled with MinGW-g++ 4.4 and won't work with other.
You have to download this one:
http://get.qt.nokia.com/misc/MinGW-gcc440_1.zip
//// Edit: With this version of MinGW, gdb won't work (it's not python-enabled). Although QtSDK is depracted (and you won't find it on qt-project.org), I highly recommend downloading this online installer and, during the selection of components mark only MinGW. It will come with folder named "pythongdb".
http://www.developer.nokia.com/info/sw.nokia.com/id/da8df288-e615-443d-be5c-00c8a72435f8/Qt_SDK.html
(You may need to register. It's free.)
////
Add "Compiler" by g++.exe
Add "Qt Version" by qmake.exe.
Add "Kit" with Compiler and Qt Version configured above. You can try to change debugger from CDB to GDB.
When you installed mingw, did you select the C++ compiler? It is not selected by default but you need it. Re-run the wizard and select that.
The kit is not valid because the C++ compiler cannot be found: try to install it first. If you still cannot setup this read the manual: http://doc-snapshot.qt-project.org/qtcreator-2.6/creator-targets.html. It is very complete.
qmake.exe is in *qt_directory*/bin/qmake.exe.
Try this out:
http://sourceforge.net/projects/mingw-w64/ (Since the mingw-w64 project on sourceforge.net is moving to mingw-w64.org i suggest to use mingw-w64.org)
It works for me.

Qt 4.8.3 installation on Windows 7 & QtWebkit problems

I just updated my Qt to 4.8.3, because the program built from older version is not compatible to the new framework.
So I have to upgrade.
This process was frustrating and time consuming. So many problems came out.
I download Qt from this url:
http://qt-project.org/downloads
At beginning, I installed the MinGW one (I'm not a fan of MSVC).
I tried the newest ( I think it's 4.6) version of MinGW and order version (4.4).
However, after I installed MinGW and tried to install Qt 4.8.3, during the process, the following message shows up:
There is a problem with your MinGW installation:
The installer could not find a valid C:\MinGW\include\w32api.h (Only versions with W32API 3.13 are supported)
Do you still want to continue? (Your installation may not work)
The 4.6 version does have this w32api.h file, I don't know what's going on. And I have trouble finding MinGW 4.4 with this head file.
I decide to ignore this warning and continue to install Qt and Qt creator. After that,
I opened my current project, configure it (why the configuration become so complex...), I tried to build it.
Then the following message shows up because some external lib I used requires Exception Handling:
exception handling disabled, use -fexceptions to enable
And I don't know how to enable the it.
I tried to add -fexceptions flag in QMAKE_CXXFLAGS but it doesn't work.
By the way, I tried the VC version of Qt too, but I used the MinGW before and the VC compiler is quite different, if I use VC version, it will take a lot of time to make it compilable by VC compiler.
Does anyone know how to install Qt 4.8.3 on Windows? my project works fine before, now I just want to compile it successfully.......
These are not the only problem.
I updated the Qt on Mac machine too, it is easier to have the compiler work since it's unix base.
However, I used QtWebkit lib in my project and obviously, they changed this lib and it's not compatible to order version.
I can compile my project on Mac, however, every time I run it, following massage shows up and the program stopped.
dyld: Symbol not found: _OBJC_CLASS_$_CALayerHost Referenced from:
/Library/Frameworks/QtWebKit.framework/Versions/4/QtWebKit Expected
in:
/System/Library/Frameworks/QuartzCore.framework/Versions/A/QuartzCore
The program has unexpectedly finished.
Does any one know how to solve this QtWebKit problem? I'll really appreciate.
I remembered that when Qt is under nokia, it's so easy to install and use, the Qt SDK is perfect.
I really hate the change made after it was bought by digia.........
I found solutions of my first two problems:
for the first problem, as I described, download the MinGW provided by Nokia Qt
ftp.qt.nokia.com/misc/MinGW-gcc440_1.zip [ftp.qt.nokia.com]
Tried several versions of MinGW 4.4, I think this is the only one works.
About the second problem, add following configure in the project file:
CONFIG += exceptions
Now the QWebKit problem is only one unsolved.
Is it all relevant that your include directory for MinGW has two "i's" in it or was that a typographic error when posted on SO? See:
The installer could not find a valid C:\MinGW\iinclude\w32api.h

Resources