티스토리 뷰

프로젝트에는 Swift 4.2버전의 언어를 사용 중이었는데,  다음의 라이브러리를 추가하려고 시도하였다. 

https://github.com/Augustyniak/FileExplorer

 

하지만 해당 라이브러리는 Swift4.2 버전까지는 지원하지 않았기 때문에 빌드 과정에서 Syntax오류가 다수 발생하였다. 

 

기존 PodFile 내용은 다음과 같았다. 

# Podfile

target 'TestProject' do
	use_frameworks!
	pod 'FileExplorer', '~> 1.0.4'
end

이렇게만 작성하면 현재 프로젝트의 버전으로 자동으로 빌드할 것이다. 

 

그러나 FileExplorer 라이브러리는 4.2버전을 지원하지 않고, 그렇다고 프로젝트 전체 언어를 낮추기엔 무리가 있었다.

( 기존에 추가된 라이브러리들도 많이 있었고, 프로젝트 코드들도 전부 변경해주어야 했기 때문 ) 

 그래서 FileExplorer 라이브러리는 Swift 3.0버전으로 빌드 시키고 싶다. 

예외적으로 다른 버전으로 빌드하는 내용을 PodFile에 추가한다.

 

다음은 예외처리를 포함한 PodFile 내용이다.

# Podfile

target 'TestProject' do
	use_frameworks!
	pod 'FileExplorer', '~> 1.0.4'
    
    # 여기서부터
    post_install do |installer|
      installer.pods_project.targets.each do |target|
          if ['FileExplorer'].include? target.name
              target.build_configurations.each do |config|
                  config.build_settings['SWIFT_VERSION'] = '3.0'
              end
          end
      end
    end
    # 여기까지
    
end

 

내용 추가 후 터미널에서 $ pod install을 수행하면 설치가 될 것이다. 

 

** 만약! "multiple commands produce ~~ info.plist" 문구와 함께 빌드가 실패한다면

Xcode 메뉴에서 File -> WorkSpace Settings -> Build System 을 

New Build System (Default)에서 Legacy Build System 으로 변경한 뒤에 다시 빌드한다. 

(Xcode 10에서 발생하는 문제로 보인다. 정확한 이유는 잘 모르겠다.... 나중에 알아내면 추가해야겠다)

 

빌드 성공시 FileExplorer 라이브러리에서 경고가 몇개 뜨는데, 다음 경고가 눈에 띈다.

빌드 성공시 나타나는 경고 메세지 ( 3.0 버전은 다음 버전에서 Deprecated 될 것이다. Edit 메뉴에서 FileExplorer를 Swift 4.2 버전으로 옮겨라 )

이 글을 토대로 추론해보면 프로젝트 언어 버전과 라이브러리 언어 버전의 차이가 크면 이 방법으로도 사용이 불가한것으로 보여진다.

Swift 4.2에 발목이 묶인 느낌이다. 추후 5.0으로 올리려면 시간적 소요가 클 것 같다.

반응형
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함