HELP!!!! Getting started - Build failure...
-
[quote author="SGaist" date="1393629981"]Hi and welcome to devnet,
The missing SDK error mentioned by Constantly_Stuck has nothing to do with Qt's SDK.
It's the OS X SDK which is provided by Xcode and Xcode does not provide all variants for all OS X versions.
[/quote]Thanks for the information!
I actually didn't know there were any kind of dependency on Xcode for running Qt on Mac, and I looked briefly on the Downloads page for any mention of this, but couldn't find any information.
Can you please give me a link to where I could find that information?
Is this dependency only for the development environment, or do they apply for the runtime as well?
-
It is not for running Qt on Mac, it is to do development. You need Xcode, or at least the command line tools installed, to have a working development environment.
After that, once deployed, you application doesn't need Xcode to run.
There's no particular information on the download page since Xcode is the only solution to develop on OS X
-
Well, I do know that XCode is needed to develop native apps for OSX or iOS. And I have now seen that what happens when you build a Qt application in Qt Creator, it creates a xcode-project.
But a developer coming from a different background might not know this, if he/she mainly uses php/python/ruby for example, it might help them to understand that XCode is needed and why. =)
-
Thank you all for your help!
I am using Qt 5.2.1 for Android and iOS (Mac, 1.3 GB)
I followed the advice of hskoglund and updated my OS to 10.9.2. (a long process with my internet speed, hence my delayed reply).
Now the QT Creator works fine and builds the project. I also had to update Xcode.
I am now working through examples etc and have encountered the following issue next:- the build kit options do not give me an option to build for Android. I believe this is because I need to download some other bits and bats relating to JAVA etc before it will work?
Thank you all again for your help.
-
Hi again Constantly_Stuck,
Nice to hear that you got it working! :)
There are some additional steps required to setup the Qt Creator for building an Android version of your project, you can read about it here: http://qt-project.org/wiki/Qt5ForAndroidBuilding.
-
If you plan to support multiple platforms such as OS X, iOS and android, you should consider getting the online installer.
This will allow you to select several version of Qt and installed them at the same time. The offline installers will reinstall the new over the old.
-
Online installer is best option, but not always recognize all settings. You must to fix sometimes. In my case I have to fix SDKROOT and QMAKE_MAC_SDK.
I am using Xcode6, so in .bash_profile export SDKROOT to corresponding path:
@
export SDKROOT=/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk
@I am using Maverick, so in *.pro:
@
QMAKE_MAC_SDK = macosx10.9
@Next, restart QtCreator.
Finally, do a clean, qmake & build :)
-
Hi,
Just to be over clear, shall I run in the terminal "export SDKROOT ..." command
I have tried the suggested solutions that raimeida suggests. No luck
My error is on Mac 10.9.4 in NetBeans 7.3.1 and a Qt application, and I'm getting:
Project ERROR: Could not resolve SDK path for 'macosx10.8'
make[1]: *** [nbproject/qt-Debug.mk] Error 3 -
Got Xcode 6 installed by any chance ?
-
About SDKROOT
SDKROOT refers to where is MacOS SDK. In other words, SDKROOT refers to "where is Xcode SDK". So, you must have Xcode installed and you need to know Xcode path. Usually Xcode is installed inside /Applications directory.
To find wich SDK you have installed, in terminal (one line):
@
ls /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/
@You must to export SDKROOK in your .bash_profile file. This file is in your $HOME directory; in my case:
/Users/ralmeida/.bash_profile
Fail proof:
- If your os version is Lion then your SDKROOT must contain MacOSX10.7.sdk
- If your os version is Mountain Lion then your SDKROOT must contain MacOSX10.8.sdk
- If your os version is Maverick then your SDKROOT must contain MacOSX10.9.sdk
- If your os version is Yosemite then your SDKROOT must contain MacOSX10.10.sdk
About QMAKE_MAC_SDK
From docs: "This variable is used on Mac OS X when building universal binaries.". It refers to which OS version you are trying to compile. If you have Mavericks then your os version is 10.9 (you can check this in "about this mac" menu).
About "Could not resolve SDK path for ‘macosx10.8’ "
If you are using Yosemite (macosx10.10), Mavericks (macosx10.9), Lion (macosx10.7) or older then your Qt is misconfigured because you are trying to compile for Mountain Lion (macosx10.8). Fix your *.pro files according to your osx version using QMAKE_MAC_SDK variable (see previous post).
Reference
http://en.wikipedia.org/wiki/OS_X
Qt 5.3.2 Reference Documentation: Qt 5.3 > Variables -
Other alternative is fix your mkspec platform file according to your mac os version:
Edit qdevice.pri file. In your Qt directory
@
nano /5.3/clang_64/mkspecs/qdevice.pri
@And change:
@
!host_build:QMAKE_MAC_SDK = macosx10.8
@to (assuming that you're using Maveric):
@
!host_build:QMAKE_MAC_SDK = macosx10.9
@ -
Hi raimeida,
Tried as suggested, though no success.
Added QMAKE_MAC_SDK = macosx10.9 to my projects .pro file (shouldn't it go into the project template for .pro? )Also added “export SDKROOT=/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk” in my .bas_profile file using nano
Just change of error message ;(
In Qt I get "error: [ui_mainwindow.h] Trace/BPT trap: 5"
Also tried to restart after I removed the .pro.user file and debug folders with no successand in NetBeans its another on the std includes!!???:
main.cpp:8:10: fatal error: 'QtGui/QApplication' file not found
#include <QtGui/QApplication>Come across the last one before in Linux and just changed it to #include <QApplication> and problem solved there. Sorry to say but not here on Mac
Any ideas?
-
[quote author="andsun" date="1411539322"]
Hi raimeida,Tried as suggested, though no success.
Added QMAKE_MAC_SDK = macosx10.9 to my projects .pro file (shouldn't it go into the project template for .pro? )Also added “export SDKROOT=/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk” in my .bas_profile file using nano
Just change of error message ;(
In Qt I get "error: [ui_mainwindow.h] Trace/BPT trap: 5"
Also tried to restart after I removed the .pro.user file and debug folders with no success
[/quote]Looks like a different kind of problem. Maybe you need to reconfigure your project settings. Did you "clean & qmake " before rebuild ?
[quote author="andsun" date="1411539322"]
and in NetBeans its another on the std includes!!???:
main.cpp:8:10: fatal error: 'QtGui/QApplication' file not found
#include <QtGui/QApplication>Come across the last one before in Linux and just changed it to #include <QApplication> and problem solved there. Sorry to say but not here on Mac
Any ideas?[/quote]
This is a code problem. Looks like your code was written for Qt4 and you are updating to Qt5. I suggest to read some docs related to migration from Qt4 to Qt5.