macos (M2芯片)搭建flutter环境

安装的版本3.13.4、电脑上没有安装过android studio、安装过brew

1.在终端运行sudo softwareupdate --install-rosetta --agree-to-license,下图展示安装成功的效果

在这里插入图片描述

2.下载以下安装包来获取最新的 stable Flutter SDK

在这里插入图片描述

3.解压,⚠️注意下载安装sdk的包名可能和文档名字不一样注意修改

选择自己的文件夹,切换目录到选择的文件夹下面
在这里插入图片描述
需要根据官网配置一下flutter环境变量

3.1配置flutter环境变量 如果只配置下面三项,第一项不配置还是会显示找不到flutter命令
vim ~/.bash_profile
export FLUTTER_ROOT=你的flutter安装目录//注意我的是只配置下面不太行
export PATH=你的flutter安装目录/bin:$PATH
export PUB_HOSTED_URL=https://pub.flutter-io.cn
export FLUTTER_STORAGE_BASE_URL=https://storage.flutter-io.cn

如果还不行,就去网上搜索一下吧

4.运行flutter doctor出现下面报错问题

在这里插入图片描述

4.1android studio开发环境搭建

1)需要去下载android sdk 安装android studio,选择custom一路next
2)安装完之后再次运行 flutter doctor ,出现下面的错误
在这里插入图片描述
3)打开Android studio 找到如下设置、安装command-line(可能下载的版本不一样位置也不一样,可以网上搜一下)
在这里插入图片描述
4)再次执行flutter doctor
在这里插入图片描述
5)执行下面命令,然后会出现多次选项,你只要输入y就可以了

flutter doctor --android-licenses

6)再次执行flutter doctor ,至此,android studio 开发环境搭建完成✅
在这里插入图片描述

4.2 解决CocoaPods not installed. 🔗安装教程

1)CocoaPods的安装需要Ruby环境,Mac系统都自带Ruby,通过终端命令查看Ruby版本:

ruby -v

⚠️注意:安装时候ruby的版本是2.6以上的但是最后进行安装的时候还是出现了版本不够的问题,根据自己需要
2)更换Ruby镜像
Ruby默认的源地址是国外网络地址,通过下面终端命令查看当前镜像地址:

gem sources -l

在这里插入图片描述
3)移除当前镜像

gem sources --remove https://rubygems.org/

在这里插入图片描述
4)添加国内ruby镜像

gem sources -a https://gems.ruby-china.com/

在这里插入图片描述

5)检查镜像是国内镜像,开始安装CocoaPods、踩坑开始

sudo gem install cocoapods 

在这里插入图片描述

6)可能遇到版本过低或者没有权限,可以尝试把sudo去掉 在后面添加 --user-install, 不好用,不建议使用,试过了没有解决我的问题,如果有需要也可以尝试一下;是通过brew更新的

7)通过brew 更新ruby的版本
查看ruby的版本 ,然后安装最新版本

brew search ruby
brew install ruby@3.0

配置ruby的运行环境

echo 'export PATH="/opt/homebrew/opt/ruby@3.0/bin:$PATH"' >> ~/.zshrc
export LDFLAGS="-L/opt/homebrew/opt/ruby@3.0/lib"
export CPPFLAGS="-I/opt/homebrew/opt/ruby@3.0/include"

刷新当前shell环境

 source ~/.zshrc

8)查看已经安装的版本 (由于权限问题虽然也安装上了,但是没有解决问题,需要进行删除)

gem list --local | grep cocoapods

删除自己有关cocoapods包的内容,只是写了一个,其它没一一展示

sudo gem uninstall cocoapods-deintergate 

9)重新安装

sudo gem install -n /usr/local/bin cocoapods

在这里插入图片描述

10)运行flutter doctor,问题解决

在这里插入图片描述

4.3解决maven.goole.com报错

在这里插入图片描述

const String kMaven = 'http://maven.aliyun.com/nexus/content/groups/public/';
4.4解决github.com报错

在这里插入图片描述

git config --global http.proxy http://127.0.0.1:7890
git config --global https.proxy http://127.0.0.1:7890

