2014-08-29 10 views
0

그래서 감옥 응용 프로그램을 만들고 응용 프로그램에서 libMobileGestalt.dylib를 사용하려고합니다. 파일을 올바르게 연결하고 헤더를 추가하고 MGCopyAnswer를 호출합니다. 문제는 내가이 오류를 얻을 수 있습니다 :아키텍처에 대한 정의되지 않은 기호 armv7 : "_MGCopyAnswer", 해결할 수 없음

Undefined symbols for architectures armv7: "_MGCopyAnswer", referenced from: 

앱을하는 ARMv7 아키텍처를 구축 할 때이 오류가 발생합니다. arm64 아키텍처가 사용되는 경우에는 발생하지 않습니다. 이 문제는 arm64 아키텍처로 제작 된 dylib로 인해 발생하지만, armv7 아키텍처로 작동하여 앱이 더 넓은 범위의 장치와 호환 될 수 있기를 바랍니다.

dylib의 armv7 아키텍처 버전을 얻을 수있는 곳이 있습니까? 아니면 해당 아키텍처를 포함하여 다시 빌드 할 수 있습니까? 아무도 알고있는 이것에 대한 해결책이 있습니까? 사전에 도와 주셔서 감사합니다.

+0

libMobileGestalt 프로젝트에 대한 링크를 제공하면 도움이 될 것입니다 ... 직접 작성한 경우 * 일반적으로 컴파일의 간단한 문제입니다. 그것과 함께 armv7 지원 –

+0

@ brad-allred 아니오 ios sdk .../iPhoneOS7.0.sdk/usr/lib/폴더에서 제공되는 dylib가 아닙니다. 그 이유는 그 라이브러리를 내 프로젝트에 연결할 수 있어야하기 때문에 탈옥 애플리 케이션을 만드는 것이고 정상적인 것을 만드는 것이 아닙니다. 그리고 그것은 단지 라이브러리이기 때문에 다시 만들 수 없습니다. 나 또한 클래스 덤프 과정에서 헤더 파일을 얻었다. 이 파일은 다음에서 찾을 수 있습니다. [link] (https://github.com/Cykey/ios-reversed-headers/blob/master/MobileGestalt/MobileGestalt.h) –

답변

0

나는 해결책을 발견했다. 오류가 발생하는 이유는 내가 만든 dylib를 가능하지 않은 정적 라이브러리에 연결했기 때문에 정적 라이브러리를 사용하여 만든 모든 프로젝트에이 dylib를 연결해야했습니다 (turn은 동적 라이브러리를 사용합니다). 이것이 도움이 되었으면 좋겠습니다 :

0

당신은 당신이 필드를 을 유형 "libMobileGestalt.dylib"를 검색 참조하고 추가 할 때

후 새로운 바이너리 을 추가

페이즈 및 링크 바이너리와 라이브러리를 빌드 대상 에서 libMobileGestalt 을 가져와야합니다

+0

나는 이미 그 일을 아무 소용이 없습니다. –