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

How do I build just the directory containing my updated source code

我通过从 Samsung 和 AOSP 下载源代码并按照 README 文件中的说明 运行ning 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 源文件时构建一个更新的映像来刷新我的 phone 并尝试查看结果?

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

谢谢, 肖恩

这里有很多错误,所以不可能弄清楚应该发生什么。我只是描述发生了什么。

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 命令。