What is causing this Crashlytics compile warning? (Auto-Linking supplied '...' framework linker option at '...' is not a dylib)
The Missing Link:
This error is almost always produced by not having the binary linked to the library (In this case it would be the Crashlytics.framework
):
Trying to build the target MyApp
(which includes headers with #import <Crashlytics/Crashlytics.h>
will produce the error:
ld: warning: Auto-Linking supplied '../../Crashlytics.framework/Crashlytics', framework linker option at ../../Crashlytics.framework/Crashlytics is not a dylib
Link the Framework:
Fortunately, it should be easy to fix the problem simply by dragging the Crashlytics.framework
from the Frameworks
folder in the project navigator into the list of Link Binary With Libraries
or by using the +
.
- Make sure you have your App selected/highlighted under Targets while doing this process.
I had the same issue but my reason was different.
Error Output
ld: warning: Auto-Linking supplied '~/GameFolder/Pods/Fabric/tvOS/Fabric.framework/Fabric', framework linker option at ~/GameFolder/Pods/Fabric/tvOS/Fabric.framework/Fabric is not a dylib Undefined symbols for architecture x86_64: "_OBJC_CLASS_$_Answers", referenced from: type metadata accessor for __ObjC.Answers in GameScene.o type metadata accessor for __ObjC.Answers in AppDelegate.o "_OBJC_CLASS_$_Crashlytics", referenced from: type metadata accessor for __ObjC.Crashlytics in AppDelegate.o "_OBJC_CLASS_$_Fabric", referenced from: type metadata accessor for __ObjC.Fabric in AppDelegate.o ld: symbol(s) not found for architecture x86_64 clang: error: linker command failed with exit code 1 (use -v to see invocation)
Reason
- My target was overriding the
OTHER_LDFLAGS
.
Solution
- Changed the
OTHER_LDFLAGS
to just inherit the Linker Flags. Basically, changed it to$(inherited)
I followed all steps provided by @i'L'i but I was not able to find Crashlytics.framework
and Fabric.framework
file in build phases.
So this helped me.
Step 1: Follow all the steps given Here.
Step 2: Now when you are unable to find Crashlytics.framework
and Fabric.framework
files in Link Binary With Libraries
by clicking +
do following.
2.1: Click on +
button in Link Binary With Libraries
.
2.2: Click on Add Other...
button.
2.3: Now chose Crashlytic.framework
and Fabric.framework
from Pod
folder - if using cocoapods, else choose both file from where you have downloaded it.
Step 3: Build Succeeded, Enjoy. :)