mac m1 运行老项目

 

1. Homebrew 国内下载失败

  使用 /bin/zsh -c "$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/master/Homebrew.sh)" 选择你想要的镜像源

2.  m1 或 m2 芯片  项目启动报 Command Ld failed with a nonzero exit code

 

   解决方式:

  • 使用兼容模式运行Xcode;

  1. 完全退出Xcode;

  2. 在Finder -> 应用程序 -> Xcode,找到Xcode;

  3. 在Xcode上右键出菜单栏,找到“显示简介”点击打开;

  4. 找到打开“使用Rosetta打开”;

          注意:打完包后不要忘记将xcode改为M1下运行,也就是将“使用Rosetta打开”勾掉,因为使用Rosetta的话是将应用改为在inter的x86下兼容运行,会导致编译速度变慢。

 

3.   `fsevents` unavailable (this watcher can only be used on Darwin)

   原因 :watchman 没有安装成功 ,watchman 没安装成功 很可能是 Homebrew安装的有问题
    步骤1 :brew -v  查看有没有报错

       

 

 

 

       根据提示 :运行下面俩行代码
          a. git config --global --add safe.directory /opt/homebrew/Library/Taps/homebrew/homebrew-cask

          b. git config --global --add safe.directory /opt/homebrew/Library/Taps/homebrew/homebrew-core

  

4、m2 + xcode 14.3 问题
  问题一:

    错误信息:

      a、ReactNativePageView.h:11:42: error: expected a type

      b、ReactNativePageView.h:15:32: error: unknown type name 'RCTEventDispatcher'

    解决:在文件 s-u-a-0.66.4/node_modules/@react-native-community/viewpager/ios/ReactNativePageView.h文件中添加  #import <React/RCTEventDispatcher.h>

  问题二:

    错误信息:

      In /Users/name/works/app/项目名称/ios/Pods/BaiduMapKit/BaiduMapKit/thirdlibs/libcrypto.a(cryptlib.o), building for iOS Simulator, but linking in object file built for iOS, file '/Users/name/works/app/项目名称/ios/Pods/BaiduMapKit/BaiduMapKit/thirdlibs/libcrypto. a' for architecture arm64

    解决办法:

       xcode14后:
        苹果在xcode的简介里没有了这个选项 Rosetta 

        但我们可以选择Rosetta的模拟器

        步骤:xcode打开项目->Product-> Destination-> Destination Architecturesk 可以选择用哪种模式的模拟器打开。
            我们选择 (Rosetta)结尾的模拟器即可。
          

                       

                       

 

 



  

 

posted @ 2022-10-18 18:29  zhengyan_web  阅读(331)  评论(0编辑  收藏  举报