Skip to content

[BUG]: Build script for iOS not working with XCode 26 #1115

@anlun16

Description

@anlun16

Package version

3.0.0-pre.8

Environment

* OS: Mac OS Tahoe (26.0.1)
* Unity version: n/a
* Build target: iOS 26

Running the build script BuildScripts~/build_libwebrtc_ios.sh yields multiple errors on an M2 Mac with XCode 26. 
Starting with iOS 26, UIKit has a dependency to a new subframework UIUtilities, that may be causing this error.

Steps To Reproduce

  1. Ensure build tools are up to date:
    Update XCode to version 26
    Update brew
    Upgrade brew packages
    Install cmake using brew
  2. Run build script for ios:
    BuildScripts~/build_libwebrtc_ios.sh
  3. After downloading dependencies and beginning the build, the script fails with multiple errors similar to this:
../src/third_party/llvm-build/Release+Asserts/bin/clang++ -MMD -MF obj/sdk/audio_session_objc/RTCAudioSession.o.d -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -DCR_XCODE_VERSION=2601 -DCR_CLANG_REVISION=\"llvmorg-17-init-12166-g7586aeab-3\" -D_DEBUG -DDYNAMIC_ANNOTATIONS_ENABLED=1 -DWEBRTC_ENABLE_PROTOBUF=1 -DWEBRTC_STRICT_FIELD_TRIALS=0 -DWEBRTC_INCLUDE_INTERNAL_AUDIO_DEVICE -DRTC_ENABLE_VP9 -DRTC_DAV1D_IN_INTERNAL_DECODER_FACTORY -DWEBRTC_HAVE_SCTP -DWEBRTC_ARCH_ARM64 -DWEBRTC_HAS_NEON -DWEBRTC_LIBRARY_IMPL -DWEBRTC_ENABLE_AVX2 -DWEBRTC_NON_STATIC_TRACE_EVENT_HANDLERS=0 -DWEBRTC_POSIX -DWEBRTC_MAC -DWEBRTC_IOS -DABSL_ALLOCATOR_NOTHROW=1 -I../src -Igen -I../src/third_party/abseil-cpp -I../src/sdk/objc -I../src/sdk/objc/base  -Wall -Wextra -Wimplicit-fallthrough -Wextra-semi -Wunreachable-code-aggressive -Wthread-safety -Wunguarded-availability -Wundeclared-selector -Wno-missing-field-initializers -Wno-unused-parameter -Wno-psabi -Wloop-analysis -Wno-unneeded-internal-declaration -Wenum-compare-conditional -Wno-ignored-pragma-optimize -Wno-deprecated-builtins -Wno-bitfield-constant-conversion -Wno-deprecated-this-capture -Wshadow -fno-delete-null-pointer-checks -fno-ident -fno-strict-aliasing -fstack-protector-strong -fcolor-diagnostics -fmerge-all-constants -fcrash-diagnostics-dir=../src/tools/clang/crashreports -mllvm -instcombine-lower-dbg-declare=0 -ffp-contract=off -target arm64-apple-ios12.0 -fno-global-isel -mno-outline -Wno-builtin-macro-redefined -D__DATE__= -D__TIME__= -D__TIMESTAMP__= -ffile-compilation-dir=. -no-canonical-prefixes -ftrivial-auto-var-init=pattern -O0 -fno-omit-frame-pointer -g2 -gdwarf-aranges -Xclang -debug-info-kind=limited -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS26.0.sdk -fvisibility=hidden -Wheader-hygiene -Wstring-conversion -Wtautological-overlap-compare -Wexit-time-destructors -Wglobal-constructors -Wno-shadow -Wctad-maybe-unsupported -Wc++11-narrowing -Wundef -Wunused-lambda-capture -Wimplicit-retain-self -Wstrict-overflow -Wmissing-field-initializers -Wimplicit-retain-self -Wno-undefined-bool-conversion -Wno-tautological-undefined-compare -std=c++17 -Wno-trigraphs -fobjc-call-cxx-cdtors -Xclang -fno-cxx-modules -fno-exceptions -fno-rtti -fvisibility-inlines-hidden -fobjc-arc -c ../src/sdk/objc/components/audio/RTCAudioSession.mm -o obj/sdk/audio_session_objc/RTCAudioSession.o
In file included from ../src/sdk/objc/components/audio/RTCAudioSession.mm:13:
In file included from /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS26.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIKit.h:9:
In file included from /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS26.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIKitCore.h:9:
/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS26.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIKitDefines.h:10:9: fatal error: 'UIUtilities/UIDefines.h' file not found

Current Behavior

Build fails despite verifying that prerequisites are installed.

Expected Behavior

Build succeeds.

Anything else?

No response

Metadata

Metadata

Assignees

Labels

bugSomething isn't working

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions