Build 我的位置工具链在哪里?
我最近在BeagleBoard xM上安装了一个toochain,它的目标是ARM架构:Build 我的位置工具链在哪里?,build,makefile,kernel-module,toolchain,Build,Makefile,Kernel Module,Toolchain,我最近在BeagleBoard xM上安装了一个toochain,它的目标是ARM架构: opkg安装任务本机sdk 现在,我想运行make,以构建一个模块。由于这个原因,我必须编辑Makefile。Makefile说明参考: 确保$PATH变量包含将用于交叉编译模块的工具链的位置 我可以看到在usr下有一个arm-angstrom-linux-gnueabi文件夹。这就是我要找的吗?在这种情况下,我应该编辑:CROSS\u COMPILE:=/usr/arm-angstrom-linux-gn
opkg安装任务本机sdk
现在,我想运行make
,以构建一个模块。由于这个原因,我必须编辑Makefile。Makefile说明参考:
usr
下有一个arm-angstrom-linux-gnueabi
文件夹。这就是我要找的吗?在这种情况下,我应该编辑:CROSS\u COMPILE:=/usr/arm-angstrom-linux-gnueabi
usr/src/linux-2.6.32.61
。这就是我应该编辑的吗?你可以这样做
$~ which arm-angstrom-linux-gnueabi
检查工具链的位置。由于您进行了opkg安装
,因此它通常会安装在usr/bin中
如果您可以执行哪个arm angstrom linux gnueabi
,并且它显示了工具链的位置,这意味着它已经存在于PATH
变量中,那么您不必再次在Makefile中进行设置。CROSS\u COMPILE
变量必须是CROSS\u COMPILE:=arm angstrom linux gnueabi-
KSRC
必须是beagleboard内核源的源路径,而不是x86 pc的内核源。您可以在pc上为beagleboard构建内核,并在主板上闪存该内核。然后KSRC可能是您构建它的内核的位置。我从kernel.org下载了内核源代码,将它们放在BeagleBoard xM上的usr/src
下后,我构建了内核。这不是我的BB xM的源路径吗?我有一个查询。你现在在哪里做这个,我想在我的主目录中运行make,以便构建一个模块。
board/x86?我运行make,以便在BB xM中构建它。很抱歉没有说清楚。很抱歉,我不太确定BB xM,但通常规则是在构建模块时,KSRC应该是包含内核源代码的路径(运行相同的内核,这是因为配置需要)。如果您已经构建了内核,在板上闪存了内核,并将源代码放到usr/src,那么您的KSRC可以是usr/src我最近在BeagleBoard xM上安装了一个toochain
您的工具链是交叉编译器工具链还是本机ARM工具链?是本机ARM工具链。在这种情况下,我应该在字段“CROSS_COMPILE:”上编辑什么?我认为最好使用交叉编译器工具链在Linux主机上构建模块,然后将编译后的模块.ko
复制到目标机器上。如果是它的本机arm工具链,为什么要交叉编译,只需在驱动程序文件夹中运行make即可。如果是交叉编译,请在x86上交叉编译,然后复制。谢谢你的回复。有一件事我搞不清楚:我将在x86机器上交叉编译。在KVER上,我将编辑BB xM的内核版本(2.6.32),但我必须在KSRC上编辑什么?我是否必须将BB内核源代码复制到x86机器并编辑BB源代码的路径?这是编译的内核源代码吗?