关于android 开发环境建立的问题
Reading state information... Done
E: Couldn't find package gcc-4.5
这样
不知道为什么,之前也是按照文档装的也是可以
高手麻烦解答一下
Ubuntu11.10自带的gcc与g++版本为4.6,用该版本编译android时会遇到一些错误,如:
1 host Prebuilt: monkeyrunner (out/host/linux-x86/obj/EXECUTABLES/monkeyrunner_intermediates/monkeyrunner)
2 host C++: obbtool <= frameworks/base/tools/obbtool/Main.cpp
3 <命令行>:0:0: 错误: “_FORTIFY_SOURCE”重定义 [-Werror]
4 <built-in>:0:0: 附注: 这是先前定义的位置
5 cc1plus:所有的警告都被当作是错误
网上有文章说修改build/core/combo/HOST_linux-x86.mk文件,将
1 HOST_GLOBAL_CFLAGS += -D_FORTIFY_SOURCE=0
修改成
1 HOST_GLOBAL_CFLAGS += -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=0
这种方法虽然能解决该问题,但也会引出新的问题,还要继续不断的修改,很麻烦,而且也会破坏android源码的原生状态。但是如果使用4.4版本的gcc与g++,则不会出现这些错误,方法如下:
通过gcc -v命令可以发现gcc库在/usr/lib/gcc/i686-linux-gnu目录下,该目录下有当前系统支持的各种版本gcc库 。在安装gcc 4.4前该目录下是没有4.4目录的,安装gcc 4.4后该目录下就会多出4.4这个目录,且该4.4目录下有各种相应库文件。
ubuntu 32bit系统下安装gcc 4.4的最好方法是仅用以下两条命令,不需要其它命令,否则编译时可能会出错。
1 $sudo apt-get install gcc-4.4
2 $sudo apt-get install g++-4.4
装完后进入到/usr/bin目录下
1 $ls -l gcc*
会显示以下结果
lrwxrwxrwx 1 root root 7 2011-10-29 09:11 gcc -> gcc-4.6
-rwxr-xr-x 1 root root 224544 2011-10-06 05:47 gcc-4.4
-rwxr-xr-x 1 root root 302104 2011-09-17 05:43 gcc-4.6
发现gcc链接到gcc-4.6, 需要将它改为链接到gcc-4.4,方法如下:
1 $sudo mv gcc gcc.bak
2 $sudo ln -s gcc-4.4 gcc
同理,对g++也做同样的修改:
1 $ls -l g++*
lrwxrwxrwx 1 root root 7 2011-08-14 15:17 g++ -> g++-4.6
-rwxr-xr-x 1 root root 228640 2011-10-06 05:45 g++-4.4
-rwxr-xr-x 1 root root 306200 2011-09-17 05:39 g++-4.6
需要将g++链接改为g++-4.4:
1 $sudo mv g++ g++.bak
2 $sudo ln -s g++-4.4 g++
再查看gcc和g++版本号:
gcc -v
g++ -v
均显示gcc version 4.4.6 ,说明gcc 4.4安装成功。
网上的文章,你慢慢看,我没做过智能机
谢谢!
不过问题是我就是用这个指令
1 $sudo apt-get install gcc-4.4
2 $sudo apt-get install g++-4.4
安装4.5的时候才报上面的错误啊
有可能是源的问题,找个源试试
已经搞好,要添加一个 PA 源就好了