解决以上问题,flutter环境就搭建好了,如果还有其他问题可能就需要自行上网搜索一下
参考链接:
M1芯片搭建:https://juejin.cn/post/7035985832196440071
解决flutter更新环境变量配置问题:
https://blog.csdn.net/sunbinkang/article/details/106918956
解决4.3、4.4问题:
https://blog.csdn.net/xo19882011/article/details/131386094#:~:text=%5B%21%5D%20Network%20resources%20%E2%9C%97%20A%20cryptographic%20error%20occurred,may%20have%20malware%20installed%20on%20your%20computer.%201

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

坚鹏:浙江农商联合银行同业核心产品解读与差异化分析培训第7期

浙江农商联合银行同业核心产品解读与差异化分析培训第7期 1952年,浙江第一家农村信用社成立。2004年4月18日,浙江省农信联社成立,承担对全省农信社的管理、指导、协调和服务职能。2021年10月,经国务院批准同意、银保监会批复&…

Python 计算机二级知识点整理 模拟考试2

1. 2. 一个进程正在等待某一事件的发生而暂时停止执行时,在这种状态下,即使把CPU等资源分配给它,该进程也不能运行,即处于等待状态,又称为阻塞状态或封锁状态。 3. 4, 成功将一个元素退队就证明是之前循环…

【【萌新的FPGA学习之Vivado下的仿真入门-2】】

萌新的FPGA学习之Vivado下的仿真入门-2 我们上一章大概了解了 我们所需要进行各项操作的基本框架 对于内部实现其实一知半解 我们先从基本的出发 但从FPGA 了解一下 vivado下的仿真入门 正好帮我把自己的riscV 波形拉一下 行为级仿真 step1: 进入仿真界面:SIMULAT…

多语言环境系统下的京东商品详情API接口的调用参数详解

获得JD商品详情 API jd.item_get 参数说明 通用参数说明 url说明 https://api-gw.…….cn/平台/API类型/ 平台:淘宝,京东等, API类型:[item_search,item_get,item_search_shop等]version:API版本key:调用key,测试key:test_api_keysecret:调用…

STViT-R 代码阅读记录

目录 一、SwinTransformer 1、原理 2、代码 二、STViT-R 1、中心思想 2、代码与原文 本次不做具体的训练。只是看代码。所以只需搭建它的网络,执行一次前向传播即可。 一、SwinTransformer 1、原理 主要思想,将token按区域划分成窗口&#xff0c…

五笔字根-还有什么是你不懂的

前言 拼音打字永久了,提笔忘字,遇到不认识的就拼不出来,用GPT也不行,你都拼不上去,这不是个好习惯,所以趁此机会学一学五笔输入法。 学习是锻炼大脑的最好方法。 文章目录 前言五笔字根口诀五笔字根口诀…

openGauss学习笔记-73 openGauss 数据库管理-创建和管理索引

文章目录 openGauss学习笔记-73 openGauss 数据库管理-创建和管理索引73.1 背景信息73.2 操作步骤73.2.1 创建索引73.2.2 修改索引分区的表空间73.2.3 重命名索引分区73.2.4 查询索引73.2.5 删除索引73.2.6 创建索引的方式73.2.6.1 创建普通索引73.2.6.2 创建多字段索引73.2.6.…

国家开放大学 考试试题训练

经济数学基础 参考 试题 导数基本公式: 积分基本公式: c0 ∫0dxc xaaxa-1 ∫xadxxa1a1c(a≠-1) axaxlna(a>0且a≠1) …

【R语言】完美解决devtools安装GitHub包失败的问题(以gwasglue为例)

Rstudio,R4.3.1,命令在Rstudio的命令行即console中运行。 文章目录 一、问题复述二、分析三、解决四、安装示例:gwasglue 一、问题复述 使用devtools安装一个github的包。 devtools: devtools 是 R 语言中一个非常有用的包&…

VS2019创建GIt仓库时剔除文件或目录

