上次配置过Mac到flutter环境,但是由于最近系统更新了,什么都没了又得从新配置,发现自己竟然好多都忘记了,看来还是得把它记下来才行

在Mac上安装并运行Flutter 最低要求:

  • 操作系统:macOS(64-bit)
  • 磁盘空间:700MB(不包括Xcode或者Android Studio的磁盘空间)
  • 工具:Flutter 依赖 这些命令行工具bash curl git 2.x mkdir rm unzip which (可以使用检测一下没有都安装上免得后期出问题)
    mac安装git可以参考https://www.jianshu.com/p/7edb6b838a2e

一、设置 Flutter 镜像

配置flutter国内镜像

// 直接到用户目录 下 运行 open -e .bash_profile 在文件中增加如下
export PUB_HOSTED_URL=https://pub.flutter-io.cn
export FLUTTER_STORAGE_BASE_URL=https://storage.flutter-io.cn

注意这个镜像地址不能保证永远可以用,得随时关注Useing Flutter in China这个官网

二、获取Flutter SDK

2.1 下载flutter sdk

flutter官网获取对应得flutter sdk https://flutter.dev/docs/development/tools/sdk/releases?tab=macos

推荐最好下载 stable channel这个稳定版本

2.2 解压

## development 这个根据自己实际得目录更改
$ cd ~/development
## 下面~/ 后得目录和下载得flutter版本根据自己实际名称更改
$ unzip ~/Downloads/flutter_macos_v1.2.1-stable.zip

具体操作:


taodeMacBook-Pro:~ tao$ cd ~/dev-flutter/
taodeMacBook-Pro:dev-flutter tao$ ls
android-sdk
taodeMacBook-Pro:dev-flutter tao$ unzip ~/Downloads/flutter_macos_v1.7.8+hotfix.4-stable.zip
taodeMacBook-Pro:dev-flutter tao$ ls
android-sdk flutter
taodeMacBook-Pro:dev-flutter tao$
taodeMacBook-Pro:dev-flutter tao$ ls flutter/
AUTHORS         README.md       examples
CODE_OF_CONDUCT.md  analysis_options.yaml   flutter_console.bat
CONTRIBUTING.md     bin         flutter_root.iml
LICENSE         dartdoc_options.yaml    packages
PATENTS         dev         version
taodeMacBook-Pro:dev-flutter tao$ 
2.3 添加flutter相关工具到path中
 export PATH="$PATH:`pwd`/flutter/bin"

该命令只是一次性的,对当前对terminal 设置里一个flutter的环境变量,等关闭里电脑下次又得重新设置,想要设置个永久性的还是要
将解压得路径配置到.bash_profile中去

输入命令打开.bash_profile


taodeMacBook-Pro:dev-flutter tao$ open ~/.bash_profile
taodeMacBook-Pro:dev-flutter tao$ 

在最后增加如下内容:


export PATH=/Users/tao/dev-flutter/flutter/bin:$PATH
export ANDROID_HOME="/Users/tao/Library/Android/sdk"
export PATH=${PATH}:${ANDROID_HOME}/tools
export PATH=${PATH}:${ANDROID_HOME}/platform-tools
export PUB_HOSTED_URL=https://pub.flutter-io.cn
export FLUTTER_STORAGE_BASE_URL=https://storage.flutter-io.cnexport PATH="/usr/local/opt/gettext/bin:$PATH"

其中export PATH=/Users/tao/dev-flutter/flutter/bin:$PATH 这个是配置的flutter
解压的目录(需要指定到flutter下面到bin目录下)
其中export ANDROID_HOME="/Users/tao/Library/Android/sdk"配置里Android sdk 路径

