MacOSX13.sdk has disappeared from macos-14 runners
Description
Our CI on macos-14 broke last week because the SDK path to cannot be found. We were using:
SDKROOT=/Library/Developer/CommandLineTools/SDKs/MacOSX13.sdk
However this path no longer exists after the latest update:
bash-3.2$ ls -l /Library/Developer/CommandLineTools/SDKs
# lrwxr-xr-x 1 root wheel 14 Sep 18 21:28 MacOSX.sdk -> MacOSX15.0.sdk
# drwxr-xr-x 7 root wheel 224 Apr 30 22:16 MacOSX14.5.sdk
# lrwxr-xr-x 1 root wheel 14 Sep 18 21:28 MacOSX14.sdk -> MacOSX14.5.sdk
# drwxr-xr-x 7 root wheel 224 Aug 21 15:15 MacOSX15.0.sdk
# lrwxr-xr-x 1 root wheel 14 Sep 18 21:27 MacOSX15.sdk -> MacOSX15.0.sdk
Also xcodebuild does not be able to find the version:
xcodebuild -showsdks
# DriverKit SDKs:
# DriverKit 23.5 -sdk driverkit23.5
#
# iOS SDKs:
# iOS 17.5 -sdk iphoneos17.5
#
# iOS Simulator SDKs:
# Simulator - iOS 17.5 -sdk iphonesimulator17.5
#
# macOS SDKs:
# macOS 14.5 -sdk macosx14.5
# macOS 14.5 -sdk macosx14.5
#
# tvOS SDKs:
# tvOS 17.5 -sdk appletvos17.5
#
# tvOS Simulator SDKs:
# Simulator - tvOS 17.5 -sdk appletvsimulator17.5
#
# visionOS SDKs:
# visionOS 1.2 -sdk xros1.2
#
# visionOS Simulator SDKs:
# Simulator - visionOS 1.2 -sdk xrsimulator1.2
#
# watchOS SDKs:
# watchOS 10.5 -sdk watchos10.5
#
# watchOS Simulator SDKs:
# Simulator - watchOS 10.5 -sdk watchsimulator10.5
Platforms affected
- [ ] Azure DevOps
- [ ] GitHub Actions - Standard Runners
- [ ] GitHub Actions - Larger Runners
Runner images affected
- [ ] Ubuntu 20.04
- [ ] Ubuntu 22.04
- [ ] Ubuntu 24.04
- [ ] macOS 12
- [ ] macOS 13
- [ ] macOS 13 Arm64
- [X] macOS 14
- [X] macOS 14 Arm64
- [ ] Windows Server 2019
- [ ] Windows Server 2022
Image version and build link
Version: 20240918.8
Is it regression?
yes
Expected behavior
Can build with SDK 13
Actual behavior
Fails
Repro steps
SDKROOT=/Library/Developer/CommandLineTools/SDKs/MacOSX13.sdk
Hi @jeroen, I will look into this issue and keep you updated.
Hi @jeroen, We observed that Xcode CommandLineTools was upgraded to version 16.0.0 instead of 15.3.0 for the macOS 14 runner. Consequently, we do not see MacOSx13.sdk in the /Library/Developer/CommandLineTools/SDKs/ directory for the macOS-14 image.
Please use the code below to set up Xcode version 14.3.1 on the macOS 14 image. This will allow you to find/download MacOSx13.sdk as requested.
name: MacOSX13.sdk disappeared
on:
workflow_dispatch:
jobs:
test:
strategy:
#fail-fast: false
matrix:
os: [ macos-14 ]
xcode: [ '14.3.1', '15.0.1', '16.0' ]
runs-on: ${{ matrix.os }}
steps:
- uses: maxim-lobanov/setup-xcode@v1
with:
xcode-version: ${{ matrix.xcode }}
- name: show content CLT SDK
run: |
cd /Library/Developer/CommandLineTools/SDKs/
ls
- name: show content xcode SDK
run: |
cd /Applications/Xcode_${{ matrix.xcode }}.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs
ls
OK if this is intended, maybe the readme needs to be updated: https://github.com/actions/runner-images/blob/main/images/macos/macos-14-arm64-Readme.md#installed-sdks
Hi @jeroen ,
To find the macOS 13 SDKs, we need to select the xcode version as 14.3. Please find the code below. Our readme file is in accordance with the below.
steps:
- name: Get SDKs
run: |
sudo xcode-select -s /Applications/Xcode_14.3.app/Contents/Developer
xcodebuild -showsdks
Output:
macOS SDKs:
macOS 13.3 -sdk macosx13.3
macOS 13.3 -sdk macosx13.3
Also FYI as per our announcement we will be removing Xcode 14 and Xcode 16 from our macOS14 runners on Nov 4, 2024.
Closing as not a bug with the description and workaround provided. We install all supported by Xcodes' versions of macOS SDK, the "loss" was related to the Xcode CLT update, components of which we do not control.
Thanks for the updates, appreciate it.