android-4.0.1_r1 源码编译



jianguoliao@jianguoliao-Lenovo-IdeaPad-Y470:~/WORKING_DIRECTORY$ source build/envsetup.sh
including device/samsung/maguro/vendorsetup.sh
including device/samsung/tuna/vendorsetup.sh
including device/ti/panda/vendorsetup.sh
including sdk/bash_completion/adb.bash
jianguoliao@jianguoliao-Lenovo-IdeaPad-Y470:~/WORKING_DIRECTORY$  lunch 
full-eng               full_maguro-userdebug  full_panda-eng         full_tuna-userdebug    full_x86-eng           vbox_x86-eng
jianguoliao@jianguoliao-Lenovo-IdeaPad-Y470:~/WORKING_DIRECTORY$  lunch 
full-eng               full_maguro-userdebug  full_panda-eng         full_tuna-userdebug    full_x86-eng           vbox_x86-eng
jianguoliao@jianguoliao-Lenovo-IdeaPad-Y470:~/WORKING_DIRECTORY$  lunch full-eng 

============================================
PLATFORM_VERSION_CODENAME=REL
PLATFORM_VERSION=4.0.1
TARGET_PRODUCT=full
TARGET_BUILD_VARIANT=eng
TARGET_BUILD_TYPE=release
TARGET_BUILD_APPS=
TARGET_ARCH=arm
TARGET_ARCH_VARIANT=armv7-a
HOST_ARCH=x86
HOST_OS=linux
HOST_BUILD_TYPE=release
BUILD_ID=ITL41D
============================================

jianguoliao@jianguoliao-Lenovo-IdeaPad-Y470:~/WORKING_DIRECTORY$ make -
-                           --environment-overrides     -k                          --no-print-directory        -S
--always-make               -f                          --keep-going                -o                          --silent
--assume-new                --file                      -l                          --old-file                  --stop
--assume-old                -h                          --load-average              -p                          -t
-b                          --help                      -m                          --print-data-base           --touch
-B                          -i                          --makefile                  --print-directory           -v
-C                          -I                          --max-load                  -q                          --version
-d                          --ignore-errors             -n                          --question                  -w
--debug                     --include-dir               --new-file                  --quiet                     -W
--directory                 -j                          --no-builtin-rules          -r                          --warn-undefined-variables
--dry-run                   --jobs                      --no-builtin-variables      -R                          --what-if
-e                          --just-print                --no-keep-goind             --recon                     

jianguoliao@jianguoliao-Lenovo-IdeaPad-Y470:~/WORKING_DIRECTORY$ cd /usr/bin/
jianguoliao@jianguoliao-Lenovo-IdeaPad-Y470:/usr/bin$ 
jianguoliao@jianguoliao-Lenovo-IdeaPad-Y470:/usr/bin$ 
jianguoliao@jianguoliao-Lenovo-IdeaPad-Y470:/usr/bin$ ls -al gcc*
lrwxrwxrwx 1 root root      7  8月  5 12:48 gcc -> gcc-4.6
-rwxr-xr-x 1 root root 306200  4月 16  2012 gcc-4.6
jianguoliao@jianguoliao-Lenovo-IdeaPad-Y470:/usr/bin$  ls -l g++*
lrwxrwxrwx 1 root root      7  3月 14  2012 g++ -> g++-4.6
-rwxr-xr-x 1 root root 310296  4月 16  2012 g++-4.6
jianguoliao@jianguoliao-Lenovo-IdeaPad-Y470:/usr/bin$ sudo apt-get install gcc-4.4
[sudo] password for jianguoliao: 
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following packages were automatically installed and are no longer required:
  linux-headers-3.2.0-29 linux-headers-3.2.0-29-generic-pae
Use 'apt-get autoremove' to remove them.
The following extra packages will be installed:
  cpp-4.4 gcc-4.4-base
