sourcetip

"경고: iPhone 앱에는 빌드 구성이 설정되어 있어도 armv6 아키텍처가 포함되어 있어야 합니다.

fileupload 2023. 4. 18. 23:16
반응형

"경고: iPhone 앱에는 빌드 구성이 설정되어 있어도 armv6 아키텍처가 포함되어 있어야 합니다.

프로젝트 빌드 설정을 조정해야 하는 지 오래되었습니다.최신 SDK로 업그레이드한 후 애드혹 배포 구성을 구축하는 데 문제가 있습니다.

빌드는 다음 경고 및 오류를 생성합니다.

경고: iPhone 앱은 armv6 아키텍처를 포함해야 합니다(현재 ARCHS = "armv7").

iPhone/iPod Touch: 애플리케이션 실행 파일에 필요한 아키텍처가 없습니다.다음 아키텍처 중 하나 이상이 있어야 합니다. armv6(-19033)

그러나 프로젝트에서는 올바르게 설정되어 있다고 생각했습니다.

  • 아키텍처: 표준 (armv6 armv7)
  • 베이스 SDK: 최신 iOS (현재 iOS 4.2로 설정)
  • 유효한 아키텍처: armv6 armv7

alt 텍스트

난 모든 목표물을 제거했습니다

조언해 주셔서 감사합니다.

Xcode 4.2 이후를 사용하고 있는 경우는, 다음의 순서에 따릅니다.

  1. 프로젝트 이름(왼쪽 열)을 클릭한 다음 대상을 클릭합니다.

    여기에 이미지 설명 입력

  2. '빌드 설정' 탭(오른쪽 열)을 클릭합니다.

    여기에 이미지 설명 입력

  3. '아키텍처' 아래의 '릴리스' 또는 '배포' 행을 클릭하고 '기타'를 선택합니다..':

    여기에 이미지 설명 입력

  4. '$(ARCS_STANDARD_32_B)'라고 강조 표시된 행을 더블 클릭합니다.표시되는 팝오버에 IT)를 표시하고 'armv6'을 입력하여 대체합니다.그런 다음 팝업 왼쪽 아래에 더하기 버튼을 사용하여 새 행을 추가하고 'armv7'을 입력한 다음 완료를 클릭합니다.

    여기에 이미지 설명 입력

업데이트: iPhone 5도 대상으로 armv7을 추가해야 합니다.(또한 Xcode 4.5 이후 빌드 시 armv6를 지원하지 않는 경우 armv6를 드롭합니다.)

바로 그겁니다.이제 오류를 생성하지 않고 빌드/아카이브를 수행할 수 있습니다.

그래도 작동하지 않으면 justinxreese의 답변을 참조하십시오.이 답변에서는 info.plist 파일의 "Required Device Capabilities" 아래에 armv6 및 armv7 엔트리를 추가할 것을 권장합니다.

"Build Active Architecture Only(액티브 아키텍처만 빌드)"를 선택 해제하면 유효한 아키텍처가 모두 구축됩니다.

업데이트: Xcode 4 이후로는 적용되지 않습니다.Xcode 4 이후로는 Nick의 지시에 따릅니다.

수락된 답변을 따르더라도 이 문제가 발생했고 다음 사항이 작동했습니다.

Info.plist에서 Required Device Capabilities 항목을 추가합니다.이것은 어레이여야 하며 2개의 엔트리가 있습니다.

  • 항목 0: armv6
  • 항목 1: armv7

다음과 같이 표시됩니다.

필요한 디바이스 기능 엔트리

Xcode 4.2에 대한 Nick의 답변 외에 info.plist 파일도 확인해야 합니다.Xcode 4.2에서 시작된 새 프로젝트는 기본적으로 '필수 장치 기능'에 'armv7'을 지정하는 것으로 보입니다.armv6(iPhone 3G 등)를 실행하는 디바이스를 지원하려면 이 기능을 제거해야 합니다.

여기에 이미지 설명 입력

