Build failed
I'm not an XCode User so I'm a bit lost with this message:
/Users/skeeve/Projects/pip/pip.xcodeproj: warning: The macOS deployment target 'MACOSX_DEPLOYMENT_TARGET' is set to 10.12, but the range of supported deployment target versions is 10.13 to 15.2.99. (in target 'airplay' from project 'pip')
** BUILD FAILED **
The following build commands failed:
CompileC /Users/skeeve/Projects/pip/build/pip.build/Release/PiP.build/Objects-normal/arm64/window.o /Users/skeeve/Projects/pip/pip/window.m normal arm64 objective-c com.apple.compilers.llvm.clang.1_0.compiler (in target 'PiP' from project 'pip')
(1 failure)
This issue is not directly related to the App but related to the the build environment. And hence should be handled by the build machine.
As stated in the message you can chnage the MACOSX_DEPLOYMENT_TARGET to a desired value to overcome the build failure. Alternatively you can refer to the instructions to build and run without xcode. run.sh uses cmake (includes airplay) if available else it will fallback to inline clang command (without airplay).
I have no clue, what possible "desired values" are. So I ran ./run.sh.
% ./run.sh
cmake not found, building inline without airplay
pip/window.m:222:36: error: 'CGWindowListCreateImage' is unavailable: obsoleted in macOS 15.0 - Please use ScreenCaptureKit instead.
222 | if(!window_image) window_image = CGWindowListCreateImage(CGRectNull, kCGWindowListOptionIncludingWindow, wid, kCGWindowImageNominalResolution | kCGWindowImageBoundsIgnoreFraming);
| ^
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/CoreGraphics.framework/Headers/CGWindow.h:271:33: note: 'CGWindowListCreateImage' has been explicitly marked unavailable here
271 | CG_EXTERN CGImageRef __nullable CGWindowListCreateImage(CGRect screenBounds,
| ^
pip/window.m:825:102: error: 'CGDisplayCreateImage' is unavailable: obsoleted in macOS 15.0 - Please use ScreenCaptureKit instead.
825 | CGImageRef window_image = window_id >= 0 ? CaptureWindow(window_id, is_hidpi) : (display_id >= 0 ? CGDisplayCreateImage(display_id) : NULL);
| ^
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/CoreGraphics.framework/Headers/CGDirectDisplay.h:383:33: note: 'CGDisplayCreateImage' has been explicitly marked unavailable here
383 | CG_EXTERN CGImageRef __nullable CGDisplayCreateImage(CGDirectDisplayID displayID)
| ^
pip/window.m:1086:3: error: 'CGDisplayStreamStop' is unavailable: obsoleted in macOS 15.0 - Please use ScreenCaptureKit instead.
1086 | CGDisplayStreamStop(display_stream);
| ^
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/CoreGraphics.framework/Headers/CGDisplayStream.h:284:19: note: 'CGDisplayStreamStop' has been explicitly marked unavailable here
284 | CG_EXTERN CGError CGDisplayStreamStop(CGDisplayStreamRef cg_nullable displayStream)
| ^
pip/window.m:1113:28: error: 'kCGDisplayStreamMinimumFrameTime' is unavailable: obsoleted in macOS 15.0 - Please use ScreenCaptureKit instead.
1113 | (__bridge NSString *)kCGDisplayStreamMinimumFrameTime : @(1.0f / refreshRate),
| ^
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/CoreGraphics.framework/Headers/CGDisplayStream.h:188:30: note: 'kCGDisplayStreamMinimumFrameTime' has been explicitly marked unavailable here
188 | CG_EXTERN const CFStringRef kCGDisplayStreamMinimumFrameTime SCREEN_CAPTURE_OBSOLETE(10.8,14.0,15.0); /* CFNumber in seconds, defaults to zero. */
| ^
pip/window.m:1114:28: error: 'kCGDisplayStreamShowCursor' is unavailable: obsoleted in macOS 15.0 - Please use ScreenCaptureKit instead.
1114 | (__bridge NSString *)kCGDisplayStreamShowCursor : [(NSNumber*)getPref(@"mouse_capture") intValue] > 0 ? @YES : @NO,
| ^
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/CoreGraphics.framework/Headers/CGDisplayStream.h:194:30: note: 'kCGDisplayStreamShowCursor' has been explicitly marked unavailable here
194 | CG_EXTERN const CFStringRef kCGDisplayStreamShowCursor SCREEN_CAPTURE_OBSOLETE(10.8,14.0,15.0); /* CFBoolean - defaults to false */
| ^
pip/window.m:1117:22: error: 'CGDisplayStreamCreateWithDispatchQueue' is unavailable: obsoleted in macOS 15.0 - Please use ScreenCaptureKit instead.
1117 | display_stream = CGDisplayStreamCreateWithDispatchQueue(display_id, width, height, kCVPixelFormatType_32BGRA, (__bridge CFDictionaryRef)opts, dispatch_get_main_queue(), ^(CGDisplayStreamFrameStatus status, uint64_t displayTime, IOSurfaceRef frameSurface, CGDisplayStreamUpdateRef updateRef) {
| ^
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/CoreGraphics.framework/Headers/CGDisplayStream.h:261:41: note: 'CGDisplayStreamCreateWithDispatchQueue' has been explicitly marked unavailable here
261 | CG_EXTERN CGDisplayStreamRef __nullable CGDisplayStreamCreateWithDispatchQueue(CGDirectDisplayID display,
| ^
pip/window.m:1121:5: error: 'CGDisplayStreamStart' is unavailable: obsoleted in macOS 15.0 - Please use ScreenCaptureKit instead.
1121 | CGDisplayStreamStart(display_stream);
| ^
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/CoreGraphics.framework/Headers/CGDisplayStream.h:272:19: note: 'CGDisplayStreamStart' has been explicitly marked unavailable here
272 | CG_EXTERN CGError CGDisplayStreamStart(CGDisplayStreamRef cg_nullable displayStream)
| ^
7 errors generated.
The run.sh script uses the host macos version as deployment target by default. Doing so on macOS 15.0 fails because certain apis used by the pip app are unavailable. There should be some flag to explicitly mention this to clang but I am not sure about it.
Try building with MACOSX_DEPLOYMENT_TARGET set to 10.13 with xcode.