在Mac 上安装flutter 遇到的问题

准备工作

1、升级Macos系统为最新系统
2、安装最新的Xcode
3、电脑上面需要安装brew https://brew.sh/
4、安装chrome浏览器(开发web用)

下载Flutter、配置Flutter环境变量、配置Flutter镜像

下载Flutter SDK

https://docs.flutter.dev/release/archive?tab=macos
在这里插入图片描述
根据自己的电脑选择arm64或x64

  1. 查看CPU型号:可以通过查看CPU型号来区分CPU是ARM还是X86,ARM的CPU型号一般以“ARM”开头,而X86的CPU型号一般以“Intel”或“AMD”开头。

  2. 查看指令集:可以通过查看CPU支持的指令集来区分CPU是ARM还是X86,ARM支持的指令集一般是ARM指令集,而X86支持的指令集一般是x86指令集。

可以通过下面的命令查询:uname -a

~ % uname -a
Darwin PhoenixdeMBP 22.6.0 Darwin Kernel Version 22.6.0: Wed Jul  5 22:22:05 PDT 2023; root:xnu-8796.141.3~6/RELEASE_ARM64_T6000 arm64

把下载好的Flutter SDK随便减压到你想安装Sdk的目录如
/Users/phoenix/Documents/flutter_sdk/flutter

把 Flutter安装目录的bin目录配置到环境变量,然后把Flutter国内镜像也配置到环境变量里面

vim ~/.bash_profile
vim ~/.zshrc
export PATH=/Users/phoenix/Documents/flutter_sdk/flutter/bin:$PATH
export PUB_HOSTED_URL=https://pub.flutter-io.cn
export FLUTTER_STORAGE_BASE_URL=https://storage.flutter-io.cn			

里面的/Users/phoenix/Documents/flutter_sdk/flutter/bin,需要改为自己电脑的。在输入环境变量的时候,默认情况下是不可输的,需要按下ℹ️键,才可以输入。输入完成过后按下esc键、:键,输入wq退出。让配置环境变量生效。

flutter --version 如果能出来版本说明flutter sdk配置成功。
注意:如果配置完成后输入flutter --version告诉你flutter不是内置命令之类的错误的话,可能sdk没有配置成功,也可能sdk下载的时候没有下载全

运行flutter doctor 命令检测环境

第一次运行 flutter doctor的时候会提示下面错误

~ % flutter doctor

You have not agreed to the Xcode license agreements, please run 'sudo xcodebuild -license' from within a Terminal window to review and agree to the Xcode license agreements.
Building flutter tool...
Resolving dependencies... 
Got dependencies.
Failed to find the latest git commit date: VersionCheckError: Command exited with code 69: git -c log.showSignature=false log HEAD -n 1 --pretty=format:%ad --date=iso
Standard out: 
Standard error: 
You have not agreed to the Xcode license agreements, please run 'sudo xcodebuild -license' from within a Terminal window to review and agree to the Xcode license agreements.

Returning 1970-01-01 08:00:00.000 instead.
Doctor summary (to see all details, run flutter doctor -v):
[!] Flutter (Channel [user-branch], 0.0.0-unknown, on macOS 13.5.1 22G90
    darwin-arm64, locale zh-Hans-CN)
    ! Flutter version 0.0.0-unknown on channel [user-branch] at
      /Users/phoenix/Documents/flutter_sdk/flutter
      Currently on an unknown channel. Run `flutter channel` to switch to an
      official channel.
      If that doesn't fix the issue, reinstall Flutter by following instructions
      at https://flutter.dev/docs/get-started/install.
      Cannot resolve current version, possibly due to local changes.
      Reinstall Flutter by following instructions at
      https://flutter.dev/docs/get-started/install.
    ! Upstream repository unknown source is not a standard remote.
      Set environment variable "FLUTTER_GIT_URL" to unknown source to dismiss
      this error.
[] Android toolchain - develop for Android devices
    ✗ Unable to locate Android SDK.
      Install Android Studio from:
      https://developer.android.com/studio/index.html
      On first launch it will assist you in installing the Android SDK
      components.
      (or visit https://flutter.dev/docs/get-started/install/macos#android-setup
      for detailed instructions).
      If the Android SDK has been installed to a custom location, please use
      `flutter config --android-sdk` to update to that location.

[!] Xcode - develop for iOS and macOS (Xcode 14.3.1)Xcode end user license agreement not signed; open Xcode or run the command
      'sudo xcodebuild -license'.Xcode requires additional components to be installed in order to run.
      Launch Xcode and install additional required components when prompted or
      run:
        sudo xcodebuild -runFirstLaunch
    ✗ CocoaPods not installed.
        CocoaPods is used to retrieve the iOS and macOS platform side's plugin
        code that responds to your plugin usage on the Dart side.
        Without CocoaPods, plugins will not work on iOS or macOS.
        For more info, see https://flutter.dev/platform-plugins
      To install see
      https://guides.cocoapods.org/using/getting-started.html#installation for
      instructions.
[] Chrome - develop for the web
[!] Android Studio (not installed)
[] VS Code (version 1.80.0)
Error executing simctl: 69