Suggested packages:
  gcc-4.4-locales gcc-4.4-multilib libmudflap0-4.4-dev gcc-4.4-doc libgcc1-dbg libgomp1-dbg libmudflap0-dbg libcloog-ppl0 libppl-c2 libppl7
The following NEW packages will be installed:
  cpp-4.4 gcc-4.4 gcc-4.4-base
0 upgraded, 3 newly installed, 0 to remove and 21 not upgraded.
Need to get 6,697 kB of archives.
After this operation, 13.8 MB of additional disk space will be used.
Do you want to continue [Y/n]? Y
Get:1 http://cn.archive.ubuntu.com/ubuntu/ precise/main gcc-4.4-base i386 4.4.7-1ubuntu2 [12.0 kB]
Get:2 http://cn.archive.ubuntu.com/ubuntu/ precise/main cpp-4.4 i386 4.4.7-1ubuntu2 [3,606 kB]
Get:3 http://cn.archive.ubuntu.com/ubuntu/ precise/main gcc-4.4 i386 4.4.7-1ubuntu2 [3,079 kB]                                                
Fetched 6,697 kB in 24s (276 kB/s)                                                                                                            
Selecting previously unselected package gcc-4.4-base.
(Reading database ... 180229 files and directories currently installed.)
Unpacking gcc-4.4-base (from .../gcc-4.4-base_4.4.7-1ubuntu2_i386.deb) ...
Selecting previously unselected package cpp-4.4.
Unpacking cpp-4.4 (from .../cpp-4.4_4.4.7-1ubuntu2_i386.deb) ...
Selecting previously unselected package gcc-4.4.
Unpacking gcc-4.4 (from .../gcc-4.4_4.4.7-1ubuntu2_i386.deb) ...
Processing triggers for man-db ...
Setting up gcc-4.4-base (4.4.7-1ubuntu2) ...
Setting up cpp-4.4 (4.4.7-1ubuntu2) ...
Setting up gcc-4.4 (4.4.7-1ubuntu2) ...
jianguoliao@jianguoliao-Lenovo-IdeaPad-Y470:/usr/bin$ sudo apt-get install g++-
g++-4.4                               g++-4.5-multilib                      g++-arm-linux-gnueabi
g++-4.4-arm-linux-gnueabi             g++-4.6                               g++-arm-linux-gnueabihf
g++-4.4-arm-linux-gnueabihf           g++-4.6-arm-linux-gnueabi             g++-mingw-w64
g++-4.4-multilib                      g++-4.6-arm-linux-gnueabihf           g++-mingw-w64-i686
g++-4.5                               g++-4.6-multilib                      g++-mingw-w64-x86-64
g++-4.5-arm-linux-gnueabi             g++-4.6-multilib-arm-linux-gnueabi    g++-multilib
g++-4.5-arm-linux-gnueabihf           g++-4.6-multilib-arm-linux-gnueabihf  
jianguoliao@jianguoliao-Lenovo-IdeaPad-Y470:/usr/bin$ sudo apt-get install g++-4.4
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following packages were automatically installed and are no longer required:
  linux-headers-3.2.0-29 linux-headers-3.2.0-29-generic-pae
Use 'apt-get autoremove' to remove them.
The following extra packages will be installed:
  libstdc++6-4.4-dev
Suggested packages:
  g++-4.4-multilib gcc-4.4-doc libstdc++6-4.4-dbg libstdc++6-4.4-doc
The following NEW packages will be installed:
  g++-4.4 libstdc++6-4.4-dev
