今天在第一次启动RN项目的时候,报了fsevents函数不存在的问题
但是同事都没有这个现象
查明了一下是fsevents的老版本没有兼容M1芯片的arm64架构
懒得看全文的同学可以尝试把node降级或者安装lts版本
下面是正文👇
相信各位开发同学用的mac居多,如果你是2021后半年之后购置的电脑,又不知道自己是不是M1芯片的话,在苹果→关于本机中可以找到
node在16开始的版本,会适配M1芯片,为你下载arm64的版本
如果你在启动过程中遇到了fsevents或者其他库的报错,可以先去报错的库看一下它是不是用.c写的
是的话,node-gyp在使用这个包时会先进行编译,打成一个node可用的.so文件
而如果你的node是arm64版本的话,可能报错库的当前版本还没有做arm64的打包适配
可以拿fsevents举例一下,可以看到它最新的binding.gyp已经做了适配了
fsevents的README中,也写了2.3版本后支持ARM
但是我们的项目目前用的还是v1的版本,所以就会报错了
可以考虑升级fs-events,也可以降级node或者手动指定node x86版本