2014-09-30 2 views
1

Xcode 버전 6.0.1 (6A317)을 사용 중이며 오랜 시간 동안 Apple Mach-O 오류로 고정되어 있습니다. 일단 SocketRocket 프로젝트를 소개하면이 오류가 발생합니다.SocketRocket의 소개와 함께 Apple Mach-O Linker 오류

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) 

은 내가 라이브러리 + 링크 바이너리 아래에 추가했을 때 내가 볼 수있는 유일한 예외가 SocketRocket.framework이 빨간색으로 표시하고있다 https://github.com/square/SocketRocket

에 주어진 단계를 수행해야합니다 만들었습니다. 나는 다음과 같은 라이브러리를 추가 한

:

난 단지 액티브 아키텍처 빌드를 -ObjC 다른 링커 플래그를 설정 한
Security.Framework 
CFNetwork.Framework 
UIKit.Framework 
Foundation.Framework 
libicucore.dylib 
libsocketrocket.a 
libresolv.dylib 

- 예로 설정하면 오류가 발생합니다 때문에 아니, : 종속성을 확인하십시오. 컴파일 할 아키텍처가 없습니다 (ONLY_ACTIVE_ARCH = YES, 활성 arch = x86_64, VALID_ARCHS = i386). 유효한 아키텍처 - armv64 armv7 armv7s

이 문제는 실제로 내 시간을 죽이고 있습니다. 다른 게시물을 따라 가려고했지만 아무 것도 문제를 해결하는 데 도움이 될 수 없습니다.

답변

0

1. 헤더 대신 다른 .m 파일 안에 .m 파일을 가져 오시겠습니까? 그것은 실수로 몇 번이고 그 문제를 일으킨다.

2. 외관상으로 보아도 문제가없는 것으로 보이지만 동일한 파일을 두 번 포함하지 않는 빌드 단계의 컴파일 소스를 확인하십시오.

3. 그렇지 않으면 모두 실패합니다. Organizer에서 프로젝트의 DerivedData 폴더를 정리합니다. 깨끗하고 다시 빌드하십시오.

+0

안녕하세요, 응답 해 주셔서 감사합니다. SRWebSocketTests 및 SocketTesterARC에 대한 참조를 제거하여이 문제를 해결했습니다. // SocketIOTransportWebsocket.h의 헤더 경로를 #import "../../../SocketRocket/SocketRocket/SRWebSocket.h"로 변경했습니다. – arv

+0

빌드 설정에서 경로를 헤더 검색 경로에 추가하면 필요하지 않습니다 가져 오기에서 전체 경로를 지정하려면 btw를 입력하십시오. 어쨌든 같은 문제를 가진 사람들이 쉽게 해결책을 찾을 수 있도록 해결책으로 답을 작성하십시오 :) – gzafra

+0

예. 동의합니다. 그것은 올바른 일이었을 것입니다. 그것을 처리 할 것입니다. 감사. – arv

관련 문제