编译 wl18xx驱动源码

在做beagleboneblack移植的时候,wl18xx的驱动源码是自动编译的。但是移植到其他平台优越平台不一样,所以就不能自动编译

所以用其他方式编译。http://e2e.ti.com/support/embedded/android/f/509/p/272074/951251  在TI找到的解决方案

修改源码里面的Makefile的内容。

                  TI源码里面的驱动根目录下的Makefile

..............................................................................................................................................................

# Default target is omap3evm/AM37xevm
TARGET_PRODUCT ?= omap3evm           //根据你的平台改变

# Use rowboat kernel to build against
KLIB ?= $(ANDROID_ROOT_DIR)/kernel   //ANDROID_ROOT_DIR 安卓源码根目录。  kernel 内核 不同的文件夹是不一样的。
KLIB_BUILD := $(KLIB)

# Use android toolchain
CROSS_COMPILE=$(ANDROID_ROOT_DIR)/$(TOOLS_PREFIX)          //工具链,

# Install the compat drivers to the specified $TARGET_PRODUCT only
DESTDIR?=$(ANDROID_ROOT_DIR)/out/target/product/$(TARGET_PRODUCT)   //这边不用改

................................................................................................................................................................

                     freescale源码里面的驱动根目录下的Makefile(改动之后)

.................................................................................................................................................................

# Default target is omap3evm/AM37xevm
TARGET_PRODUCT ?= sabreauto_6q     //freescale的平台名称

# Use rowboat kernel to build against
KLIB ?= $(ANDROID_ROOT_DIR)/kernel_imx    //kernel_imx  内核源码文件名称
KLIB_BUILD := $(KLIB)

# Use android toolchain
CROSS_COMPILE=$(ANDROID_ROOT_DIR)/$(TOOLS_PREFIX)   //工具链地址

# Install the compat drivers to the specified $TARGET_PRODUCT only
DESTDIR?=$(ANDROID_ROOT_DIR)/out/target/product/$(TARGET_PRODUCT)

...................................................................................................................................................................

cd  hardware/ti/wlan/mac80211/compat_wl18xx                                           //进入wl18xx源码里面目录下

$ make ANDROID_ROOT_DIR=<PATH to Android source> CROSS_COMPILE=arm-eabi- ARCH=arm clean   //清空历史

$ make ANDROID_ROOT_DIR=<PATH to Android source> CROSS_COMPILE=arm-eabi- ARCH=arm           //开始编译

$ make ANDROID_ROOT_DIR=<PATH to Android source> CROSS_COMPILE=arm-eabi- ARCH=arm install  //安装到目录

<PATH to Android source> 这个是安卓源码的主目录

编译的时候可能会报错

make[4]: *** No rule to make target `.git/HEAD‘, needed by `/media/Android/JB/jb/hardware/ti/wlan/mac80211/compat_wl12xx/drivers/net/wireless/wl12xx/version.h‘. Stop.

使用下面命令,就可以解决。

$ cd hardware/ti/wlan/

$ git init . $ git add .

$ git commit -asm "Initial commit"

在这里找到问题解决点  http://e2e.ti.com/support/embedded/android/f/509/t/305650

时间: 2024-11-06 07:29:11

编译 wl18xx驱动源码的相关文章

linux驱动开发之蜂鸣器驱动源码分析(一)

蜂鸣器的驱动源码在/driver/char/buzzer/x210-buzzer.c文件中,源码如下 #include <linux/module.h> #include <linux/kernel.h> #include <linux/fs.h> #include <linux/init.h> #include <linux/delay.h> #include <linux/poll.h> #include <asm/irq.

Android系统篇之----编写系统服务并且将其编译到系统源码中

在之前已经介绍了一篇关于如何编写简单的驱动以及访问该驱动的小程序,最后将程序编译到Android内核源码中通过程序访问驱动验证是可以通过的,那么本文就继续这个知识点,把这个驱动程序通过JNI连接创建一个系统服务,提供给上层应用访问改服务功能,可以看到前一篇介绍驱动程序的功能是属于内核层的,而本文介绍的内容是Framework层的知识. 声明:本文内容参考罗升阳的书籍:<Android系统源代码情景分析> 如果想了解更详细的内容非常建议购买此书 非常感谢罗神的这本书,给我带来很多未知的知识,大神

