我正在从doc在MAC上构建AOSP(Android开源项目),一切正常,尽管我可以谷歌解决一些问题。
当我执行make
时,出现错误:
Yacc:aidl< = frameworks / base / tools / aidl / aidl_language_y.y
预制/ misc / darwin-x86 /野牛/野牛-d -o out / host / darwin-x86 / obj / EXECUTABLES / aidl_intermediates / aidl_language_y.cpp frameworks / base / tools / aidl / aidl_language_y。 ÿ
制作:*** [out / host / darwin-x86 / obj / EXECUTABLES / aidl_intermediates / aidl_language_y.cpp]非法指令:4
我搜索过多,我尝试安装bison
,但这对我不起作用。
环境:
Mac SDK : 10.11
Mac OS : 10.13
Android : 6.0.1
JDK : 1.7
XCode : 8.3
make : 3.81
任何人都可以帮助我吗?提前谢谢。
我还尝试将XCode
降级为7.3.1,但它仍无效。
file prebuilts/misc/darwin-x86/bison/bison
输出:prebuilts/misc/darwin-x86/bison/bison: Mach-O executable i386
uname -a
输出:root:xnu-4570.1.46~2/RELEASE_X86_64 x86_64
答案 0 :(得分:1)
我遇到了同样的问题。野牛可执行文件坏了,所以我用自制软件安装了野牛:
brew install bison
然后
sudo find / -name bison
这给了我野牛装置的路径:/ usr / bin / bison我从AOSP中移除了野牛文件:
sudo rm /Volumes/android/prebuilts/misc/darwin-x86/bison/bison
(Volumes / android /是我的工作目录,带有aosp的目录)。 然后我创建了一个与自制软件安装的野牛的符号链接:
sudo ln -s /usr/bin/bison /Volumes/android/prebuilts/misc/darwin-x86/bison/bison
答案 1 :(得分:0)
https://groups.google.com/d/msg/android-building/D1-c5lZ9Oco/V9yPowRdCAAJ
cd /Volumes/AOSP/external/bison
git cherry-pick c0c852bd6fe462b148475476d9124fd740eba160
mm
Replace prebuilt bison binary with patched binary
cp /Volumes/AOSP/out/host/darwin-x86/bin/bison /Volumes/AOSP/prebuilts/misc/darwin-x86/bison/
Build