当前位置: 代码迷 >> Android >> ubuntu14.04编译android4.0源代码的有关问题
  详细解决方案

ubuntu14.04编译android4.0源代码的有关问题

热度:185   发布时间:2016-04-28 04:40:40.0
ubuntu14.04编译android4.0源代码的问题
编译的错误信息如下:
frameworks/base/include/utils/KeyedVector.h:193:31: error: ‘indexOfKey’ was not declared in this scope, and no declarations were found by argument-dependent lookup at the point of instantiation [-fpermissive]

frameworks/base/include/utils/AssetManager.h:
frameworks/base/include/utils/KeyedVector.h:193:31: error: ‘indexOfKey’ was not declared in this scope, and no declarations were found by argument-dependent lookup at the point of instantiation [-fpermissive]
frameworks/base/include/utils/KeyedVector.h:193:31: error: ‘indexOfKey’ was not declared in this scope, and no declarations were found by argument-dependent lookup at the point of instantiation [-fpermissive]
make[3]: *** [out/host/linux-x86/obj/EXECUTABLES/aapt_intermediates/AaptAssets.o] Error 1
根据网络上给出的解决办法是,在vi frameworks/base/libs/utils/Android.mk下面的内容后面加上’-fpermissive’,如下:

LOCAL_CFLAGS += -DLIBUTILS_NATIVE=1 $(TOOL_CFLAGS)  –fpermissive
但是还是一样的编译错误,大家是怎么解决此问题的,麻烦知道下,先谢谢了。

搭建编译环境的过程见我的博文http://blog.csdn.net/loongembedded/article/details/38014841
------解决方案--------------------
可以参考  http://www.linuxidc.com/Linux/2014-03/97628.htm
------解决方案--------------------
我用12.04的编成功了
------解决方案--------------------
引用:
Quote: 引用:

我用12.04的编成功了

就没有遇到编译方面的问题吗?

我以前也用14.04编译过2.3的源码,出的问题非常多,也是出现了几个地方要加fpermissive的,不过后来还是编成功了。我用12.04编译4.0的代码的时候,遇到的问题非常少啊,只要完全按照官网把那些该装的都装了,基本是不会遇到问题的。
------解决方案--------------------
引用:
Quote: 引用:

Quote: 引用:

Quote: 引用:

我用12.04的编成功了

就没有遇到编译方面的问题吗?

我以前也用14.04编译过2.3的源码,出的问题非常多,也是出现了几个地方要加fpermissive的,不过后来还是编成功了。我用12.04编译4.0的代码的时候,遇到的问题非常少啊,只要完全按照官网把那些该装的都装了,基本是不会遇到问题的。

有记录下来吗?麻烦分享下,先谢谢了。

我是用虚拟机来装的ubuntu。
ubuntu 12.04带的是gcc4.6,要换成4.4的,g++也一样。
你要编4.0的源码,就要装JDK 1.6。
然后其他步骤按照https://source.android.com/source/downloading.html这个来就好了。
你把所有的都装好之后,记得执行下gcc --version和g++ --version,看是不是4.4的版本,有时候装一些包,会把gcc和g++卸载掉,我就遇到过,所以编译前确保所有的包都装好了。
  相关解决方案