Ubuntu16 编译源码出错 unsupported reloc 43

错误如下

复制代码
prebuilts/gcc/linux-x86/host/x86_64-linux-glibc2.11-4.6//x86_64-linux/include/c++/4.6/bits/basic_string.h:270: error: unsupported reloc 43 prebuilts/gcc/linux-x86/host/x86_64-linux-glibc2.11-4.6//x86_64-linux/include/c++/4.6/bits/basic_string.h:270: error: unsupported reloc 43 prebuilts/gcc/linux-x86/host/x86_64-linux-glibc2.11-4.6//x86_64-linux/include/c++/4.6/bits/basic_string.h:235: error: unsupported reloc 43 prebuilts/gcc/linux-x86/host/x86_64-linux-glibc2.11-4.6//x86_64-linux/include/c++/4.6/bits/basic_string.h:235: error: unsupported reloc 43 libnativehelper/JNIHelp.cpp:310: error: unsupported reloc 43 libnativehelper/JNIHelp.cpp:311: error: unsupported reloc 43 libnativehelper/JNIHelp.cpp:332: error: unsupported reloc 43 libnativehelper/JNIHelp.cpp:322: error: unsupported reloc 43 libnativehelper/JNIHelp.cpp:338: error: unsupported reloc 43 libnativehelper/JniConstants.cpp:89: error: unsupported reloc 43 libnativehelper/JniConstants.cpp:90: error: unsupported reloc 43
复制代码

 

解决方法(一)

修改 build/core/clang/HOST_x86_common.mk

复制代码
diff --git a/core/clang/HOST_x86_common.mk b/core/clang/HOST_x86_common.mk index 0241cb6..77547b7 100644 --- a/core/clang/HOST_x86_common.mk +++ b/core/clang/HOST_x86_common.mk @@ -8,6 +8,7 @@ ifeq ($(HOST_OS),linux)  CLANG_CONFIG_x86_LINUX_HOST_EXTRA_ASFLAGS := \    --gcc-toolchain=$($(clang_2nd_arch_prefix)HOST_TOOLCHAIN_FOR_CLANG) \    --sysroot=$($(clang_2nd_arch_prefix)HOST_TOOLCHAIN_FOR_CLANG)/sysroot \ +  -B$($(clang_2nd_arch_prefix)HOST_TOOLCHAIN_FOR_CLANG)/x86_64-linux/bin \    -no-integrated-as    CLANG_CONFIG_x86_LINUX_HOST_EXTRA_CFLAGS := \  
复制代码

 但是对我而言 错误仍在

 

解决方法(二)

修改 art/build/Android.common_build.mk

复制代码
# Host. ART_HOST_CLANG := false ifneq ($(WITHOUT_HOST_CLANG),true)   # By default, host builds use clang for better warnings.   ART_HOST_CLANG := true endif
复制代码

改为

复制代码
# Host. ART_HOST_CLANG := false ifeq ($(WITHOUT_HOST_CLANG),false)   # By default, host builds use clang for better warnings.   ART_HOST_CLANG := true endif
复制代码

仍然不起作用

 

解决方法(三)

cp /usr/bin/ld.gold prebuilts/gcc/linux-x86/host/x86_64-linux-glibc2.11-4.6/x86_64-linux/bin/ld

这个之后,编译通过。

posted on 2017-07-14 10:55  木花猫  阅读(391)  评论(0编辑  收藏  举报

导航