SOLVED: Missing QuickTime framework

For discussion of topics specific to MythTV on OSX
Post Reply
User avatar
warpme
Translator
Posts: 64
Joined: Fri Feb 07, 2014 9:13 pm
Poland

SOLVED: Missing QuickTime framework

Post by warpme » Fri Jan 04, 2019 4:53 pm

Hi,
If anybody has issue with missing QuickTime framework durring building on macOS:

here is what works for me:

Download https://github.com/phracker/MacOSX-SDKs ... X10.11.sdk
Install sdk in YOur Xcode:

Option1:
1.Place the "MacOSX10.11.sdk" folder in /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs
2.Set Base SDK to "OS X 10.11" for the again target in the Xcode project settings

Option2:
Symlink MacOSX10.11.sdk FrameworksQuickTime.framework to MacOSX SDK used by Xcode:
sudo ln -sf /Users/piotro/Devel/MacOSX10.11.sdk/System/Library/Frameworks/QuickTime.framework /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/QuickTime.framework

User avatar
pvr4me
Senior
Posts: 631
Joined: Fri Feb 07, 2014 7:25 pm
Location: near Toronto, Canada
Contact:
Canada

Re: SOLVED: Missing QuickTime framework

Post by pvr4me » Sun Jan 06, 2019 2:32 pm

The Quicktime issue only happens when building with XCode 10.1, right? And therefore only on macOS 10.13.x and 10.14.x.

Craig
The MacPorts guy.

User avatar
pvr4me
Senior
Posts: 631
Joined: Fri Feb 07, 2014 7:25 pm
Location: near Toronto, Canada
Contact:
Canada

Re: SOLVED: Missing QuickTime framework

Post by pvr4me » Fri Jan 11, 2019 5:46 pm

Looking more at this...

When I build a recent pull of fixes-29.1 with XCode 9, the following is reported:

Code: Select all

ld: warning: ignoring file /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk/System/Library/Frameworks//QuickTime.framework/QuickTime.tbd, missing required architecture x86_64 in file /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk/System/Library/Frameworks//QuickTime.framework/QuickTime.tbd
Now, I'm no developer but this is a 64 bit build and there is apparently no 64 bit version of the Quicktime library. So no link.

To confirm, I checked the built library:

Code: Select all

$ otool -L libmyth-29.29.0.0.dylib |grep Frameworks
	/System/Library/Frameworks/ApplicationServices.framework/Versions/A/ApplicationServices (compatibility version 1.0.0, current version 50.0.0)
	/System/Library/Frameworks/DiskArbitration.framework/Versions/A/DiskArbitration (compatibility version 1.0.0, current version 1.0.0)
	/System/Library/Frameworks/AudioUnit.framework/Versions/A/AudioUnit (compatibility version 1.0.0, current version 1.0.0)
	/System/Library/Frameworks/AudioToolbox.framework/Versions/A/AudioToolbox (compatibility version 1.0.0, current version 492.0.0)
	/System/Library/Frameworks/CoreAudio.framework/Versions/A/CoreAudio (compatibility version 1.0.0, current version 1.0.0)
	/System/Library/Frameworks/IOKit.framework/Versions/A/IOKit (compatibility version 1.0.0, current version 275.0.0)
	/System/Library/Frameworks/QuartzCore.framework/Versions/A/QuartzCore (compatibility version 1.2.0, current version 1.11.0)
	/System/Library/Frameworks/AppKit.framework/Versions/C/AppKit (compatibility version 45.0.0, current version 1561.20.106)
	/System/Library/Frameworks/OpenGL.framework/Versions/A/OpenGL (compatibility version 1.0.0, current version 1.0.0)
	/System/Library/Frameworks/CoreVideo.framework/Versions/A/CoreVideo (compatibility version 1.2.0, current version 1.5.0)
	/System/Library/Frameworks/Foundation.framework/Versions/C/Foundation (compatibility version 300.0.0, current version 1450.15.0)
	/System/Library/Frameworks/AVFoundation.framework/Versions/A/AVFoundation (compatibility version 1.0.0, current version 2.0.0)
	/System/Library/Frameworks/CoreMedia.framework/Versions/A/CoreMedia (compatibility version 1.0.0, current version 1.0.0)
	/System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation (compatibility version 150.0.0, current version 1450.15.0)
	/System/Library/Frameworks/VideoDecodeAcceleration.framework/Versions/A/VideoDecodeAcceleration (compatibility version 1.0.0, current version 1.0.0)
	/System/Library/Frameworks/Security.framework/Versions/A/Security (compatibility version 1.0.0, current version 58286.31.2)
	/System/Library/Frameworks/CoreGraphics.framework/Versions/A/CoreGraphics (compatibility version 64.0.0, current version 1129.5.0)
	/System/Library/Frameworks/CoreServices.framework/Versions/A/CoreServices (compatibility version 1.0.0, current version 822.19.0)
	/System/Library/Frameworks/AGL.framework/Versions/A/AGL (compatibility version 1.0.0, current version 1.0.0)
Nope, no link to Quicktime. Does link to AVFoundation, CoreMedia, CoreAudio and CoreVideo plus VideoDecodeAcceleration. Aren't these the modern replacements for QuickTime?

Does that not mean that the we are unnecessarily trying to link to the Quicktime Framework?

In programs/mythfrontend/globalsettings.cpp, a section says:

Code: Select all

#if CONFIG_DARWIN
static HostCheckBox *MacGammaCorrect()
{
    HostCheckBox *gc = new HostCheckBox("MacGammaCorrect");

    gc->setLabel(PlaybackSettings::tr("Enable gamma correction for video"));

    gc->setValue(false);

    gc->setHelpText(PlaybackSettings::tr("If enabled, QuickTime will correct "
                                         "the gamma of the video to match "
                                         "your monitor. Turning this off can "
                                         "save some CPU cycles."));
    return gc;
}
I don't know if it is literally true that gamma correction still wants to use QuickTime. I haven't actually tried that setting in years. I don't recall it ever making a noticeable difference.

Craig
The MacPorts guy.

Post Reply