Search code examples
iosobjective-cxcodecrashlyticstwitter-fabric

Undefined symbols for architecture arm64: CLSBetaController block invoke in Crashlytics(CLSBetaController.o)


Hello Guys I have updated the pod files today in my projects and I saw Crashlytics got updated from 3.8.3 to 3.8.4. After installation I am trying to run the project but I am seeing this error & unable to build the project.

In Terminal

Installing Crashlytics 3.8.4 (was 3.8.3)

In Xcode Issues

Undefined symbols for architecture arm64:
  "_FABNetworkMaximumRetryCount", referenced from:
      ___51-[CLSBetaController loadUpdateWithCompletionBlock:]_block_invoke in Crashlytics(CLSBetaController.o)
ld: symbol(s) not found for architecture arm64
clang: error: linker command failed with exit code 1 (use -v to see invocation)

Solution

  • Open Podfile Source code

    Remove the fabric & Crashlytics pods

    pod 'crashlytics' 
    pod 'Fabric'
    

    Install pods

    pod install
    

    Both Fabric and crashlytics pods will be removed.
    Open the Podfile once again and Add both pods as shown below

    pod 'crashlytics' 
    pod 'Fabric'
    

    Install pods once again

    pod install
    

    `Finally update Run script

    Select Project >> Select Target >> Build Phrases >> Under Run Script

    "${PODS_ROOT}/Fabric/run" YOUR_API_KEY YOUR_BUILD_SECRET