RxSwiftをCarthageで入れたら実機で起動できなかったので、RxRelayも追加して解決した
RxSwiftとRxCocoaを追加後、ビルドはサクセスするのですが、実機で動作確認ししようとすると以下のエラーで落ちてしまいました。
dyld: Library not loaded: @rpath/RxRelay.framework/RxRelay
Referenced from: /var/containers/Bundle/Application/xxxxxxx-xxxx-xxxx-xxxx-477EBE5CC202/xxx.app/xxx
Reason: image not found
今回の解決方法は、RxRelayも追加することでした。
RxSwiftライブラリをビルドすると、以下の5つのフレームワークが生成されます。
- RxSwift
- RxCocoa
- RxRelay
- RxBlocking
- RxTest
RxSwift, RxCocoaのみXcodeで追加すれば良いと思っていたのですが、どうやらRxRelayも必要みたいですね🤔
TARGETS -> General -> LinkedFrameworks and Libraries
にRxRelayも追加し、
Build Phases の Input Files Lists, Output Files Lists にも追記しました。
$(SRCROOT)/Carthage/Build/iOS/RxSwift.framework
$(SRCROOT)/Carthage/Build/iOS/RxCocoa.framework
$(SRCROOT)/Carthage/Build/iOS/RxRelay.framework
$(BUILT_PRODUCTS_DIR)/$(FRAMEWORKS_FOLDER_PATH)/RxSwift.framework
$(BUILT_PRODUCTS_DIR)/$(FRAMEWORKS_FOLDER_PATH)/RxCocoa.framework
$(BUILT_PRODUCTS_DIR)/$(FRAMEWORKS_FOLDER_PATH)/RxRelay.framework
以上で、無事に実機での動作確認を行えるようになりました。
Author And Source
この問題について(RxSwiftをCarthageで入れたら実機で起動できなかったので、RxRelayも追加して解決した), 我々は、より多くの情報をここで見つけました https://qiita.com/Riscait/items/74b40864218b4fe31e95著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .