ike04
@ike04 (ike)

Are you sure you want to delete the question?

Leaving a resolved question undeleted may help others!

【Swift5】TabPageViewControllerのインストールができない(Carthage)

無限スクロール機能を実装したく、TabPageViewControllerというライブラリを導入したいのですがエラーが発生してしまい、導入できません。

ライブラリ管理にはCarthageを使っています。

エラー内容

[13:20:25]:~/hoge$ carthage update --platform iOS
*** Fetching TabPageViewController
*** Fetching R.swift.Library
*** Checking out R.swift.Library at "v5.2.0"
*** Checking out TabPageViewController at "0.2.7"
*** xcodebuild output can be found in /var/folders/7c/0my9x1hj0zz2j6x04jbjdnlm0000gn/T/carthage-xcodebuild.an8cjW.log
*** Building scheme "Rswift-iOS" in R.swift.Library.xcodeproj
*** Building scheme "TabPageViewController" in TabPageViewController.xcodeproj
Build Failed
    Task failed with exit code 65:
    /usr/bin/xcrun xcodebuild -project /Users/hogehoge/CurationApp/Carthage/Checkouts/TabPageViewController/TabPageViewController.xcodeproj -scheme TabPageViewController -configuration Release -derivedDataPath /Users/hogehoge/Library/Caches/org.carthage.CarthageKit/DerivedData/11.5_11E608c/TabPageViewController/0.2.7 -sdk iphoneos ONLY_ACTIVE_ARCH=NO CODE_SIGNING_REQUIRED=NO CODE_SIGN_IDENTITY= CARTHAGE=YES archive -archivePath /var/folders/7c/0my9x1hj0zz2j6x04jbjdnlm0000gn/T/TabPageViewController SKIP_INSTALL=YES GCC_INSTRUMENT_PROGRAM_FLOW_ARCS=NO CLANG_ENABLE_CODE_COVERAGE=NO STRIP_INSTALLED_PRODUCT=NO (launched in /Users/hogehoge/CurationApp/Carthage/Checkouts/TabPageViewController)

This usually indicates that project itself failed to compile. Please check the xcodebuild log for more details: /var/folders/7c/0my9x1hj0zz2j6x04jbjdnlm0000gn/T/carthage-xcodebuild.an8cjW.log
[13:32:39]:~/CurationApp$ open /var/folders/7c/0my9x1hj0zz2j6x04jbjdnlm0000gn/T/carthage-xcodebuild.an8cjW.log

ログファイルの中身は

Build settings from command line:
    CARTHAGE = YES
    CLANG_ENABLE_CODE_COVERAGE = NO
    CODE_SIGN_IDENTITY = 
    CODE_SIGNING_REQUIRED = NO
    GCC_INSTRUMENT_PROGRAM_FLOW_ARCS = NO
    ONLY_ACTIVE_ARCH = NO
    SDKROOT = iphoneos13.5
    SKIP_INSTALL = YES
    STRIP_INSTALLED_PRODUCT = NO

note: Using new build system
note: Building targets in parallel
note: Planning build
note: Constructing build description
error: SWIFT_VERSION '3.0' is unsupported, supported versions are: 4.0, 4.2, 5.0. (in target 'TabPageViewController' from project 'TabPageViewController')
error: SWIFT_VERSION '3.0' is unsupported, supported versions are: 4.0, 4.2, 5.0. (in target 'TabPageViewController' from project 'TabPageViewController')

となっております。

試したこと

XcodeのProjectとTargetのSwift Language versionを全て「Swift 5」に設定し、再度実行しましたが変わりませんでした。

このライブラリはSwift 5では使えないのでしょうか・

また、使えないのであれば、代わりとなるライブラリを教えていただけると幸いです:bow:

0

1Answer

@ike04
ライブラリの Swift と iOS SDK のバージョンの違いでビルドでエラーになっているみたいですね。

ソースコードの最終更新が 2017 年で止まっていること、直近の Issue や Pull requests が放置されていることなどを考慮すると、プロダクトへの導入は気をつけたほうが良さそうです。


Pull Request #108 で Xcode 11 と Swift 5 に対応したプルリクエストは出されているので、マージされれば Carthage のビルドエラーは解決されると思います。リポジトリのコントリビューターに連絡してマージをお願いするのが正攻法ですね。

正攻法ではない方法でいくと、上記のプルリクエストのコミットを Carthage で使うこともできます。

Cartfile
- github "EndouMari/TabPageViewController"
+ github "hlkim/TabPageViewController" "1cc3000e725d82f5ff20d9b0adeefdcf548e9178"

これで Carthage のビルドエラーは回避できると思います。


環境

  • Xcode Version 11.6 (11E708)
  • Apple Swift version 5.2.4 (swiftlang-1103.0.32.9 clang-1103.0.32.53)
0Like

Comments

  1. @ike04

    Questioner

    @takehito-koshimizu
    ご回答ありがとうございます。

    おかげさまで、ビルドすることができました!

Your answer might help someone💌