You have not agreed to the Xcode license agreements, please run 'sudo xcodebuild
-license' from within a Terminal window to review and agree to the Xcode license
agreements.


[] Connected device (2 available)
[!] Network resources             
    ✗ An HTTP error occurred while checking "https://github.com/": Connection
      closed before full header was received

! Doctor found issues in 5 categories.

这里如果这里没有安装 brew 的需要安装,安装方法可以参考
https://editor.csdn.net/md/?articleId=132603606

分根据报错信息分别执行下面命令

brew install cocoapods
pod setup
sudo xcodebuild -runFirstLaunch

在执行:brew install cocoapods报错

~ % brew install cocoapods
Error: You have not agreed to the Xcode license. Please resolve this by running:
  sudo xcodebuild -license accept

在这里是因为Xcode没有打开激活,只需要,打开Xcode,同意各种协议,即可在终端安装应用程序了。

依次执行:

brew install cocoapods
pod setup
sudo xcodebuild -runFirstLaunch

这次brew install cocoapods 成功了

再次执行:~ % flutter doctor 遇到下面的问题

An HTTP error occurred while checking "https://github.com/": Connection
      closed before full header was received

后面翻墙再次执行~ % flutter doctor

~ % flutter doctor
Doctor summary (to see all details, run flutter doctor -v):
[] Flutter (Channel stable, 3.13.2, on macOS 13.5.1 22G90 darwin-arm64, locale
    zh-Hans-CN)
[] Android toolchain - develop for Android devices
    ✗ Unable to locate Android SDK.
      Install Android Studio from:
      https://developer.android.com/studio/index.html
      On first launch it will assist you in installing the Android SDK
      components.
      (or visit https://flutter.dev/docs/get-started/install/macos#android-setup
      for detailed instructions).
      If the Android SDK has been installed to a custom location, please use
      `flutter config --android-sdk` to update to that location.

[] Xcode - develop for iOS and macOS (Xcode 14.3.1)
[] Chrome - develop for the web
[!] Android Studio (not installed)
[] VS Code (version 1.80.0)
[] Connected device (2 available)
[] Network resources

! Doctor found issues in 2 categories.

最后一个报错android studio官网下载软件就可以了
https://developer.android.google.cn/studio/

% flutter doctor                   
Doctor summary (to see all details, run flutter doctor -v):
[] Flutter (Channel stable, 3.13.2, on macOS 13.5.1 22G90 darwin-arm64, locale
    zh-Hans-CN)
[] Android toolchain - develop for Android devices (Android SDK version 34.0.0)
[] Xcode - develop for iOS and macOS (Xcode 14.3.1)
[] Chrome - develop for the web
[] Android Studio (version 2022.3)
[] VS Code (version 1.80.0)
[] Connected device (2 available)
[] Network resources

• No issues found!

你认真做好一件事,会解释所有事。O(∩_∩)O

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/101303.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Spring Cloud--从零开始搭建微服务基础环境【二】

😀前言 本篇博文是关于Spring Cloud–从零开始搭建微服务基础环境【二】,希望你能够喜欢 🏠个人主页:晨犀主页 🧑个人简介:大家好,我是晨犀,希望我的文章可以帮助到大家,…

vue中使用window.open打开assets文件夹下的pdf文件

需求:系统有个操作手册,点击会在浏览器新开个窗口并打开pdf文件。这个pdf文件存储在本地assets文件夹中。 文件结构: 注:直接使用window.open(文件路径)不能打开,需要在vue.config.js中配置所需文件 引入图中红框中的…

YOLOV8模型使用-检测-物体追踪

这个最新的物体检测模型,很厉害的样子,还有物体追踪的功能。 有官方的Python代码,直接上手试试就好,至于理论,有想研究在看论文了╮(╯_╰)╭ 简单介绍 YOLOv8 中可用的模型 YOLOv8 模型的每个类别中有五个模型用于检…

从零开始,探索C语言中的字符串

字符串 1. 前言2. 预备知识2.1 字符2.2 字符数组 3. 什么是字符串4. \04.1 \0是什么4.2 \0的作用4.2.1 打印字符串4.2.2 求字符串长度 1. 前言 大家好,我是努力学习游泳的鱼。你已经学会了如何使用变量和常量,也知道了字符的概念。但是你可能还不了解由…

html5——前端笔记

html 一、html51.1、理解html结构1.2、h1 - h6 (标题标签)1.3、p (段落和换行标签)1.4、br 换行标签1.5、文本格式化1.6、div 和 span 标签1.7、img 图像标签1.8、a 超链接标签1.9、table表格标签1.9.1、表格标签1.9.2、表格结构标签1.9.3、合并单元格 1.10、列表1.10.1、ul无序…

大数据Flink实时计算技术

1、架构 2、应用场景 Flink 功能强大,支持开发和运行多种不同种类的应用程序。它的主要特性包括:批流一体化、精密的状态管理、事件时间支持以及精确一次的状态一致性保障等。在启用高可用选项的情况下,它不存在单点失效问题。事实证明&#…

