我正在从doc在MAC上构建AOSP(Android开源项目)并且一切正常,尽管我可以谷歌解决一些问题。
当我执行make
时,我收到一个错误:
Yacc:aidl <= frameworks / base / tools / aidl / aidl_language_y.y prebuilts / misc / darwin-x86 / bison / bison -d -o out / host / darwin-x86 / obj / EXECUTABLES / aidl_intermediates / aidl_language_y.cpp frameworks / base / tools / aidl / aidl_language_y.y make:*** [out / host / darwin-x86 / obj / EXECUTABLES / aidl_intermediates / aidl_language_y.cpp]非法指令:4
我用Google搜索了太多,我试图安装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
我有同样的问题。野牛可执行文件坏了,所以我用自制软件安装了野牛:
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
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