导航:首页 > 源码编译 > 为什么需要硬件驱动编译

为什么需要硬件驱动编译

发布时间:2022-11-30 13:34:50

linux驱动开发 前 为什么要配置编译内核

编译前当然要配置一下内核啊,make menuconfig ,生成默认配置文件 .config ,这个文件是设置 cpu 体系,及很多驱动选项的,你没配置这个,怎么可能编译那

前面那个说 linux 和微软竞争是扯淡的那位,我只能说你根本不懂内核编译,无知

新下载的内核都是没有默认 .config 需要你找到一个默认的config 文件,比如 arch/arm/configs/ 下是 arm cpu 很多的默认配置,当然你也可以把你以前的 config 文件拷贝到新内核目录下。

.config 是配置编译内核的最初步骤,你要编译驱动程序,就必须要了解这个,多上网查下资料

然后重新编译

② 如何编译驱动程序

驱动的编译和上层应用程序的编译完全不同,作为初学者应该先了解一下,即使你还不懂得怎么写驱动程序。
首先安装DDK,然后随便找一个例子来测试。在菜单中找到BUILD环境菜单执行,不同的系统要使用不同的BUILD环境。会打开一个DOS窗口,这时CD到那个例子程序,输入 build –cZ回车就可以了。 驱动程序都是用一个由DDK提供的叫build.exe的工具编译的。此程序以一个名为SOURCES的文件作为输入,该文件中包含目标可执行文件的名称、类型和要创建的可执行文件的路径,注意这个文件没有后缀名。
SOURCES的文件格式:
TARGETNAME=drivername ,
- 本参数用于指定生成的设备驱动程序名称(不需后缀名),所产生的文件
- 为drivername.sys.

TARGETPATH=./lib
- 本参数用于指定生成的设备驱动程序所存放的路径. 一般采用./lib.

TARGETTYPE=DRIVER
- build能够生成许多不同的目标对象,设备驱动程序一般选用 DRIVER.

INCLUDES=path1;path2;...
- 本参数是可选的, 用于指定其他的#include文件的搜索路径.

TARGETLIBS=lib1;lib2;...
- 本参数是可选的, 用于指定其他的lib库文件的搜索路径.

SOURCES=file1.c file2.c ...
- 本参数用于指定需被编译的全部源文件名称, 后缀名不能省略,文件名之间用空格分开.
SOURCES文件是必需的,如果没有它则表示没有任何源文件需要编译。
如果要换行可以用 ‘/’ 符号,表示对上一行的继续。

也可以创建DIRS文件,DIRS文件用于指定在当前目录下必须创建的子目录。
DIRS文件格式:
DIRS文件的内容由一系列用空格分开的目录名组成
DIRS = /
subdir1 /
subdir2 /
subdir3
DIRS文件是可选的。

有的时候,会提示找不到依赖的文件(.h,.lib 之类),其实设置好 source 文件的
INCLUDES和TARGETLIBS就可以,我第一次编译时就碰到这个问题,和VC环境区别较大,但习惯就好。

③ Android源码编译在真机上运行时为什么要同时编译驱动

模拟器也需要驱动啊,是goldfish,真机没有驱动(针对硬件的),运行不起来的。源码是不带驱动源码的,驱动源码要另外下载,源码里的是已经编译好的kernel。

阅读全文

与为什么需要硬件驱动编译相关的资料

热点内容
redhatlinux最新 浏览:177
python字典编程词汇 浏览:144
微信和服务器如何通讯 浏览:10
百家号服务器配置有什么用 浏览:598
怎么为电脑加密 浏览:58
服务器出现差错是什么意思 浏览:616
苹果app移到商店里怎么删掉 浏览:254
phpjsphtml 浏览:63
吃鸡手机国际服服务器超时怎么办 浏览:68
努比亚Z5无命令 浏览:642
展示网站云服务器 浏览:872
代码混淆器php 浏览:367
贝恩pdf 浏览:208
丙烯pdf 浏览:368
云服务器华硕 浏览:713
sublime3运行python 浏览:191
怎么把安卓视频传到苹果上面 浏览:83
手机拍鬼片用什么app 浏览:642
爬山虎app是干什么用的 浏览:507
有哪些写给程序员的歌 浏览:51