【Python】从入门到上头— IO编程(8)

文章目录 一.IO编程是什么二.文件读写1.读取文件2.file-like Object二进制文件字符编码 3.写文件file对象的常用函数常见标识符 三.StringIO和BytesIO1.StringIO2.BytesIO 四.操作文件和目录五.序列化和反序列化1.pickle.dumps()2.pickle.loads()3.JSON 一.IO编程是什么 IO在计…

38、springboot为 spring mvc 提供的静态资源管理,覆盖和添加静态资源目录

springboot为 spring mvc 提供的静态资源管理 ★ Spring Boot为Spring MVC提供了默认的静态资源管理: ▲ 默认的四个静态资源目录: /META-INF/resources > /resources > /static > /public ▲ ResourceProperties.java类的源代码&#xff0…

SparkCore

第1章 RDD概述 1.1 什么是RDD RDD(Resilient Distributed Dataset)叫做弹性分布式数据集,是Spark中最基本的数据抽象。代码中是一个抽象类,它代表一个弹性的、不可变、可分区、里面的元素可并行计算的集合。 RDD类比工厂生产。 …

十一、MySQL(DQL)聚合函数

1、聚合函数 注意:在使用聚合函数时,所有的NULL是不参与运算的。 2、实际操作: (1)初始化表格 (2)统计该列数据的个数 基础语法: select count(字段名) from 表名; ;统…

DevEco Studio 配置

首先,打开deveco studio 进入首页 …我知道你们想说什么,我也想说 汉化配置 没办法,老样子,先汉化吧,毕竟母语看起来舒服 首先,点击软件左下角的configure,在配置菜单里选择plugins 进入到插件页面, 输入chinese,找到汉化插件,(有一说一写到这我心里真是很不舒服) 然后点击o…

全球免费编程教育网站:Code.org

全球免费编程教育网站:Code.org 官网地址注册使用 你还在为小朋友的编程教育而发愁吗? 你还在为小朋友放假无聊而头疼吗? 他来了他来了,全球免费编程教育网站来了。 2013年成立的Code.org是一个非营利组织。 它致力于为年轻女子、…

WireShark流量抓包详解

目录 Wireshark软件安装Wireshark 开始抓包示例Wireshakr抓包界面介绍WireShark 主要界面 wireshark过滤器表达式的规则 Wireshark软件安装 软件下载路径:wireshark官网。按照系统版本选择下载,下载完成后,按照软件提示一路Next安装。 Wire…

【流量分析】Godzilla分析

一、哥斯拉流量的特点: 1.User-Agent (弱特征) 哥斯拉客户端使用JAVA语言编写,在默认的情况下,如果不修改User-Agent,User-Agent会类似于Java/1.8.0_121(具体什么版本取决于JDK环境版本)。但是哥斯拉支持…

Python爬虫实战案例——第三例

文章中所有内容仅供学习交流使用,不用于其他任何目的!严禁将文中内容用于任何商业与非法用途,由此产生的一切后果与作者无关。若有侵权,请联系删除。 起点中文网月票榜加密字体处理 字体加密的原理:就是将一种特定的…

【图解算法数据结构】分治算法篇 + Java代码实现

文章目录 一、重建二叉树二、数值的整数次方三、打印从 1 到最大的 n 位数四、二叉搜索树的后序遍历序列五、数组中的逆序对 一、重建二叉树 public class Solution {int[] preorder;HashMap<Integer, Integer> dic new HashMap<>();public TreeNode buildTree(in…

微信开发之一键创建标签的技术实现

简要描述&#xff1a; 添加标签 请求URL&#xff1a; http://域名地址/addContactLabel 请求方式&#xff1a; POST 请求头Headers&#xff1a; Content-Type&#xff1a;application/jsonAuthorization&#xff1a;login接口返回 参数&#xff1a; 参数名必选类型说明…

Matlab(GUI程式设计)

目录 1.MatlabGUI 1.1 坐标区普通按钮 1.1.1 对齐组件 1.1.2 按钮属性 1.1.3 脚本说明 1.1.4 选择呈现 1.3 编译GUI程序 在以前的时候&#xff0c;我们的电脑还是这样的 随着科技的不断进步&#xff0c;我们的电脑也发生着翻天覆地的改变1990s&#xff1a; 在未来&#xff0c…

redis报错WRONGTYPE Operation against a key holding the wrong kind of value

在redis中我们一般存储string、list、hash类型的值&#xff0c;对应的方法分别为 db.StringGet(“key”)、db.ListRange、db.HashGetAll 如果取list类型值时使用了string的方法就会报WRONGTYPE Operation against a key holding the wrong kind of value错误。 redis-cli命令窗…

KVM虚拟化ubuntu

KVM&#xff08;Kernel-based Virtual Machine&#xff09;是一种基于Linux内核的虚拟化技术&#xff0c;它将Linux内核作为虚拟机的底层操作系统&#xff0c;利用硬件虚拟化支持创建和管理虚拟机。KVM虚拟化技术被广泛应用于云计算、虚拟化服务器、虚拟化桌面等场景。 KVM虚拟…