# Undefined symbol(s) for architecture arm64 — linker command failed with exit code 1

**Code:** `Undefined symbols for architecture` · **Category:** iOS · **Seen on:** iOS

The linker can’t find the implementation of a symbol your code uses — a missing framework/library, a file not in the target, or an architecture mismatch.

## Meaning

Classes defined in files not added to the target, static libraries missing from Link Binary With Libraries, Objective-C categories without -ObjC, or libraries built without arm64 simulator slices cause this.

## Common causes

- Source file not a member of the target
- Framework/library not linked
- Library missing the needed architecture slice
- C++ / Objective-C symbol name issues (-ObjC, -lc++)

## Quick fix

1. Check Target Membership of the file defining the symbol
2. Add the framework to Link Binary With Libraries
3. Use XCFrameworks with simulator arm64 slices

## Detailed fix by platform

### Shell

1. 

```swift
lipo -info libThirdParty.a
nm -gU libThirdParty.a | grep MissingSymbol
```


## How to diagnose

1. **Symbol** — Which one?
2. **Membership** — File in target?
3. **Arch** — lipo -info shows arm64?

---
Source: [WhatIsMyError](https://whatismyerror.com/errors/ios/undefined-symbols-for-architecture)
