Undefined symbol linker errors after upgrading to Xcode 16 with Flutter iOS integration

Dear Apple Developer Support,

We are experiencing a critical issue after upgrading our development environment from Xcode 15 to Xcode 16 (beta). Our iOS application integrates Flutter via CocoaPods (install_all_flutter_pods and flutter_post_install) and uses plugins like webview_flutter.

After the upgrade, our project started failing at the linking stage with the following errors:

Undefined symbol: _XPluginsGetDataFuncOrAbort
Undefined symbol: _XPluginsGetFunctionPtrFromID
Undefined symbol: Plugins::SocketThreadLocalScope::SocketThreadLocalScope(int)
Undefined symbol: Plugins::SocketThreadLocalScope::~SocketThreadLocalScope()
Linker command failed with exit code 1

These symbols seem to originate from Flutter’s new native C++ plugin architecture (possibly via webview_flutter_wkwebview), and were previously resolving fine with Xcode 15.

We have ensured the following:

Added -lc++ and -ObjC to OTHER_LDFLAGS

Cleaned and rebuilt Flutter module via flutter build ios --release

Re-installed CocoaPods with pod install

Verified Flutter.xcframework and plugin xcframeworks are present

Despite this, the linker fails to resolve the mentioned symbols under Xcode 16. This suggests a stricter linker behavior or a compatibility issue with the new C++ plugin system Flutter uses.

Can you confirm:

If Xcode 16 introduces stricter C++/Objective-C++ linker constraints?

Is there an official workaround or updated documentation for dealing with Plugins::SocketThreadLocalScope and related symbol resolution?

Should these symbols be declared explicitly or provided in .xcframework format from plugin developers?

We would appreciate guidance or clarification on how to proceed with Flutter plugin compatibility under Xcode 16.

Thank you.

Undefined symbol linker errors after upgrading to Xcode 16 with Flutter iOS integration
 
 
Q