Gingerbread build on Arch Linux x86_64 with gcc 4.6.0 / small patch

Hello everyone,

Building from the sources with the following steps does not work
directly with gcc 4.6.0

1.  repo init -u git:// -b
gingerbread && repo sync
2. .build/
3. lunch (choice 1)
4. make

You get the following error:
host C++: libutils <= frameworks/base/libs/utils/RefBase.cpp
frameworks/base/libs/utils/RefBase.cpp: In member function ‘void
android::RefBase::weakref_type::trackMe(bool, bool)’:
frameworks/base/libs/utils/RefBase.cpp:483:67: error: passing ‘const
android::RefBase::weakref_impl’ as ‘this’ argument of ‘void
android::RefBase::weakref_impl::trackMe(bool, bool)’ discards
qualifiers [-fpermissive]

gcc seems to be less permissive than before (
gcc-4.6/changes.html, need some further investigations)

The patch below seems to fix the problem (builds correctly):

 % repo diff frameworks/base/libs/utils/

project frameworks/base/
diff --git a/libs/utils/ b/libs/utils/
index eb75ed8..c333143 100644
--- a/libs/utils/
+++ b/libs/utils/
@@ -57,7 +57,7 @@ LOCAL_SRC_FILES:= $(commonSources)

 LOCAL_MODULE:= libutils

 LOCAL_C_INCLUDES += external/zlib

 ifeq ($(HOST_OS),windows)
上一篇problem with Ubuntu 11.10 on sun-java6-jdk
下一篇android 4.0 source code available
想对作者说点什么? 我来说一句