taodeMacBook-Pro:dev-flutter tao$ flutter doctor╔════════════════════════════════════════════════════════════════════════════╗║ A new version of Flutter is available!                                     ║║                                                                            ║║ To update to the latest version, run "flutter upgrade".                    ║╚════════════════════════════════════════════════════════════════════════════╝Doctor summary (to see all details, run flutter doctor -v):
[!] Flutter (Channel stable, v1.7.8+hotfix.4, on Mac OS X 10.15 19A602, localezh-Hans-CN)✗ Downloaded executables cannot execute on host.See https://github.com/flutter/flutter/issues/6207 for more information[✓] Android toolchain - develop for Android devices (Android SDK version 29.0.2)
[!] Xcode - develop for iOS and macOS (Xcode 11.1)✗ CocoaPods not installed.CocoaPods is used to retrieve the iOS and macOS platform side's plugincode 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-pluginsTo install:brew install cocoapodspod setup
[✓] iOS tools - develop for iOS devices
[✓] Android Studio (version 3.5)
[✓] IntelliJ IDEA Ultimate Edition (version 2018.3.4)
[!] Connected device! No devices available! Doctor found issues in 3 categories.
taodeMacBook-Pro:dev-flutter tao$

运行flutter doctor 进行环境检测,会发现用很多依赖缺失,根据提示一一安装
但是还有一个提示我的mac和我下载的flutter好像不兼容

Doctor summary (to see all details, run flutter doctor -v):
[!] Flutter (Channel stable, v1.7.8+hotfix.4, on Mac OS X 10.15 19A602, localezh-Hans-CN)✗ Downloaded executables cannot execute on host.See https://github.com/flutter/flutter/issues/6207 for more information

直接运行flutter upgrade 安装个最新版本的就好了


taodeMacBook-Pro:dev-flutter tao$ flutter upgrade
Upgrading Flutter from /Users/tao/dev-flutter/flutter...
../../third_party/dart/runtime/bin/snapshot_utils.cc: 149: error: Failed to memory map snapshot: /Users/tao/dev-flutter/flutter/bin/cache/dart-sdk/bin/snapshots/kernel-service.dart.snapshotversion=2.4.0 (Wed Jun 19 11:53:45 2019 +0200) on "macos_x64"
thread=5891, isolate=(null)(0x0)

注意⚠️命令中请使用 sudo 否则有些会提示错误
像这个 执行个flutter doctor都报错

taodeMacBook-Pro:repos tao$ flutter doctor
Failed to write the version file to the artifact cache: "FileSystemException:
Cannot open file, path = '/Users/tao/dev-flutter/flutter/version' (OS Error:
Permission denied, errno = 13)".
Please ensure you have permissions in the artifact cache directory.
Failed to write the version file

废话少说继续吧…

## 在执行一次
taodeMacBook-Pro:dev-flutter tao$ sudo flutter doctor -vWoah! You appear to be trying to run flutter as root.We strongly recommend running the flutter tool without superuser privileges./
												

