Rafael Pereira
Rafael Pereira

Reputation: 31

Duplicate symbols for architecture arm64 - React-Native

I have a React-Native Project that works well, however, when I install vision-camera-code-scanner, the project stops building in XCode and I get the following error:

duplicate symbol '_OBJC_CLASS_$_GDTCCTCompressionHelper' in:
    /Users/XXX/Library/Developer/Xcode/DerivedData/XXX-xxx/Build/Products/Debug-iphoneos/GoogleDataTransport.o
    /Users/XXX/Library/Developer/Xcode/DerivedData/XXX-xxx/Build/Products/Debug-iphoneos/GoogleDataTransport/libGoogleDataTransport.a(GDTCCTCompressionHelper.o)

duplicate symbol '_OBJC_METACLASS_$_GDTCCTCompressionHelper' in:
    /Users/XXX/Library/Developer/Xcode/DerivedData/XXX-xxx/Build/Products/Debug-iphoneos/GoogleDataTransport.o
    /Users/XXX/Library/Developer/Xcode/DerivedData/XXX-xxx/Build/Products/Debug-iphoneos/GoogleDataTransport/libGoogleDataTransport.a(GDTCCTCompressionHelper.o)
[...]
ld: 105 duplicate symbols for architecture arm64

Looking in the log, the duplicate symbols are in:

GoogleDataTransport.o
libGoogleDataTransport.a

GoogleUtilities_Environment.o
libGoogleUtilities.a

GoogleUtilities_Logger.o
libGoogleUtilities.a

GoogleUtilities_UserDefaults.o
libGoogleUtilities.a

FBLPromises.o
libPromisesObjC.a

I tried to find duplicate files, but without success: enter image description here

I am new in React-native, any idea on how to fix the duplicate symbols error?

Upvotes: 3

Views: 10631

Answers (2)

ZFloc Technologies
ZFloc Technologies

Reputation: 4635

Try below steps

  1. Run rm -rf ~/Library/Developer/Xcode/DerivedData/* to remove DerivedData
  2. Delete ios/pods folder
  3. Delete ios/build folder
  4. Delete Podfile.lock
  5. Remove DEAD_CODE_STRIPPING option from ios/app.xcodeproj/project.pbxproj if it's used there
  6. Run pod install and try rebuild

Upvotes: 2

Iva
Iva

Reputation: 1514

The problem can be at many places.

  • You may have linked it twice and that is the reason there is a duplicate file on the given path.

or

  • there you are trying to link two different files with the same names.

Or it can be something else the error you have put is very generic. My advice is to go to the path and check if there are two files with exact same name and extension. Or go to the Compile resources and check if the file mentioned here is linked twice.

How to go to compile resources path: https://stackoverflow.com/a/66108637/6654562

Upvotes: 2

Related Questions