2014-07-08 4 views
1

나는 디지털 서명을 위해 PoDoFo를 사용하는 프로젝트를 가지고 있으므로 CTOpenSSLWrapper을 PoDoFo와 OpenSSL 라이브러리를 모두 사용하는 단일 프로젝트에 통합하려고합니다. 내가 연결로, 스피지고 문제를 빌드 할 때 그러나 : 나는 장치에서 실행하려고하면Openssl 지원으로 iOS에서 PoDoFo를 어떻게 구축합니까?

enter image description here

같은 오류가 ld: symbol(s) not found for architecture armv7으로 반복합니다.

나는 모든 것을 크로스 체크 한

: 어떤하는 .m 누락 된 파일

하지만 난 여전히위한

  1. 헤더 검색 경로
  2. 라이브러리 검색 경로
  3. Buildphases-> 소스를 컴파일을 같은 문제가있다.

    어떻게 해결할 수 있습니까?

+0

CTOpenSSLWrapper로 OpenSSL 버전을 조심하십시오. OpenSSL 1.0.1c 2012 년 5 월 10 일. 1.0.1h는 최신이며 몇 가지 심각한 취약점을 수정합니다. 또한 fat 라이브러리에 ARM64이 없습니다. – jww

답변

0

은 내가 모든 일을 크로스 체크 한 : 당신이 라이브러리 (전용 라이브러리 검색 경로를 제공)을 포함 하지 있습니다 나타납니다

1. header search paths 
2. library search paths 
3. Buildphases->compile sources for any missing .m files 

.

다음은 일반적인 라이브러리가 포함 된 모습입니다. 그것의 OpenSSL을 위해, 그러나 동일은 PoDoFo에 적용 할 것이다. 아래 예에서 iOS 용으로 빌드 된 OpenSSL은 /usr/local/ssl/ios에 있습니다. 헤더는 /usr/local/ssl/ios/include/openssl에 있으며 라이브러리는 /usr/local/ssl/ios/lib에 있습니다.

경로 :

enter image description here

도서관 : 후

enter image description here


여전히 링커 오류를 경우 추가 라이브러리를 열고 다음을 수행하여 라이브러리에 필요한 아키텍처가 있는지 확인하십시오. 예로서 OpenSSL을 사용하고 있습니다. PoDoFo 라이브러리의 이름을 사용해야합니다. 당신은 OpenSSL을 iOS 용 건설 된이,이 GitHub의 시도가 필요한 경우

Architectures in the fat file: libcrypto.a are: armv7 armv7s arm64 i386 

: noloader/openssl-1.0.1h-ios

xcrun -sdk iphoneos lipo -info libcrypto.a 

당신은 같은 것을 볼 수있다. 그것의 뚱뚱한 도서관 및 iOS를 위해 필요할지도 모른 모든 건축술이있다.

+0

명확한 설명에 감사드립니다. 내가 지정한 것들을 확인했지만 여전히 같은 문제가 있습니다. 여기에 ** 샘플 프로젝트 (https://github.com/Jagadeeshwar-Reddy/podofo_iOS_sample) **가 나와 있습니다. 문제를 조사하고 문제를 지적 할 수 있다면 , 좋을 것 같다. – Jagadeeshwar

+0

불행히도 내 컴퓨터에서 해당 라이브러리를 사용할 수 없습니다. 그래서 나는 많은 다른 실수를하게 될 것이다. – jww

+0

라이브러리는 실제로 샘플 프로젝트 자체에 포함되어 있습니다. 필자는 누락 된 라이브러리와 관련된 어떠한 오류도 없다고 생각합니다. – Jagadeeshwar