0 upgraded, 2 newly installed, 0 to remove and 21 not upgraded.
Need to get 6,274 kB of archives.
After this operation, 19.5 MB of additional disk space will be used.
Do you want to continue [Y/n]? Y
Get:1 http://cn.archive.ubuntu.com/ubuntu/ precise/main libstdc++6-4.4-dev i386 4.4.7-1ubuntu2 [1,494 kB]
Get:2 http://cn.archive.ubuntu.com/ubuntu/ precise/main g++-4.4 i386 4.4.7-1ubuntu2 [4,780 kB]
Fetched 6,274 kB in 23s (271 kB/s)                                                                                                            
Selecting previously unselected package libstdc++6-4.4-dev.
(Reading database ... 180316 files and directories currently installed.)
Unpacking libstdc++6-4.4-dev (from .../libstdc++6-4.4-dev_4.4.7-1ubuntu2_i386.deb) ...
Selecting previously unselected package g++-4.4.
Unpacking g++-4.4 (from .../g++-4.4_4.4.7-1ubuntu2_i386.deb) ...
Processing triggers for man-db ...
Setting up g++-4.4 (4.4.7-1ubuntu2) ...
Setting up libstdc++6-4.4-dev (4.4.7-1ubuntu2) ...
jianguoliao@jianguoliao-Lenovo-IdeaPad-Y470:/usr/bin$ 
jianguoliao@jianguoliao-Lenovo-IdeaPad-Y470:/usr/bin$ 

jianguoliao@jianguoliao-Lenovo-IdeaPad-Y470:/usr/bin$  ls -l gcc*
lrwxrwxrwx 1 root root      7  8月  5 12:48 gcc -> gcc-4.6
-rwxr-xr-x 1 root root 224544  4月 16  2012 gcc-4.4
-rwxr-xr-x 1 root root 306200  4月 16  2012 gcc-4.6
jianguoliao@jianguoliao-Lenovo-IdeaPad-Y470:/usr/bin$ sudo mv gcc gcc.bak
jianguoliao@jianguoliao-Lenovo-IdeaPad-Y470:/usr/bin$ sudo ln -s gcc-4.4 gcc
jianguoliao@jianguoliao-Lenovo-IdeaPad-Y470:/usr/bin$ ls -l g++*
lrwxrwxrwx 1 root root      7  3月 14  2012 g++ -> g++-4.6
-rwxr-xr-x 1 root root 228640  4月 16  2012 g++-4.4
-rwxr-xr-x 1 root root 310296  4月 16  2012 g++-4.6
jianguoliao@jianguoliao-Lenovo-IdeaPad-Y470:/usr/bin$ sudo mv g++ g++.bak
jianguoliao@jianguoliao-Lenovo-IdeaPad-Y470:/usr/bin$ sudo ln -s g++-4.4 g++

jianguoliao@jianguoliao-Lenovo-IdeaPad-Y470:/usr/bin$ g++ --version
g++ (Ubuntu/Linaro 4.4.7-1ubuntu2) 4.4.7
Copyright (C) 2010 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

jianguoliao@jianguoliao-Lenovo-IdeaPad-Y470:/usr/bin$ gcc --version
gcc (Ubuntu/Linaro 4.4.7-1ubuntu2) 4.4.7
Copyright (C) 2010 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

jianguoliao@jianguoliao-Lenovo-IdeaPad-Y470:/usr/bin$ 

为什么要更改位低版本的g++和gcc因为android编译环境需要,不然会在编译过程中出现如下错误:

<command-line>:0:0: error: "_FORTIFY_SOURCE" redefined [-Werror]
<built-in>:0:0: note: this is the location of the previous definition
cc1plus: all warnings being treated as errors
make: *** [out/host/linux-x86/obj/EXECUTABLES/obbtool_intermediates/Main.o] Error 1


jianguoliao@jianguoliao-Lenovo-IdeaPad-Y470:~/WORKING_DIRECTORY$ make


Target system fs image: out/target/product/generic/obj/PACKAGING/systemimage_intermediates/system.img
Install system fs image: out/target/product/generic/system.img
Target ram disk: out/target/product/generic/ramdisk.img
Target userdata fs image: out/target/product/generic/userdata.img
jianguoliao@jianguoliao-Lenovo-IdeaPad-Y470:~/WORKING_DIRECTORY$ 
jianguoliao@jianguoliao-Lenovo-IdeaPad-Y470:~/WORKING_DIRECTORY$ 
jianguoliao@jianguoliao-Lenovo-IdeaPad-Y470:~/WORKING_DIRECTORY$ 
jianguoliao@jianguoliao-Lenovo-IdeaPad-Y470:~/WORKING_DIRECTORY$ 
jianguoliao@jianguoliao-Lenovo-IdeaPad-Y470:~/WORKING_DIRECTORY$ 




