I downloaded the SDK from the Cognito service, and installed it under this instruction (http://docs.aws.amazon.com/mobile/sdkforios/developerguide/setup.html).
I installed the pod, and added the frameworks to my project. When I tried to run my project, I got an error including ld: 6705 duplicate symbols for architecture x86_64.
For example:
duplicate symbol _OBJC_CLASS_$_AWSEC2ResponseSerializer in:
/Users/haichen/Library/Developer/Xcode/DerivedData/AWSTest-ceywyjkmugdxssfeodliqhmuehlz/Build/Products/Debug-iphonesimulator/libPods-AWSEC2.a(AWSEC2Service.o)
/Users/haichen/Documents/AWSTest/aws-ios-sdk-2.1.1/frameworks/AWSEC2.framework/AWSEC2(AWSEC2Service.o)
duplicate symbol _OBJC_METACLASS_$_AWSEC2ResponseSerializer in:
/Users/haichen/Library/Developer/Xcode/DerivedData/AWSTest-ceywyjkmugdxssfeodliqhmuehlz/Build/Products/Debug-iphonesimulator/libPods-AWSEC2.a(AWSEC2Service.o)
/Users/haichen/Documents/AWSTest/aws-ios-sdk-2.1.1/frameworks/AWSEC2.framework/AWSEC2(AWSEC2Service.o)
duplicate symbol _OBJC_CLASS_$_AWSEC2RequestRetryHandler in:
/Users/haichen/Library/Developer/Xcode/DerivedData/AWSTest-ceywyjkmugdxssfeodliqhmuehlz/Build/Products/Debug-iphonesimulator/libPods-AWSEC2.a(AWSEC2Service.o)
/Users/haichen/Documents/AWSTest/aws-ios-sdk-2.1.1/frameworks/AWSEC2.framework/AWSEC2(AWSEC2Service.o)
duplicate symbol _OBJC_METACLASS_$_AWSEC2RequestRetryHandler in:
/Users/haichen/Library/Developer/Xcode/DerivedData/AWSTest-ceywyjkmugdxssfeodliqhmuehlz/Build/Products/Debug-iphonesimulator/libPods-AWSEC2.a(AWSEC2Service.o)
/Users/haichen/Documents/AWSTest/aws-ios-sdk-2.1.1/frameworks/AWSEC2.framework/AWSEC2(AWSEC2Service.o)
duplicate symbol _OBJC_CLASS_$_AWSEC2 in:
/Users/haichen/Library/Developer/Xcode/DerivedData/AWSTest-ceywyjkmugdxssfeodliqhmuehlz/Build/Products/Debug-iphonesimulator/libPods-AWSEC2.a(AWSEC2Service.o)
/Users/haichen/Documents/AWSTest/aws-ios-sdk-2.1.1/frameworks/AWSEC2.framework/AWSEC2(AWSEC2Service.o)
duplicate symbol _OBJC_METACLASS_$_AWSEC2 in:
/Users/haichen/Library/Developer/Xcode/DerivedData/AWSTest-ceywyjkmugdxssfeodliqhmuehlz/Build/Products/Debug-iphonesimulator/libPods-AWSEC2.a(AWSEC2Service.o)
/Users/haichen/Documents/AWSTest/aws-ios-sdk-2.1.1/frameworks/AWSEC2.framework/AWSEC2(AWSEC2Service.o)
ld: 6705 duplicate symbols for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
Could anyone help me find out the reason?
Close your project.
Clear all derived data.
Quit Xcode and reopen it
Make sure you open .xcworkspace file instead of .xcodeproj of your project.
To clear Derived Data:
XCode -> Window -> Projects
Select your project
press delete button in front of derived data
Let me know if it help
It looks like you are using both the frameworks and Cocoapods. You cannot import the SDK using both of the methods at the same time. You need to choose one of them and remove the other one.
Try deleting the derived data, clean the proj and re-compile.
Related
I tried to archive an IOS project with ReactNative. Got this error:
duplicate symbol _OBJC_IVAR_$_RCTWebSocketModule._methodQueue in:
/Users/xuleyuan/Library/Developer/Xcode/DerivedData/SWCRN-ewdfdwvyvsgtsjbhztxszcugwdph/Build/Intermediates/ArchiveIntermediates/SWCRN/BuildProductsPath/Release-iphoneos/libReact.a(RCTWebSocketModule.o)
/Users/xuleyuan/Library/Developer/Xcode/DerivedData/SWCRN-ewdfdwvyvsgtsjbhztxszcugwdph/Build/Intermediates/ArchiveIntermediates/SWCRN/BuildProductsPath/Release-iphoneos/libRCTWebSocket.a(RCTWebSocketModule.o)
duplicate symbol _OBJC_IVAR_$_RCTWebSocketModule._sockets in:
/Users/xuleyuan/Library/Developer/Xcode/DerivedData/SWCRN-ewdfdwvyvsgtsjbhztxszcugwdph/Build/Intermediates/ArchiveIntermediates/SWCRN/BuildProductsPath/Release-iphoneos/libReact.a(RCTWebSocketModule.o)
/Users/xuleyuan/Library/Developer/Xcode/DerivedData/SWCRN-ewdfdwvyvsgtsjbhztxszcugwdph/Build/Intermediates/ArchiveIntermediates/SWCRN/BuildProductsPath/Release-iphoneos/libRCTWebSocket.a(RCTWebSocketModule.o)
duplicate symbol _OBJC_METACLASS_$_RCTWebSocketModule in:
/Users/xuleyuan/Library/Developer/Xcode/DerivedData/SWCRN-ewdfdwvyvsgtsjbhztxszcugwdph/Build/Intermediates/ArchiveIntermediates/SWCRN/BuildProductsPath/Release-iphoneos/libReact.a(RCTWebSocketModule.o)
/Users/xuleyuan/Library/Developer/Xcode/DerivedData/SWCRN-ewdfdwvyvsgtsjbhztxszcugwdph/Build/Intermediates/ArchiveIntermediates/SWCRN/BuildProductsPath/Release-iphoneos/libRCTWebSocket.a(RCTWebSocketModule.o)
ld: 441 duplicate symbols for architecture arm64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
But I can run it with simulator rightly.What I have done:
delete duplicate targets in pod and main project
search compile source but find nothing duplicate
turn off No Common Block of all the targets
In project/Pods I found a Headers folder which contains two folders named public and private with duplicate file .Should I delete one of them?
Finally. I solved this problem!
Just remove all about React in PodFile (Only React) and everything become pretty
I've a unique problem. I'm including the AppRTC in my project via. podfile. It is successfully getting installed and along with it libjingle_peerconnection and SocketRocket libraries are also getting installed. However when I build my project it shows duplicate symbol error for libWebRTC.a and gives the following message -->
duplicate symbol _RTCFileName in:
(My project path)/Pods/libjingle_peerconnection/libjingle_peerconnection/libWebRTC.a(libjingle_peerconnection_objc.RTCLogging.o)
(My project path)/Pods/libjingle_peerconnection/libjingle_peerconnection/libWebRTC.a(rtc_base_objc.RTCLogging.o)
duplicate symbol _RTCLogEx in:
(My project path)/Pods/libjingle_peerconnection/libjingle_peerconnection/libWebRTC.a(libjingle_peerconnection_objc.RTCLogging.o)
(My project path)/Pods/libjingle_peerconnection/libjingle_peerconnection/libWebRTC.a(rtc_base_objc.RTCLogging.o)
duplicate symbol _RTCSetMinDebugLogLevel in:
(My project path)/Pods/libjingle_peerconnection/libjingle_peerconnection/libWebRTC.a(libjingle_peerconnection_objc.RTCLogging.o)
(My project path)/Pods/libjingle_peerconnection/libjingle_peerconnection/libWebRTC.a(rtc_base_objc.RTCLogging.o)
duplicate symbol __Z27RTCGetNativeLoggingSeverity18RTCLoggingSeverity in:
(My project path)/Pods/libjingle_peerconnection/libjingle_peerconnection/libWebRTC.a(libjingle_peerconnection_objc.RTCLogging.o)
(My project path)/Pods/libjingle_peerconnection/libjingle_peerconnection/libWebRTC.a(rtc_base_objc.RTCLogging.o)
ld: 4 duplicate symbols for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
I've tried everything related to this but with no success. So please help me to solve it or atleast tell why this is happening.
I had been developing a an iPad iOS app using the simulator until recently when I got my hands on an iPad with iOS 8.
I had been adding a couple of frameworks and going on just fine and the project has always built and run fine for the simulator (and it still does).
However, building for the device fails with an error about duplicate symbols (220 of them!) for the Firebase (2.5.0) Target in the Pods Project. I tried all the basics of cleaning the project, making sure Obj-C related flags were in place, but nothing.
I decided to see if somehow during work some configuration got broken so I tested on a fresh project, with Firebase as the only Pod and with nothing else done but setting up the workspace with 'pod install' and I get the exact same error.
All the duplicate symbols seem to be regarding the same file (libFirebaseStatic.a) and very many o-files.
This is the error, but I have chopped off a large middle part of the error for obvious reasons:
duplicate symbol _llvm.cmdline in:
/Users/RCR/Documents/DEV/IOS/Business/BLBusiness/Pods/Firebase/libFirebaseStatic.a(FPendingPut.o)
/Users/RCR/Documents/DEV/IOS/Business/BLBusiness/Pods/Firebase/libFirebaseStatic.a(FBase64Utilities.o)
duplicate symbol _llvm.embedded.module in:
/Users/RCR/Documents/DEV/IOS/Business/BLBusiness/Pods/Firebase/libFirebaseStatic.a(FPendingPut.o)
/Users/RCR/Documents/DEV/IOS/Business/BLBusiness/Pods/Firebase/libFirebaseStatic.a(FBase64Utilities.o)
duplicate symbol _llvm.cmdline in:
/Users/RCR/Documents/DEV/IOS/Business/BLBusiness/Pods/Firebase/libFirebaseStatic.a(FPendingPut.o)
/Users/RCR/Documents/DEV/IOS/Business/BLBusiness/Pods/Firebase/libFirebaseStatic.a(FLevelDBStorageEngine.o)
.
.
.
duplicate symbol _llvm.embedded.module in:
/Users/RCR/Documents/DEV/IOS/Business/BLBusiness/Pods/Firebase/libFirebaseStatic.a(FPendingPut.o)
/Users/RCR/Documents/DEV/IOS/Business/BLBusiness/Pods/Firebase/libFirebaseStatic.a(FTransformedEnumerator.o)
duplicate symbol _llvm.cmdline in:
/Users/RCR/Documents/DEV/IOS/Business/BLBusiness/Pods/Firebase/libFirebaseStatic.a(FPendingPut.o)
/Users/RCR/Documents/DEV/IOS/Business/BLBusiness/Pods/Firebase/libFirebaseStatic.a(FClock.o)
duplicate symbol _llvm.embedded.module in:
/Users/RCR/Documents/DEV/IOS/Business/BLBusiness/Pods/Firebase/libFirebaseStatic.a(FPendingPut.o)
/Users/RCR/Documents/DEV/IOS/Business/BLBusiness/Pods/Firebase/libFirebaseStatic.a(FClock.o)
ld: 220 duplicate symbols for architecture armv7
clang: error: linker command failed with exit code 1 (use -v to see invocation)
Don't ask me why or how, but updating Xcode (to 7.2) solved this issue. I did not pay attention to what was my previous version before updating but it had to be 7.1 or 7.1.1.
In any case, the issue is gone. I assume that the Firebase library had compiling requirements only met by the latest update to Xcode.
I have added Unrar4iOS framework and getting below linker error.
How to fix this?
duplicate symbol __Z12CallbackProcjlll in:
/Users/dmitryvlasenko/Library/Developer/Xcode/DerivedData/UnrealReader-cpvucqqjfnkeppcasgjdrwasaryu/Build/Intermediates/UnrealReader.build/Debug-iphonesimulator/UnrealReader.build/Objects-normal/i386/Unrar4iOS.o
/Users/dmitryvlasenko/Desktop/UnrealReader/Unrar4iOS.framework/Unrar4iOS(Unrar4iOS.o)
duplicate symbol _OBJC_IVAR_$_Unrar4iOS.header in:
/Users/dmitryvlasenko/Desktop/UnrealReader/Unrar4iOS.framework/Unrar4iOS(Unrar4iOS.o)
duplicate symbol _OBJC_IVAR_$_Unrar4iOS._rarFile in:
/Users/dmitryvlasenko/Library/Developer/Xcode/DerivedData/UnrealReader-cpvucqqjfnkeppcasgjdrwasaryu/Build/Intermediates/UnrealReader.build/Debug-iphonesimulator/UnrealReader.build/Objects-normal/i386/Unrar4iOS.o
/Users/dmitryvlasenko/Desktop/UnrealReader/Unrar4iOS.framework/Unrar4iOS(Unrar4iOS.o)
duplicate symbol _OBJC_IVAR_$_Unrar4iOS.filename in:
/Users/dmitryvlasenko/Desktop/UnrealReader/Unrar4iOS.framework/Unrar4iOS(RARExtractException.o)
duplicate symbol _OBJC_EHTYPE_$_RARExtractException in:
/Users/dmitryvlasenko/Library/Developer/Xcode/DerivedData/UnrealReader-cpvucqqjfnkeppcasgjdrwasaryu/Build/Intermediates/UnrealReader.build/Debug-iphonesimulator/UnrealReader.build/Objects-normal/i386/RARExtractException.o
/Users/dmitryvlasenko/Desktop/UnrealReader/Unrar4iOS.framework/Unrar4iOS(RARExtractException.o)
ld: 12 duplicate symbols for architecture i386
clang: error: linker command failed with exit code 1 (use -v to see invocation)
The error indicates to you that Unrar4iOS is both defined in Unrar4iOS.a and as individual file in your project.
So go to:
TargetSettings->Build Phases->Link Binary with Libraries and remove the Unrar4iOS.
Seems you have added the same library twice thats why it says "duplicate symbol __Z12CallbackProcjlll "
The Unrar library is written in C++. If you don't have any .mm files in your project, then Xcode doesn't link against the C++ standard library, and all the references to C++ fail to link.
Here is a compiled test well framework: Unrar4iOS.framework
I'm using Xcode Version 6.0.1 (6A317)and stuck with Apple Mach-O error for a long time. I get this error once I introduce SocketRocket project.
duplicate symbol _OBJC_IVAR_$_AppDelegate._window in:
/Users/anuradhavasudeva/Desktop/Buzz/Complete/CWPAYou/Build/Intermediates/CWPAYou.build/Debug-iphonesimulator/CWPAYou.build/Objects-normal/i386/AppDelegate-113CA4C4B5D4CC68.o
/Users/anuradhavasudeva/Desktop/Buzz/Complete/CWPAYou/Build/Intermediates/CWPAYou.build/Debug-iphonesimulator/CWPAYou.build/Objects-normal/i386/AppDelegate-D68FF7E1CDB59174.o
duplicate symbol _OBJC_METACLASS_$_AppDelegate in:
/Users/anuradhavasudeva/Desktop/Buzz/Complete/CWPAYou/Build/Intermediates/CWPAYou.build/Debug-iphonesimulator/CWPAYou.build/Objects-normal/i386/AppDelegate-113CA4C4B5D4CC68.o
/Users/anuradhavasudeva/Desktop/Buzz/Complete/CWPAYou/Build/Intermediates/CWPAYou.build/Debug-iphonesimulator/CWPAYou.build/Objects-normal/i386/AppDelegate-D68FF7E1CDB59174.o
duplicate symbol _OBJC_CLASS_$_AppDelegate in:
/Users/anuradhavasudeva/Desktop/Buzz/Complete/CWPAYou/Build/Intermediates/CWPAYou.build/Debug-iphonesimulator/CWPAYou.build/Objects-normal/i386/AppDelegate-113CA4C4B5D4CC68.o
/Users/anuradhavasudeva/Desktop/Buzz/Complete/CWPAYou/Build/Intermediates/CWPAYou.build/Debug-iphonesimulator/CWPAYou.build/Objects-normal/i386/AppDelegate-D68FF7E1CDB59174.o
duplicate symbol _OBJC_CLASS_$_ViewController in:
/Users/anuradhavasudeva/Desktop/Buzz/Complete/CWPAYou/Build/Intermediates/CWPAYou.build/Debug-iphonesimulator/CWPAYou.build/Objects-normal/i386/ViewController-7B952F801D984E6D.o
/Users/anuradhavasudeva/Desktop/Buzz/Complete/CWPAYou/Build/Intermediates/CWPAYou.build/Debug-iphonesimulator/CWPAYou.build/Objects-normal/i386/ViewController-99529767CD55CC78.o
duplicate symbol _OBJC_METACLASS_$_ViewController in:
/Users/anuradhavasudeva/Desktop/Buzz/Complete/CWPAYou/Build/Intermediates/CWPAYou.build/Debug-iphonesimulator/CWPAYou.build/Objects-normal/i386/ViewController-7B952F801D984E6D.o
/Users/anuradhavasudeva/Desktop/Buzz/Complete/CWPAYou/Build/Intermediates/CWPAYou.build/Debug-iphonesimulator/CWPAYou.build/Objects-normal/i386/ViewController-99529767CD55CC78.o
duplicate symbol _main in:
/Users/anuradhavasudeva/Desktop/Buzz/Complete/CWPAYou/Build/Intermediates/CWPAYou.build/Debug-iphonesimulator/CWPAYou.build/Objects-normal/i386/main-B74D1ABF07758C74.o
/Users/anuradhavasudeva/Desktop/Buzz/Complete/CWPAYou/Build/Intermediates/CWPAYou.build/Debug-iphonesimulator/CWPAYou.build/Objects-normal/i386/main-F48A7B3907D55170.o
ld: 6 duplicate symbols for architecture i386
clang: error: linker command failed with exit code 1 (use -v to see invocation)
I have made sure to follow the steps given in https://github.com/square/SocketRocket
the only exception I see is SocketRocket.framework was showing red when I tried adding it under + Link Binary with libraries.
I have added the following libraries:
Security.Framework
CFNetwork.Framework
UIKit.Framework
Foundation.Framework
libicucore.dylib
libsocketrocket.a
libresolv.dylib
I've set other linker flags to -ObjC
Build Active Architecture only - No, because setting it to Yes throws an error : Check dependencies. No architectures to compile for (ONLY_ACTIVE_ARCH=YES, active arch=x86_64, VALID_ARCHS=i386).
Valid Architectures - armv64 armv7 armv7s
This issue is really killing my time. I tried to follow other posts but nothing could help me solve the issue!
1.- Are you importing a .m file inside another .m file instead of the Header? It happens by mistake some times and causes that issue.
2.- Check in your Compile Sources under Build Phases that you are not including same file 2 times although from the looks of it this doesn't seem the problem.
3.- If all else fails. Clean DerivedData folder for the project in Organizer. Clean and re-build.