假设本地有解决方案“SomeSolution” 1、首先”团队资源管理器“-“创建Git存储库”,选择“仅限本地”、“创建” VS会在解决方案目录下自动生成.gitattributes、.gitignore 2、编辑gitignore,直接拖到VS里或者用记事本打开。添加要剔除的文件或文件夹…

java面向对象(九)

文章目录 一、abstract的应用举例二、接口的使用1.概念2.代码案例 三、try-catch-finally使用步骤1.注意点2.finally注意点 四、异常处理的方式二:throws 异常类型1.如图所示:2.代码如下: 提示:以下是本篇文章正文内容&#xff0…

2021年电工杯数学建模A题高铁牵引供电系统运行数据分析及等值建模求解全过程论文及程序

2021年电工杯数学建模 A题 高铁牵引供电系统运行数据分析及等值建模 原题再现: 我国是世界上电气化铁路运营里程最长、服役电力机车型号最多、运营最繁忙的国家。截至 2020 年底,我国铁路年消耗电量约 800 亿千瓦时,约占三峡年总发电量的 8…

软件的开发步骤,需求分析,开发环境搭建,接口文档 ---苍穹外卖1

目录 项目总览 开发准备 开发步骤 角色分工 软件环境 项目介绍 产品原型 技术选型 开发环境搭建 前端:默认已有 后端 使用Git版本控制 数据库环境搭建 前后端联调 ​登录功能完善 导入接口文档 使用swagger​ 和yapi的区别 常用注解 项目总览 开发准备 开发步骤…

工具篇 | Gradle入门与使用指南

介绍 1.1 什么是Gradle? Gradle是一个开源构建自动化工具,专为大型项目设计。它基于DSL(领域特定语言)编写,该语言是用Groovy编写的,使得构建脚本更加简洁和强大。Gradle不仅可以构建Java应用程序&#x…

【Redis】深入探索 Redis 的哨兵(Sentinel)机制原理,基于 Docker 模拟搭建 Redis 主从结构和哨兵分布式架构

文章目录 一、对 Redis Sentinel 的认识1.1 什么是 Redis Sentinel1.2 为什么要使用 Redis Sentinel1.2.1 主从复制问题1.2.2 人工恢复主节点故障 二、Redis Sentinel 原理剖析2.1 Redis Sentinel 架构2.2 Raft 算法和领袖节点2.3 哨兵节点2.4 故障检测2.5 故障切换2.6 监控和通…

利用大模型知识图谱技术,告别繁重文案,实现非结构化数据高效管理

我,作为一名产品经理,对文案工作可以说是又爱又恨,爱的是文档作为嘴替,可以事事展开揉碎讲清道明;恨的是只有一个脑子一双手,想一边澄清需求一边推广宣传一边发布版本一边申报认证实在是分身乏术&#xff0…

基于矩阵分解算法的智能Steam游戏AI推荐系统——深度学习算法应用(含python、ipynb工程源码)+数据集(三)

目录 前言总体设计系统整体结构图系统流程图 运行环境模块实现1. 数据预处理2. 模型构建1)定义模型结构2)优化损失函数 3. 模型训练及保存1)模型训练2)模型保存 4. 模型应用1)制作页面2)模型导入及调用3&am…

zabbix监控多实例redis

Zabbix监控多实例Redis 软件名称软件版本Zabbix Server6.0.17Zabbix Agent5.4.1Redis6.2.10 Zabbix客户端配置 编辑自动发现脚本 vim /usr/local/zabbix/scripts/redis_discovery.sh #!/bin/bash #Fucation:redis low-level discovery #Script_name redis_discovery.sh red…

【操作系统】实验一 Linux初步

文章目录 Linux初步一、实验目的二、实验内容 Linux初步 一、实验目的 通过proc文件系统观察整个Linux内核和系统的一些重要特征,并编写一个程序,使用proc文件系统获得以及修改系统的各种配置参数。 本实验需要学生具有Linux的基本操作技能&#xff0c…

Rust常见编程概念

变量和可变性 rust使用let声明变量,变量默认是不可改变的。通过在let后面加上mut,可以声明可变变量。可以在变量名后加:和类型名,来显式声明变量类型,例如: let a:u32 1; 常量 常量使用const声明,变量名…