Samsung x210 Android makefile 的一些配置实例问题

1 驱动移植找不的编译时候的产品定义:TARGET_PRODUCT

起因:

编译驱动模块时候,出现错误:system/wlan/atheros/AR6kSDK.build_3.1_RC.734/host/Android.mk:89: *** define your kernel path here for ATH_LINUXPATH.  Stop.

分析:

添加驱动模块的时候,每个编译的驱动模块里面的驱动文件夹里面的都应该有Android.mk  这个make 文件。

在AR6KSDK里面的host 文件夹下,就有这个文件,编译的时候,出现过问题,找不的TARGET_PRODUCT 的定义

·解决》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》

根据Android的编译结构,一点点剥离,找到如下:理由是:

整个 Build 系统中的 Make 文件可以分为三类:

第一类是 Build 系统核心文件,此类文件定义了整个 Build 系统的框架,而其他所有 Make 文件都是在这个框架的基础上编写出来的。

图 1 是 Android 源码树的目录结构,Build 系统核心文件全部位于 /build/core(本文所提到的所有路径都是以 Android 源码树作为背景的,“/”指的是源码树的根目录,与文件系统无关)目录下。

第二类是针对某个产品(一个产品可能是某个型号的手机或者平板电脑)的 Make 文件,这些文件通常位于 device 目录下,该目录下又以公司名以及产品名分为两级目录,图 2 是 device 目录下子目录的结构。

第三类是针对某个模块(关于模块后文会详细讨论)的 Make 文件。整个系统中,包含了大量的模块,每个模块都有一个专门的 Make 文件,这类文件的名称统一为“Android.mk”


根据上面的理由,目标板级别的配置应该是第二条配置,

检查

~/x210_ics_rtm_v13/device/samsung/x210/AndroidProducts.mk
有指向这个文件

PRODUCT_MAKEFILES := $(LOCAL_DIR)/full_x210.mk
再查看这个文件

~/x210_ics_rtm_v13/device/samsung/x210$ vim full_x210.mk

....

# Overrides
PRODUCT_NAME := full_x210
PRODUCT_DEVICE := x210
PODUCT_BRAND := Android
1PRODUCT_MODEL := Android On X210


在“Android.mk”加打印看看到底配置如何:

$(warning $(TARGET_PRODUCT))

然后再编译一下:

system/wlan/atheros/AR6kSDK.build_3.1_RC.734/host/Android.mk:39: full_x210
system/wlan/atheros/AR6kSDK.build_3.1_RC.734/host/Android.mk:89: *** define your kernel path here for ATH_LINUXPATH.  Stop.


结论:

TARGET_PRODUCT 和  PRODUCT_NAME 具有同样的名字


修改:

修改\system\wlan\atheros\AR6kSDK.build_3.1_RC.734\host\Android.mk 下的  android.mk 


ifeq ($(TARGET_PRODUCT),$(filter $(TARGET_PRODUCT),qsd8250_surf qsd8250_ffa msm7627_surf msm7627_ffa msm7627a msm7625_ffa msm7625_surf msm7630_surf   full_x210))
#export  ATH_LINUXPATH=$(TARGET_OUT_INTERMEDIATES)/KERNEL_OBJ
#ATH_CROSS_COMPILE_TYPE:=$(ATH_ANDROID_ROOT)/prebuilt/linux-x86/toolchain/arm-eabi-4.3.1/bin/arm-eabi-

ATH_CROSS_COMPILE_TYPE := /usr/local/arm/arm-2009q3/bin/arm-none-linux-gnueabi-
ATH_LINUXPATH :=/home/hanson//x210_ics_rtm_v13/kernel


问题解决:

再编译通过。。。

--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

参考:

http://www.ibm.com/developerworks/cn/opensource/os-cn-android-build/

你可能感兴趣的:(Samsung x210 Android makefile 的一些配置实例问题)