Android系统篇之—-编写系统服务并且将其编译到系统源码中【转】

本文转载自:http://www.wjdiankong.cn/android%E7%B3%BB%E7%BB%9F%E7%AF%87%E4%B9%8B-%E7%BC%96%E5%86%99%E7%B3%BB%E7%BB%9F%E6%9C%8D%E5%8A%A1%E5%B9%B6%E4%B8%94%E5%B0%86%E5%85%B6%E7%BC%96%E8%AF%91%E5%88%B0%E7%B3%BB%E7%BB%9F%E6%BA%90%E7%A0%81/ 在之前已经介绍了一篇关于 如何编写简单的

Android系统篇之—-编写简单的驱动程序并且将其编译到内核源码中【转】

本文转载自:大神 通过之前的一篇文章,我们了解了 Android中的Binder机制和远程服务调用 在这篇文章中主要介绍了Android中的应用在调用一些系统服务的时候的原理,那么接下来就继续来介绍一下如何通过编译Android源码来手动添加一个系统服务,让编译之后的Android系统中存在我们的这个服务,每个应用都可以调用.但是本文得先介绍一下如何编写一个简单的驱动程序,先介绍了驱动程序,然后在通过JNI让framework层访问这个驱动程序,在通过注册服务来封装这个功能,最后在把这个服务添加

Android系统篇之----编写简单的驱动程序并且将其编译到内核源码中

通过之前的一篇文章,我们了解了 Android中的Binder机制和远程服务调用 在这篇文章中主要介绍了Android中的应用在调用一些系统服务的时候的原理,那么接下来就继续来介绍一下如何通过编译Android源码来手动添加一个系统服务,让编译之后的Android系统中存在我们的这个服务,每个应用都可以调用.但是本文得先介绍一下如何编写一个简单的驱动程序,先介绍了驱动程序,然后在通过JNI让framework层访问这个驱动程序,在通过注册服务来封装这个功能,最后在把这个服务添加到系统中,实现上层

你为什么看不懂Linux内核驱动源码?

学习嵌入式Linux驱动开发,最核心的技能就是能够编写Linux内核驱动.深入理解Linux内核.而做到这一步的基础,就是你要看得懂Linux内核源码,了解其基本的框架和具体实现,了解其内核API的使用方法,然后才能根据自己的需求写出高质量的内核驱动程序. 说易行难,很多新人.甚至工作1-2年的开发者刚接触Linux内核时,别说写了,看内核代码可能都是一脸懵逼:明明是C语言,但是就是看不懂是什么意思,除了根据函数名.函数参数.函数的返回值以及注释,了解整个函数的基本功能外,一旦分析其细节,你会发

ubuntu12.04 编译android4.2源码 gcc: fatal error: no input files错误

============问题描述============ 最近在ubuntu12.04 编译android4.2源码时遇到一个编译错误,错误如下: host C++: libhost <= build/libs/host/pseudolocalize.cpp gcc: fatal error: no input files compilation terminated. make: *** [out/host/linux-x86/obj/STATIC_LIBRARIES/libhost_inte

使用vs2010编译lua5.1源码生成lua.lib

一.打开vs2010 二.创建项目 新建项目->win32控制台应用程序->下一步->应用程序设置中选择静态库,不勾选预编译头->完成.具体如下图: 三.拷贝源码 将lua源码中的*.h文件拷贝到项目的头文件文件夹下,将lua源码中的*.c文件拷贝到项目的源文件文件夹下. 四.生成lua.lib 项目右键->生成.此时即可在项目的Debug文件夹下看到生成的 lua.lib了. 使用vs2010编译lua5.1源码生成lua.lib,布布扣,bubuko.com

编译Android系统源码和内核源码

好长时间没有写blog了,之所以没有写,主要还是工作上的事,发现最近的脑子不够用了,今天写点什么呢?就把我之前编译Android系统源码和内核源码的过程记录一下,因为这个过程真的是受益匪浅,看重的不是结果,主要是过程,在这个过程中,我感觉最大的收获就是学习的耐心和毅力,因为在这个过程中那个问题就像是雨点似的天天打在你的脸上,虽然现在网上有很多文章介绍怎么去操作,但是我说句真心话,那些只能提供参考,因为你的工作环境毕竟和他不一样,所以等你按照他的步骤去操作的时候还是会遇到很多问题,当然我写这篇文章