Solved: installing 4.8.4 libraries on MacOS
-
I really should know how to do this by now, but...I just ran the (binary) installer. Seemed to work fine, but...where did the files go? All the installer told me was what drive. Creator can't find them. Help?
Thanks.
EDIT:
Cliff Notes for those encountering similar problems: this is probably more accurately considered a problem with accessing, rather than installing, the Qt libraries. The problem evidently exists because the Mac OS architecture forces the Qt installation to be scattered all over the directory structure, including into directories that are invisible to Qt (and the typical user). Creating a soft link to the /usr directory seems to have solved this.
-
They are basically scattered all over the OS.
Some files are in /Library/Frameworks, some in /Developer, some in /usr/bin. This is one of the reasons why I prefer prefixed builds from source. Takes more time, but gives greater control.
-
I think qmake is in /usr/bin, but cannot check now. You can search for qmake in Finder, and then feed that path to Qt Creator in Tools>Options>Build & Run>Qt Versions.
And it's not minGW, Mac uses g++ and/ or clang.
-
I just did a search from terminal, on the entire drive, and found only the qmake file for 4.8.1. And...not a single file name containing "4.8.4" on the entire disk...they must have changed naming conventions for this version.
I don't suppose that 5.0 has simplified the installation process? I'm tempted to just tear out all of this and start over.
-
Apple is not making it all easier either :) Recent releases of Xcode and changes in file structure have messed up a lot. I do not know about Qt5 on Mac, I have tested it on Linux and Windows only. You can give Qt5 RC a try. It includes a full SDK, so maybe it would be more straightforward.
What output do you get when you run:
@
which qmake
@from terminal? Also, run
@
qmake -v
@Maybe that would help.
-
Oho...this is interesting:
@unknownd49a20f3c0dc:64_GB_SSD mzimmers$ which qmake
/usr/bin/qmake
unknownd49a20f3c0dc:64_GB_SSD mzimmers$ qmake -v
QMake version 2.01a
Using Qt version 4.8.4 in /Library/Frameworks
unknownd49a20f3c0dc:64_GB_SSD mzimmers$
@Yet a search in /Library/Frameworks reveals no qmake file.
-
So the /usr/bin/qmake is the binary for 4.8.4, but the libraries (dylibs/ frameworks) reside in /Library/Frameworks. That's the standard Mac mess ;) If Qt Creator still does not see qmake, add the one from /usr/bin and see what happens.
-
:( Symlink will work perhaps?
This is bad. I'm sure there was another qmake somewhere else, but as said - can't check now, I've only got a Mac machine at work (luckily ;) ). Or we are back at compiling from source.
-
Using the link did seem to work. I modified my default kit to run with the 4.8.4 libraries and didn't get any complaints.
Thanks for the help. I do look forward for the day when the Mac OS architecture doesn't require the Qt installer to be so cumbersome.
-
Good to hear that. Per aspera ad astra, as they say :)
-
Hi and welcome to devnet,
If you need to get qmake from /usr/bin:
- Do as before (click on choose)
- Go to Macintosh HD
- Presss CMD + SHIFT + .
That will temporarily show hidden folders. Then you can access /usr
Hope it helps
-
Hi I have the same problem here:
I followed the suggestion there and indeed find that there is /usr/bin/qmake and it is indeed "Using Qt version 4.8.5 in /Library/Frameworks"
Following the SGaist's advice I use the command+shift+. to reveal hidden files.
Now I can see both qmake under /usr/bin BUT it is greyed out and I just CANNOT select it.
Can someone help?
-
Hi I have the same problem here:
I followed the suggestion there and indeed find that there is /usr/bin/qmake and it is indeed "Using Qt version 4.8.x in /Library/Frameworks"
Following the SGaist's advice I use the command+shift+. to reveal hidden files.
Now I can see both qmake under /usr/bin BUT it is greyed out and I just CANNOT select it.
Can someone help?
-
What version of Qt Creator are you using ?
-
Are you sure that /usr/bin/qmake is not a symbolic link that points to nowhere ?