

### やりたいこととできないこと

現在、IntelMacで正常に動作しているswiftのプロジェクトをM1Macでも動作させようとしています。

M1macでもRereaseモードではビルドが通りますが、DebugモードだとFirebaseClasyliticsがimportできずNo such
module 'FirebaseCrashlytics'というエラーが発生します。  
FirebaseClashliticsを導入するにあたって、Fablicから移行したので公式の[この記事](https://firebase.google.com/docs/crashlytics/upgrade-
sdk#the_library_is_now_called_firebasecrashlytics)を参考にしました。

またimport FirebaseClashliticsをコメントアウトした状態で、再ビルドすると次は別ファイルのimport Alamofireの行でNo
such module Alamofireとなりこのような感じでコメントアウトを続けていくと他のライブラリでもNo such module
module名となることがわかりました。  
予測変換でもimportの次はデフォルトで用意されているUIkitやFoundation以外は表示されていないこともわかりました。

### 実施した手順とその結果

根本的な解決策は分からなかったので、下記のような対処をしました。

  1. クリーンビルド
  2. Xcode再起動
  3. Mac再起動
  4. DerivedDataの削除 
[code]    rm -rf ~/Library/Developer/Xcode/DerivedData/*

    
[/code]

  5. キャッシュの削除 
[code]    $ rm -rf ~/Library/Caches/CocoaPods/

    $ rm -rf Pods
    $ pod install
    
[/code]

  6. podfile.lockの削除後にpod install
  7. App.xcworkspaceを削除後、pod installで再度作り直し
  8. [この記事](https://qiita.com/sensuikan1973/items/622349887c411d45242d)を参考にして 
[code]    pod deintegrate

    pod install
    
[/code]

  9. [この記事](https://qiita.com/nkekisasa222/items/716b2b525280ef602fb8)を参考にして  
Product/Scheme/ManageSchemes/を選択し、全ての項目のshowとsharedにチェックをつけてCloseをクリック。

このような一般的な対処法を一通り試してみましたが、No such module 'module'は消えませんでした。

### 何を・どのように調べたのか

上記を解決するために、以下のキーワードで検索し上の８、９のような記事が出てきました。

・swift no such module

### やりたくない対処法

業務で動いているソースでかつIntelmacとM1のリリースモードであれば正常に動作するので、既存コードの変更はできるだけしたくありません。

この問題を解決するにあたって何かアドバイスがあればよろしくお願いします。

**環境**

  1. MacBook Air Mid2013 Intel,8GB  
Catalina  
Xcode12.4

  2. MacBook Air (M1, 2020)M1,16GB  
BigSur  
Xcode12.5

## podfile

[code]

    # Uncomment the next line to define a global platform for your project
    # platform :ios, '9.0'
    
    target 'App' do
      # Comment the next line if you're not using Swift and don't want to use dynamic frameworks
      use_frameworks!
    
      # Pods for App
      pod 'Alamofire', '~> 4.7'
      pod 'RealmSwift', '~> 3.21'
      pod 'DeployGateSDK'
      pod 'ZXingObjC', '~> 3.2.2'
      pod 'Firebase/Core'
      pod 'Firebase/RemoteConfig'
      pod 'Firebase/Analytics'
      pod 'Firebase/Crashlytics'
      pod 'SwiftFormat/CLI'
      post_install do |installer|
        installer.pods_project.targets.each do |target|
          target.build_configurations.each do |config|
            config.build_settings['EXCLUDED_ARCHS[sdk=iphonesimulator*]'] = 'arm64' if target.name.include?('Realm')
          end
        end
      end
      target 'AppTests' do
        inherit! :search_paths
        # Pods for testing
      end
    
      target 'AppUITests' do
        inherit! :search_paths
        # Pods for testing
      end
    end
    
[/code]


CC BY-SA 4.0
2021-05-16T15:59:47.893
75878
2021-05-18T23:59:33.070
2021-05-17T00:06:00.893
3060
36424
question
swift
Xcode,Swift M1macのデバックモードのみ、No such module 'module'というエラーが発生する。


以下の記事を参考にして、podfileの設定をシュミレータービルドの際にrealmだけでなく本体のプロジェクトごとarm64から除外する設定に変更すると動作しました。

[[XCode, M1] no such module in
simulator](https://qiita.com/Almond_0707/items/8453bc014e61b719c47c)

また、こちらの記事も大変参考になりました。

[Xcode
12でシミュレータを対象にビルドできない場合やること](https://zenn.dev/yimajo/articles/7e275bc23999fe7d8b87)


CC BY-SA 4.0
2021-05-18T21:16:26.797
75940
2021-05-18T23:59:33.070
2021-05-18T23:59:33.070
3060
36424
75878
answer