Manual Install
Integrate Sentry into your Xcode project by using our pre-compiled frameworks.
We recommend using Swift Package Manager with the SentrySPM product, which compiles the SDK from source. This allows you to step through SDK code while debugging and supports compile-time configuration such as package traits.
To integrate Sentry into your Xcode project using pre-compiled frameworks, follow these steps:
Download the latest version of the SDK from the Sentry Cocoa Releases page.
Each release contains the following framework options:
Sentry (Swift / standard Objective-C):
Sentry.xcframework.zip— Static framework (recommended)Sentry-Dynamic.xcframework.zip— Dynamic frameworkSentrySwiftUI.xcframework.zip— Deprecated. SwiftUI tracking is now included in the mainSentryframework.Sentry-WithoutUIKitOrAppKit.xcframework.zip— Static framework without UIKit or AppKit linking and related features
SentryObjC (pure Objective-C interface):
SentryObjC-Static.xcframework.zip— Static framework (recommended)SentryObjC-Dynamic.xcframework.zip— Dynamic framework
Import the chosen framework into your Xcode project target.
- Use
Sentry-Dynamic,Sentry, orSentry-WithoutUIKitOrAppKitindependently. Only one of these should be included in your project at a time. SentrySwiftUIis deprecated. If you still use it, it must be combined withSentry-Dynamic.- Use SentryObjC when you need a pure Objective-C interface — no Swift headers, no semantic imports (
@import), no-Swift.h. This is recommended for Objective-C++ projects or projects with Clang modules disabled. Each SentryObjC framework embeds the full Sentry SDK, so do not link bothSentryandSentryObjCin the same target. See SentryObjC for more details. - When using
SentryObjC-Static.xcframeworkin a pure Objective-C target, additional linker flags are needed for the C++ standard library and Swift runtime — see the SentryObjC-Static build settings for the full flags. - When your project has Clang modules disabled or uses Objective-C++ (
.mmfiles), you must link system frameworks explicitly (e.g.,-framework UIKit -framework Foundationin Other Linker Flags) and use#importinstead of@import— see Clang Modules Disabled / Objective-C++.
Was this helpful?
Help improve this content
Our documentation is open source and available on GitHub. Your contributions are welcome, whether fixing a typo (drat!) or suggesting an update ("yeah, this would be better").
Our documentation is open source and available on GitHub. Your contributions are welcome, whether fixing a typo (drat!) or suggesting an update ("yeah, this would be better").