2014-03-19 154 views
0

我最近在BeagleBoard-xM上安装了一个toochain,它的目标是ARM架构: opkg install task-native-sdk我的位置工具链在哪里?

现在,我想运行make,以建立一个模块。出于这个原因,我必须编辑Makefile。 Makefile的说明,请参阅:

  1. 确保$ PATH变量包含您将使用的工具链的位置交叉编译的模块。

我可以看到,有usrarm-angstrom-linux-gnueabi文件夹。那是我在找什么?在这种情况下,我应该编辑:CROSS_COMPILE := /usr/arm-angstrom-linux-gnueabi

  1. 设置KSRC环境变量设置为您的BeagleBoard的内核源代码的位置。

如果我是正确的,内核源代码位于:usr/src/linux-2.6.32.61。那是我应该编辑的吗?

+0

'我最近在BeagleBoard-xM'上安装了一个toochain你的工具链是交叉编译器工具链还是本地ARM工具链? –

+0

是本地ARM工具链。在这种情况下,我应该在字段“CROSS_COMPILE:”上编辑什么?我认为使用交叉编译器工具链在Linux主机上构建模块更好,然后将编译模块'.ko'复制到目标机器上。 – dempap

+1

如果它的本地arm工具链为什么要交叉编译,只需在驱动程序文件夹中运行make。如果它的交叉编译器然后请在x86上交叉编译它,然后复制.ko –

回答

0

你可以做

$~ which arm-angstrom-linux-gnueabi 

检查你的工具链的位置。既然你做了opkg install它通常会安装在usr/bin中。

如果你可以做which arm-angstrom-linux-gnueabi,它显示了工具链的位置,这意味着它已经存在于你的PATH变量中,你不必再在Makefile中设置。该CROSS_COMPILE变量必须CROSS_COMPILE := arm-angstrom-linux-gnueabi-

KSRC必须的BeagleBoard的内核源代码不是你的x86 PC的内核源代码的源路径。您可以在PC上为beagleboard构建内核,并在板上刷新该内核。然后,KSRC可能是您构建它的内核的位置。

+0

我已经从kernel.org下载了内核源代码,并将它们放在BeagleBoard-xM的'usr/src'下,然后构建内核。这不是我的BB-xM的源代码路径吗? – dempap

+0

我有一个查询。你在哪里做这个'现在,我想在我的主目录下运行make,以便构建一个模块。“board/x86? –

+0

我运行make,以便在BB-xM中构建它。对不起,没有说清楚。 – dempap