如何构建包含更新的源代码的目录

时间:2015-10-01 01:58:23

标签: android kernel gnu-make device-driver kbuild

我通过从Samsung和AOSP下载源并按照README文件中的说明运行make,成功为Samsung Note 3创建了一个映像。但现在我想修改设备驱动程序,并在图像中查看结果。这意味着我真的不想重新创建整个图像;而只是修改过的文件,即/ drivers / char / examples目录。我已经尝试过" m"," mm"," mmm"但我收到以下错误:

sansari@ubuntu:~/WORKING_DIRECTORY$ m
m: command not found
sansari@ubuntu:~/WORKING_DIRECTORY$ mm
The program 'mm' is currently not installed. You can install it by typing:
sudo apt-get install multimail

我还尝试从示例目录运行make,然后得到:

sansari@ubuntu:~/WORKING_DIRECTORY/drivers/char/examples$ make 
make --directory=src
make: *** src: No such file or directory.  Stop.
make: *** [src] Error 2

以下是我在此目录中的内容以及make文件:

sansari@ubuntu:~/WORKING_DIRECTORY/drivers/char/examples$ ls
backup  examples.c  hello1.c  Makefile
sansari@ubuntu:~/WORKING_DIRECTORY/drivers/char/examples$ more Makefile 
lib_src := src 
lib_headers := headers 
.PHONY: all $(lib_src) $(lib_headers)
$(lib_src) :
    $(MAKE) --directory=$@
    $(lib_*): $(MAKE) --directory=$@

obj-$(CONFIG_TOS)   += examples.o

我应该怎么做,以便在更新c源文件时,我可以构建更新的图像来刷新我的手机并尝试查看结果?

我想知道我是否删除了examples.ko,make会再次重建。如果我只为/ examples目录发出make,问题是这会工作吗?

谢谢, 肖恩

1 个答案:

答案 0 :(得分:0)

这里有很多错误,所以无法弄清楚应该发生什么。我只想描述发生了什么。

sansari@ubuntu:~/WORKING_DIRECTORY/drivers/char/examples$ make 
make --directory=src
make: *** src: No such file or directory.  Stop.
make: *** [src] Error 2

表示Makefile期望在您运行src的位置下存在名为make的目录。该目录中应该有一个名为Makefile的文件,它将提供有关如何编译examples.chello1.c的进一步说明。

假设src目录位于~/WORKING_DIRECTORY下。在这种情况下,您将通过make -f drivers/char/examples调用make。

但是,我猜测在该目录或其他目录中,你应该看到我猜你被指示运行的程序mmm。而且我也猜测这会发出更多不寻常的 make 命令。