flutter填坑之旅(环境搭建篇--mac系统)相关推荐

  1. 嵌入式linux编译环境搭建,嵌入式Linux之旅——环境搭建篇之交叉编译工具的安装...

    在正式开始学习裸机程序的编写之前,我们还需要安装一下交叉编译工具.何为交叉编译工具?其实就是在x86的ubuntu主机上编译程序,并且可以运行在arm环境的编译工具.而gcc是本地编译工具,这个在我们 ...

  2. 嵌入式Linux之旅——环境搭建篇之烧写整个系统

    上一小结我们已经烧写完u-boot,我烧写的u-boot是板子厂家定制的,本小节将利用这个u-boot烧写整个系统.当然,在系统移植篇的时候也会涉及到如何定制一个u-boot. 烧写整个系统我们一个叫 ...

  3. React Native填坑之旅--动画篇

    React Native填坑之旅--Button篇 React Native填坑之旅--动画 React Native填坑之旅--HTTP请求篇 动画是提高用户体验不可缺少的一个元素.恰如其分的动画可 ...

  4. Jenkins项目实战之-MacOS High Sierra自动化打包方案的填坑之旅

    前面我介绍了如何在android和iOS实现公司内部app的自动化打包构建的过程.这里写一个关于这个app自动化打包平台从想法到实践再到放机房平稳运行的一个回忆录.总的来说,在jenkins上实现an ...

  5. 【填坑之旅】手把手教你如何用AndroidStudio上传自己的library到Jcenter库

    [填坑之旅]手把手教你如何用AndroidStudio上传自己的library到Jcenter库 前言:我们在使用AndroidStudio的时候,会经常用到第三方的代码库.引入第三方库的方式无非就是 ...

  6. 树莓派4B爽上流安装python3的OpenCV(人脸检测识别—门禁“环境搭建篇”)

    树莓派4B安装OpenCV3.4.0人脸检测识别-门禁"环境搭建篇" 前言 一.准备工作 PC端软件 二.搭建树莓派环境 拓展TF内存卡 Tips:换源(python软件源) 修改 ...

  7. esp32 linux内核,【小狂系列】跟着小狂玩ESP32之编译环境搭建篇

    本帖最后由 3guoyangyang7 于 2016-11-3 18:41 编辑 趁热要打铁,昨天发了ESP32的预告贴,今天小狂就带大家刷一刷ESP32的编译环境搭建.怎么说的,ESP32可以在多平 ...

  8. 一次动态代理的填坑之旅

    转载自  一次动态代理的填坑之旅 背景 想在现有的接口加上熔断降级或者限流的功能,比较好的方式是通过注解的方式,并基于动态代理进行实现,下面代码是Rhino的实现 @Rhino public clas ...

  9. CRAB快速开发平台学习教程《一》:环境搭建篇

    智能时代,软硬更新,实在太快.从最开始的只有少量外设资源的8051,到现在资源丰富性能超群的ARM,才经历短短十几二十年功夫.软件的功能也越来越多,代码量也越来越庞大,简易而快速开发的方式,貌似离我们 ...

最新文章

  1. 使用three.js实现机器人手臂的运动效果
  2. python 复制文件夹内容 并结构一致_Python-移动和覆盖文件和文件夹
  3. C#中List列表与Datagridview的用法
  4. SoapUI笔记-使用SoapUI测试WebService服务端
  5. qq批量登录软件_把微信PC版越甩越远!QQ电脑版这些新功能太良心
  6. Crash -- 生成Minidump调试信息
  7. onvif协议client与server对接
  8. 投票系统显示结果--jQuery插件
  9. html华文行楷英文,HTML,CSS,font-family:中文字体的英文名称 (宋体 微软雅黑)...
  10. 零基础可入门的Python,为什么有些人自学几天就放弃了?
  11. NXP智能车竞赛笔记(室外电磁组)
  12. Regester 正则表达式测试工具
  13. 怎样写商业计划书 【转载】
  14. 詹姆斯等十位大佬的作息时间表曝光
  15. cf950f Curfew
  16. 头腾大战再升级 字节跳动做游戏的胜算有多少?
  17. 计算机与汽车智能信息化管理,谈计算机控制系统在汽车行业的应用
  18. php redis 关闭,php redis如何关闭_后端开发
  19. onReachBottom触底触发事件
  20. php excel 导入大量,ThinkPHP实现excel的批量导入功能

热门文章

  1. 关于数据仓库中变化历史数据处理方式:全量表、快照表、拉链表
  2. 砥砺奋进!GitChat 发布 1.9 版本更新公告
  3. 假设检验3- 卡方分布
  4. 京东面试详解(渣渣吐血整理版)
  5. vim全局搜索当前目录
  6. HTML期末作业:基于html+css+javascript+jquery实现古诗词网页 学生网页设计作品 web前端开发技术 web课程设计 网页规划与设计...
  7. 组态王中时间存access怎么存_组态王数据保存
  8. 数据库之Mac下Mysql命令全集
  9. SerDes结构之发送端前馈均衡技术(FFE)
  10. 利用Python(pyserial、minimalmodbus、modbus_tk)进行单片机通信