ProjectName-Info.plist의 '필수 디바이스 기능'에서 armv7을 삭제합니다.

IOS 6 업데이트

ios 6의 Xcode 4.5.x에서의 변경

  1. Xcode 4.5.x(및 그 이후)에서는 armv6 바이너리 생성을 지원하지 않습니다.
  2. iPhone 5/armv7s 지원이 추가되었습니다.
  3. Xcode 4.5.x 이후에 지원되는 최소 배포 대상은 iOS 4.3입니다.

저도 이런 문제가 있었어요.도입 목표를 4.3으로 설정하고 armv7 아키텍처만 남겨두면 작동했습니다.현시점에서는 거의 모든 사람이 5를 가지고 있으므로 4.3으로 괜찮습니다.

모든 답변에서 동작하는 것은 아니지만 TARGETS > Architectures > Debug를 시도하고 플러스 버튼을 사용하여 새 행을 추가한 후 'armv6'(with out ')를 입력하고 [Done]을 클릭합니다.

마지막으로 CMD+B를 클릭하여 PrjectName.app(Products 폴더 내)> Finder에서 Open(열기)> Compress "PROJECT_NAME"을 오른쪽 클릭합니다.APP" (Debug-iphoneos 내)> AppStore에 업로드

여기에 이미지 설명 입력

제 화면 설정입니다. 여기에 이미지 설명 입력

프로젝트가 포함되어 있는 경우는, 모두 설정해 주세요.잘 부탁드립니다.

이 대답들을 혼합한 후에, 나는 마침내 그것을 작동시키는 것을 우연히 발견했다.나 지금 애플한테 완전 열받았어.딱 한 시간만 더 낭비했어이게 제 설정입니다.

여기에 이미지 설명 입력

나는 위의 모든 답을 시도해 보았지만, 아무도 나의 문제를 해결하지 못했다.그래서 새로운 프로젝트를 만들고 빌드 설정을 하나씩 달리합니다."대체 권한 파일"만 다릅니다.실패한 프로젝트 빌드에는 armv7 값이 있습니다.삭제 후 clean-> build-> archive를 실행합니다.성공!희망은 너의 궁금증을 해결해 줄 수 있다.

와, 저는 약 6개월마다 앱을 업데이트/제출하고 있습니다.이걸 할 때마다 새로운 방법을 배워야 해

iOS 5.1 및 Xcode 4.3.2를 실행할 때 위와 같은 문제가 발생합니다.

투고 감사합니다!프로젝트 설정을 모두 armv6, armv7로 업데이트했지만 만족할 수 없었습니다."build active architecture only"를 "No"로 설정하면 두 개체를 동일한 디렉토리에 배치하는 것에 대한 빌드 오류가 발생합니다.

다행히, 대신 타겟 빌드 설정을 수정하고 있는 것을 알 수 있었습니다.이것이 최종적으로 실현되었습니다(armv6, armv7, 타겟 빌드 설정에서 "액티브한 아키텍처만 빌드"를 아니요로 설정).면책사항으로서 프로젝트 설정에서도 모든 아키텍처를 armv6, armv7로 이미 설정했습니다.

어쨌든, 도와줘서 고마워, 브렌트

xCode 4.3.2의 Target 설정과 Project 설정 모두에서 앱을 제출할 수 있는 모든 곳에서 armv6와 armv7을 빌드하도록 설정한 후 이러한 설정을 변경해야 했습니다.

또한 안전한 조치를 위해 변경을 가하고 깨끗한 빌드 아카이브 사이클을 실행하는 사이에 xCode를 종료했습니다.

저도 꽤 고통스러운 문제예요.건물을 짓고 다시 짓는데 한 시간 정도 걸렸는데 재미가 없네요.결국 나는 이것을 해야만 했다.

  1. 기본 SDK를 최신 SDK로 업그레이드합니다(이 경우는 iOS 5 ).
  2. xCode 재시작
  3. 클린&빌드
  4. 됐다!

제 프로젝트가 양쪽 모두에 유효한 것처럼 보였기 때문에 arm6와 arm7에 관한 많은 전문용어라고 생각합니다.적어도 설정은 그렇게 되어 있는 것 같았습니다만, 이것은 우리가 이해할 수 없는 기술적인 것으로 우리를 속이기 위한 냉소적인 방법이라고 생각합니다.그래서 우리는 간단한 옵션을 선택하고 최신 iOS를 목표로 합니다(더 많은 사람들이 최신 정보를 가지고 있기 때문에 애플에 도움이 됩니다).

다음은 Apple의 문서입니다.

테크니컬 Q&A QA1760

다음 두 가지 사항을 정확하게 파악해야 한다고 되어 있습니다.

  1. armv6
  2. [ ]를 [Build Active Architecture Only]으로 합니다.No.

그래도 문제가 해결되지 않으면 아키텍처 빌드 설정을 올바르게 변경하고 있는지 다시 한 번 확인해 주십시오.잘못된 빌드 설정을 만지작거리며 30분 동안 왜 작동하지 않는지 궁금했습니다.

선택합니다.Edit Scheme...[제품] [아카이브(Archive)]는 [빌드 설정(Build Configuration)]를 선택합니다.값이 예상과 다르면 값을 변경합니다.

주의: 베이스 프로젝트와 어플리케이션에 내장된 PhoneGap .xcodeproj 파일 모두에 대해 다음 절차를 수행해야 합니다.

네, PhoneGap을 내장하고 있습니다.이러한 업데이트는 매우 빈번하게 갱신되고 있습니다.또한 기능이 감가상각된 것을 알 수 있는 기간은 2개월도 채 되지 않았습니다.

배포 대상을 armv6 프로세서보다 높은 것으로 변경해 보십시오.xCode 설정은 운영 체제 수준을 참조합니다(예: iOS 버전 #{3.1, 3.2, 4.0, 4.1, 4.2, 4.3, 5.0, 5.1).

(i) 빌드 설정 탭 또는 요약 탭에서 설정할 수 있습니다.프로젝트 탐색기에서 창의 왼쪽 위에서 모든 파일이 나열된 상태로 시작합니다.맨 위에 파란색 아이콘이 있는 아이콘을 클릭합니다.

(ii) openGL ES 2.0 API를 통해 액세스 및 제어되는 프로그램 가능한 셰이더 회선 회로를 사용할 예정이라면 "Deployment Version"을 약 4.3으로 설정해야 합니다.이것은 3GS 이후 디바이스에서만 사용할 수 있다고 생각합니다.xCode는 iOS 4.2.5 이상이 armv7 코드를 실행해야 한다고 보고하고 있습니다.다시 한번 말씀드리지만, 이 프로세서는 3GS** iOS 4.3으로 시작했다고 생각합니다.현재로서는 이 프로세서를 선택하는 것이 좋을 것 같습니다.

http://theiphonewiki.com/wiki/index.php?title=Armv7

http://en.wikipedia.org/wiki/List_of_iOS_devices

xCode가 armv7에 대해 계속 불만을 제기하는 경우 연결 장치(특히 iPhone 5!!)를 모두 분리한 후 다시 시도하십시오.그 작은 정보를 알아내는데 몇 시간이나 걸렸어요

Snow Leopard에서 Xcode 4.2를 사용하여 armv6 (Iphone 3G 이하)와 armv7 (3GS를 포함한 3G보다 새로운 모든 것)에서 동작하는 앱을 작성했습니다.

아키텍처: armv6 및 armv7 (삭제된 $(ARCS_STANDARD_32_B)IT)
액티브한 아키텍처만 구축: 없음
필요한 디바이스 기능: armv6

앱을 3G 이하로 실행하려면 armv7을 필요한 장치 기능에 넣지 마십시오.

언급URL : https://stackoverflow.com/questions/4198676/warning-iphone-apps-should-include-an-armv6-architecture-even-with-build-conf

반응형