解决m1的mac下 执行flutter pub run ffigen 出现“(have ‘arm64’, need ‘x86_64’)“错误

news/2024/11/29 4:41:32/

解决m1的mac下 执行flutter pub run ffigen 出现"(have ‘arm64’, need ‘x86_64’)"错误

ffigen主要是用来将底层的c/c++的导出函数转成dart能方便调用的方法,用起来挺方便的,之前在windows弄成功过,现在在要在m1的mac下再弄一次,不出意外,果然又碰到问题了。


首先在执行ffigen命令的时候提示找不到llvm相关的库

这个问题直接执行brew install llvm即可。

安装完后,继续执行ffigen命令,又出现错误了.

Invalid argument(s): Failed to load dynamic library '/opt/homebrew/opt/llvm/lib/libclang.dylib': 
dlopen(/opt/homebrew/opt/llvm/lib/libclang.dylib, 0x0001): tried: '/opt/homebrew/opt/llvm/lib/libclang.dylib'
(mach-o file, but is an incompatible architecture (have 'arm64', need 'x86_64')), 

这个m1确实坑挺多的,之前就碰到好多和这相关的问题。先去github仓库找,肯定有其它从碰到过这个问题,搜索了下,果然有
https://github.com/dart-lang/ffigen/issues/323

但仔细看完后发现,解决的办法竟然是要重新安装arm版本的flutter。看了下自己电脑上的dart版本,

file /Users/cxw/dev_tools/flutter/bin/cache/dart-sdk/bin/dart
/Users/cxw/dev_tools/flutter/bin/cache/dart-sdk/bin/dart: Mach-O 64-bit executable x86_64

不过这么做还是不太建议,毕竟基础的开发环境能不动,就尽量不动,好几个生产项目都依赖这个环境。

既然不重装arm版本的flutter,那就安装x86_84的llvm,这样应该也能解决问题。

网上一通搜索,终于找到了mac下的x86_64的llvm

下载完,在pubspec.yaml中配置好llvm库,再次执行flutter pub run ffigen…果然就可以了。




版权声明:本文为凸然网站的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:解决m1的mac下 执行flutter pub run ffigen 出现"(have ‘arm64’, need ‘x86_64’)"错误


http://www.ppmy.cn/news/676590.html

相关文章

指数形式的傅里叶级数

傅里叶提出的两个重要的观点: 1.周期信号都可以表示为谐波关系的正弦信号的加权和(傅里叶级数) 2.非周期信号都可用正弦信号的加权积分表示(傅里叶变换) 参考上一篇博客 https://blog.csdn.net/Chevy_cxw/article/det…

SQL慢?吐血整理MySQL中Explain分析工具

前言 当我们遇到一条SQL慢的时候,往往需要使用一些性能分析工具,看看这个SQL究竟是为什么慢?那本文就分享MySQL中的一个性能分析神器——Explain, 通过读懂它的结果,我们可以知道SQL的执行计划,也就是具体执行查询的方…

在ubuntu16.04下安装opencv3.4.5(超详细)

一、编译安装 1.官网下载sources版本(For Linux):http://opencv.org/releases.html 2.解压: unzip opencv-3.4.5.zip3.进入: cd opencv-3.4.5(如果安装的文件在本机上,则先进入此安装包所在路径,比如我的…

keras 搭建lstm+dnn网络 多步时间序列预测 模板

# -*- coding: utf-8 -*- # 导入库pip install openpyxl -i https://pypi.tuna.tsinghua.edu.cn/simple import pandas as pd import numpy as np from sklearn.model_selection import train_test_split from sklearn import metrics from sklearn.metrics import mean_square…

SpingData-JDBC(看这篇文章就够了,新手入门指引)

JdbcTemplate 的基本使用 写在前面: 当DDL操作时,一般是用execute方法,这也是一种规范吧,这个也可以运行DML但是通常来说我DML操作是需要返回值的,一般就是返回影响的行数。然后这篇文章主要介绍增删改查&#xff0c…

什么是天线轴比

天线的轴比定义:任意极化波的瞬时电场矢量的端点轨迹为一椭圆,椭圆的长轴2A和短轴2B。 椭圆极化波的特性可用三个参数来描述,即旋转方向、椭圆极化轴比及椭圆的倾角,其中轴比是椭圆长轴与短轴之比。椭圆极化当轴比为无穷大时&…

宽窄带天线的区别w

窄带和宽带的区分也就是相对带宽的大小Br(fh-fl)/f0*100%,一般相对带宽小于1%的为窄带天线,1%至25%的为宽带天线,大于25%的为超宽带天线

天线越大越好吗_路由器的天线是不是越多越好?告知你真实答案,很多人都买错了...

路由器作为电脑上网流量共享以及手机WIFI上网必备的器材,经过十余年的发展,从最初的无WIFI功能路由器到今天的智能路由器,再到单天线路由器到目前的N个天线路由器。相信很多人对此就会产生疑问,那就是路由器的天线是不是越多越好&…