admin管理员组

文章数量:1663034

在编译基于Android.mk构建的android ndk项目时发现,在m1的macbook pro上会出现如下错误

ERROR: Unknown host CPU architecture: arm64

需要修改ndk根目录下的ndk-build文件 (推测原因是m1属于arm架构)

#!/bin/sh
DIR="$(cd "$(dirname "$0")" && pwd)"
$DIR/build/ndk-build "$@"

改为

#!/bin/sh
DIR="$(cd "$(dirname "$0")" && pwd)"
arch -x86_64 /bin/bash $DIR/build/ndk-build "$@"

本来故事到这里就应该结束的,奈何我是一个动手能力比较强的人,对于复制粘贴不是很擅长,但是独爱徒手敲代码,结果就敲漏了最后的 "$@",所以有了很多很奇怪的路径不对的问题,类似下图:

在我不知道原因的时候,我尝试过如下无效操作:

  • 重启android studio
  • 重启电脑
  • clean 
  • refresh linked c++ projects
  • 把所有Android.mk中LOCAL_PATH := $(call my-dir),LOCAL_PATH全部被我命名为了不同的名字,比方说A模块中的LOCAL_PATH就变成了A_PATH,这个改动花费了我大量的时间,并且产生了让我越来越无法理解的结果,那就是确实达到了修复问题的效果。但是当我把所有的LOCAL_PATH改完后就发现LOCAL_SRC_FILES这个内置变量的值也变成了这种我无法理解的样子,这就没办法处理了,所以我只能放弃这条路。
  • 升级了电脑系统到12.4

本文标签: HostunknownErrorArchitectureCPU