I'm building a modified version of Qt, I'm not used new to Objective-C. I have to include AVFoundation.h, because it has NSString key IDs, but when I do, the moc_ version of the file bombs out. How do I fix this?
In file included from .moc/debug/moc_avfaudioencodersettingscontrol.cpp:9: In file included from .moc/debug/../../../../../../../../qt5/qtmultimedia/src/plugins/avfoundation/camera/avfaudioencodersettingscontrol.h:42: In file included from /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.11.sdk/System/Library/Frameworks/Foundation.framework/Headers/Foundation.h:8: /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.11.sdk/System/Library/Frameworks/Foundation.framework/Headers/NSObjCRuntime.h:435:1: error: expected unqualified-id @class NSString, Protocol; ^ /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.11.sdk/System/Library/Frameworks/Foundation.framework/Headers/NSObjCRuntime.h:437:19: error: unknown type name 'NSString'; did you mean 'QString'? FOUNDATION_EXPORT NSString *NSStringFromSelector(SEL aSelector); ^ ../../../../lib/QtMultimedia.framework/Headers/qaudioencodersettingscontrol.h:51:7: note: 'QString' declared here class QString; ^ ----------- Here's the file (Minus comments) #ifndef AVFAUDIOENCODERSETTINGSCONTROL_H #define AVFAUDIOENCODERSETTINGSCONTROL_H #include <qaudioencodersettingscontrol.h> #include <MacTypes.h> #include <CoreFoundation/CoreFoundation.h> #include <Foundation/Foundation.h> #include <AVFoundation/AVFoundation.h> QT_BEGIN_NAMESPACE class AVFCameraSession; class AVFCameraService; class AVFAudioEncoderSettingsControl : public QAudioEncoderSettingsControl { Q_OBJECT public: explicit AVFAudioEncoderSettingsControl(AVFCameraService *service); QStringList supportedAudioCodecs() const Q_DECL_OVERRIDE; QString codecDescription(const QString &codecName) const Q_DECL_OVERRIDE; QList<int> supportedSampleRates(const QAudioEncoderSettings &settings, bool *continuous = 0) const Q_DECL_OVERRIDE; QAudioEncoderSettings audioSettings() const Q_DECL_OVERRIDE; void setAudioSettings(const QAudioEncoderSettings &settings) Q_DECL_OVERRIDE; NSDictionary *settingsAsNSDictionary() const; FourCharCode codecAsFourCharCode(const QString &codec) const; private: void initCodecs(); AVFCameraSession *m_session; QAudioEncoderSettings m_settings; static QMap<QString, QString> *m_audioCodecs; }; QT_END_NAMESPACE ----------------- _______________________________________________ Interest mailing list Interest@qt-project.org http://lists.qt-project.org/mailman/listinfo/interest