Ich verwende Qt 5.6 mit Qt Creator 4.3 auf MacOS Sierra 10.12.Qt Creator nicht sehen Mac Frameworks
Ich baue eine Qt-basierte Anwendung, die OpenGL und OpenCL verwendet.
Irgendwo scheinen Software- oder Systemupdates die Fähigkeit von Qt Creators, die Header für OpenGL- und OpenCL-Header zu finden, nicht zu lösen.
Ich habe versucht, Qt neu zu installieren, Xcode und das Mac SDK neu zu installieren, und keine dieser Optionen macht es funktioniert.
Die seltsame Sache ist meine App kompiliert. QtCreator kann die Header selbst nicht finden - das macht die Code-Navigation etwas komplexer.
So nehmen wir OpenCL. Ich schließe es wie folgt aus:
#ifdef __APPLE__
#include <OpenCL/cl.h>
#include <OpenCL/opencl.h>
#endif
Meine app.pro Datei für qmake folgende Inneren hat:
macx:QMAKE_LFLAGS += -framework OpenCL
Und damit scheint es zu kompilieren. Die beiden obigen OpenCL # -Include in QtCreator sind jedoch gelb unterstrichen mit einer QuickInfo "OpenCL/cl.h: No solche Datei oder Verzeichnis".
Jetzt kann ich sehen, dass es erfolgreich kompiliert als Qmake arbeitet, wo die Gerüste und die Pfade anhängt erfolgreich:
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang++ -c -pipe -stdlib=libc++ -g -std=gnu++11 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.12.sdk -mmacosx-version-min=10.7 -Wall -W -fPIC -DQT_DEPRECATED_WARNINGS -DQT_QML_DEBUG -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_CORE_LIB -I/Users/me/Projects/app -I. -I/Users/me/Qt5.6.2/5.6/clang_64/lib/QtWidgets.framework/Headers -I/Users/me/Qt5.6.2/5.6/clang_64/lib/QtGui.framework/Headers -I/Users/me/Qt5.6.2/5.6/clang_64/lib/QtCore.framework/Headers -I. -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.12.sdk/System/Library/Frameworks/OpenGL.framework/Headers -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.12.sdk/System/Library/Frameworks/AGL.framework/Headers -I. -I/Users/me/Qt5.6.2/5.6/clang_64/mkspecs/macx-clang -F/Users/me/Qt5.6.2/5.6/clang_64/lib -o main.o /Users/me/Projects/app/main.cpp
Nun, wenn ich in das folgende Verzeichnis navigieren die Header sind und Gegenwart:
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/OpenCL.framework/Versions/A
So kann ich nicht sehen, was fehlt.
Ich habe mit Kombinationen der folgenden über dieses Framework-Verzeichnis zu „lehrt“ Qt Creator versucht, aber ich habe etwas gefunden, das funktioniert:
Informationen über findenmacx:QMAKE_LFLAGS += -framework OpenCL
macx:INCLUDEPATH += /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/OpenCL.framework/Versions/A/Headers
macx:QMAKE_LFLAGS += -F/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks
macx:LIBS += -framework OpenCL
Ich kämpfe wie QtCreator findet Das System Frameworks auf einem Mac und wie ich es bekomme, um sie wieder zu finden. Jede Hilfe würde massiv geschätzt werden.