上面是4.0的分支代码

如果是4.3的最新源码,编译则会出现如下错误,建议您安装64位的ubuntu系统,下次我将教你怎么安装,我现在的是32的


ERROR: prebuilts/tools/gcc-sdk/../../gcc/linux-x86/host/x86_64-linux-glibc2.7-4.6/bin/x86_64-linux-ar only run on 64-bit linux
make: *** [out/host/linux-x86/obj/STATIC_LIBRARIES/libhost_intermediates/libhost.a] Error 1









  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 这是一个文件包,包含了关于STS 4.0.1插件和DBeaver插件的JSON配置文件。STS 4.0.1是Spring Tool Suite的版本号,这是一个常用的Java开发工具。DBeaver是一个开源的数据库管理工具,也是Java开发人员常用的工具之一。通过将这两个插件集成在一起,可以实现在STS中对数据库的连接和操作,方便开发人员进行数据库相关的任务。JSON文件是文本文件格式之一,用于存储和传输数据。在这个文件包中,JSON文件中包含了对插件的配置信息,例如数据库驱动程序的位置、数据库连接的参数等等。通过这些配置信息,插件可以和STS框架集成,并在STS的用户界面中显示出来。对于Java开发人员来说,这个文件包是一个非常实用的工具,因为它可以提高开发效率,减少代码冗余,同时还可以帮助开发人员更好地管理和维护数据库。 ### 回答2: sts-4.0.1.plugin_json_dbeaver.zip 是一个 Zip 压缩包,它包含了一个名为 DBeaver 的插件以及一些 JSON 文件。这个插件可以在 Spring Tool Suite (STS) IDE 中使用,用于处理数据库操作。 DBeaver 是一个流行的开源的数据库管理工具,它支持多种不同的数据库,包括 MySQL、Oracle、PostgreSQL 等等。在 STS 中安装 DBeaver 插件可以让开发人员更方便地进行数据库开发和管理。插件包中的 JSON 文件则是一些配置文件,可以帮助 STS 认识和使用这个插件。 当你得到 sts-4.0.1.plugin_json_dbeaver.zip 这个文件时,你需要将它解压缩并将其中的插件和 JSON 文件复制到 STS 的插件目录中。然后重启 STS,就可以开始使用 DBeaver 插件了。 总之,sts-4.0.1.plugin_json_dbeaver.zip 是一个用于在 STS 中管理数据库的插件和一些配置文件的压缩包。它能够帮助开发人员更加高效地进行数据库开发和管理。 ### 回答3: sts-4.0.1.plugin_json_dbeaver.zip是一个插件文件,用于在Spring Tool Suite(STS)集成开发环境中添加DBeaver数据库管理工具。这个插件允许开发人员轻松地使用DBeaver连接到数据库,并在STS内部对数据库进行管理和操作。 STS是一个基于Eclipse的开发平台,专门为Spring框架的开发而设计。DBeaver是一个免费的开源数据库管理工具,支持多种数据库,包括MySQL、Oracle、PostgreSQL等。将这两个工具集成到一起,可以大大提高开发人员的效率和数据库管理的便捷性。 安装这个插件很简单,只需在STS的安装目录中找到“dropins”文件夹,将下载好的插件压缩包解压到其中即可。接下来,重新启动STS,就可以在工具栏中看到DBeaver的图标了。 总之,STS-4.0.1.plugin_json_dbeaver.zip是一个在Spring Tool Suite中添加DBeaver数据库管理工具的插件,让开发人员能够更加方便地管理数据库,从而提高开发效率。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值