MacOS 10.12 Sierra/XCode 8 - Quicktime deprecation workaround

#1

I just installed MacOS Sierra 10.12 Beta 3 on a Mac Mini with Xcode 8 Beta 4 and thought I would give OF a shot.

Unfortunately as of 10.12, the Quicktime Framework has been removed from Xcode. I suspect this will be the case if you try to build any old OF version in 10.12 when all the stuff moves forward.

The quick fix options would be to get the 10.11 SDK package and put that in Xcode to build against Quicktime. The alternative is going to be removing all quicktime code or put in some compiler flag to ignore those files in 10.12. Things with Quicktime will still run in 10.12 (for now)

To get the SDK Package for 10.11 on a fresh macOS and Xcode install, you can get it from a previous version by doing:

Xcode.app-> Right Click “Show package Contents” -> Contents -> Developer -> Platforms -> MacOSX.platform -> Developer -> SDKS -> MaxOSX10.11.sdk

Once you have that in there (and have closed and opened Xcode) - you will need to change your project settings as well - In Project settings -> Build Settings (make sure you have selected “All” at the top) -> Base SDK-> OS X 10.11 (not “Latest”)

You will also need to change the openFrameworks Project file (in your project in the openFrameworks folder - select the openFrameworksLib.xcodeproj) and go to build settings and set that Base SDK to OS X 10.11 as well

8 Likes
QuickTime/QuickTime.h: file not found
#2

I’ve downloaded 10.11 SDK, and put it in the Xcode package, but (I’m new to Xcode) I can’t find the Build Settings! Can you give me a hint?

#3

Yep - you’ll need to click the xcodeproj in the left column - then you’ll see the list of options along the top edge…see if you can follow the breadcrumbs from this screenshot:

2 Likes
#4

Thanks LaserPilot for this share.

I had the same problem even if I did not make the upgrade to 10.12

I update to Xcode 8 on osx 10.11 and no more 10.11 frameworks was available.

Using your technique and downloading the SDK there : phracker OSX 10.11 SDK
I was able to compile

Thanks!

1 Like
#5

I had to change the build settings for my open frameworks project as well as my actual code project… But all working perfectly again.

ofQTKitGrabber / QuickTime devices missing - AVFoundation change?
#6

Came across this in the process of trying to get the SDK, might be helpful as a tool:

#7

Hi all - we have a 0.9.4 Release Candidate out.
This should fix the Quicktime linking errors.

If you are able to please give it a try and post feedback in this thread.

Thanks!!
Theo

1 Like
Code compiled on osx10.9 looks different on newer osx versions
#8

Hey there, Same Big issues here BUT even replacing base SDK to 10.11 hasn’t worked…
Xcode 8.1
Sierra
of_v0.9.3_osx_release

Replaced base SDK to OS X 10.11 but still getting…
‘‘QTKit/QTKit.h’ file not found’

any idea’s?

#9

Try updating to OF 0.9.4 as Theo mentioned

1 Like
#10

also make sure you make the SDK change in both your project AND the openframeworks project that is included (in the openframeworks directory of the Xcode project there is another embedded Xcode project)

1 Like
#11

only updated in the parent project, thanks!!

#12

Hit another issue with this in Xcode 8.1 and found a workaround.

On 8.1 it limits the minimum SDK to 10.11 in a .plist file so if you try putting in 10.10 or 10.9, they just won’t show up in the SDK list.

UNLESS - you run the terminal command from this to modify the .plist:

sudo /usr/libexec/PlistBuddy -c "Set :MinimumSDKVersion 10.7" /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Info.plist  

Found from the bottom of this thread: https://forums.developer.apple.com/thread/43381 - it took forever to google it…

3 Likes
#13

Hi,

The videoGrabberExample succeeds but does not appear for me… (of_v0.9.7_osx_release)
Does anyone else experience this ?

#14

Can you explain what you mean by this? I can’t seem to find the embedded project… What are the paths to both projects?

#15

2 Likes
#16

I have oF 0.9.8 installed yet I still get the QTKit error. What am I doing wrong?

#17

Hi OFs !

I’m willing to be able to load .MOV encoded with Quicktime PNG codec in OSX, which is not accepted by current video player AvFoundation. I’m using OF 0.1with XCode 10.1

Is still there any option to relink with Quicktime lib in order to load PNG encoded video files ?
I’ve tried the above workaround and I still have AVFoundation trying to decode the file with error.

I’ve added the OSX SDK 10.11, set it as the default SDK in my XCode project and target … but still can’t make that the project loads Quicktime as video lib …

Anyone has any hint on how to proceed ?

One thing from the process that I’m not user if I’ve done correctly is that this is how my project looks :

So I don’t have the openframeworksLib.xcodeproj in my project files … ?¿ How could I fix this ?

Thanks for any help …

e*

#18

Hi @eloi - try also setting your build to 32bit

#19

Hi @autr ! Thanks . I have been looking at how to set it back to 32 bits … I can’t find it. I tried adding i386 as a valid architecture under OS X 10.11 and XCode doesn’t like it.

Error: The i386 architecture is deprecated. You should update your ARCHS build setting to remove the i386 architecture.

Do you know any other way of setting it up to 32 bits ?

#20

Ah, I think in Mojave the 32bit option is removed, and it’s also be the last version of macOS that will run 32bit apps. On High Sierra I’m able to compile with 32bit / SDK 10.11 to use old QuickTime video grabbers. JPEG and HAP are a video format you could use instead - unless you’re trying to load the QT PNG to convert them to begin with?