1

通过从三星和 AOSP 下载源代码并按照自述文件中的说明运行 make,我成功地为三星 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 ,这会起作用吗?

谢谢,肖恩

4

1 回答 1

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 via make -f drivers/char/examples

但是我猜在那个目录或其他目录之一中,您应该看到程序,m或者mm我猜您被指示运行。而且我也猜测这将发出更不寻常的make命令。

于 2015-10-12T00:45:01.183 回答