如何制作这个makefile?

时间:2013-04-22 22:07:36

标签: c compilation makefile

所以我只是在理解这里要做什么时遇到一些麻烦。

我需要创建一个执行以下操作的makefile:

  • 输入make p1时,它会自动编译这三个文件。
  • 输入make run_p1时,它会运行可执行文件并输出。
  • 键入make clean_p1时,会删除p1的可执行文件。

三个文件名是p1_hellomake.c,p1_hellfunc.c和p1_hellomake.h。

p1_hellomake.c

#include 

int main() {
// call a function in another file
myPrintHelloMake();

return(0);
}

p1_hellofunc.c

#include 
#include 

void myPrintHelloMake(void) {

printf("Hello makefiles!\n");

return;
}

p1_hellomake.h

/*
example include file
*/

void myPrintHelloMake(void);

正如你所看到的那样,在任何这些块中包含之后都没有声明,所以有些错误,但是idk是什么导致我不确定为什么。我从下面的链接中获得了这些代码,但我并不完全理解它。

http://www.cs.colby.edu/maxwell/courses/tutorials/maketutor/

修改

所以我想我拥有它。

DEPS = p1_hellomake.h

p1: p1_hellomake.c p1_hellofunc.c
    gcc -o p1 p1_hellomake.c p1_hellofunc.c -I.

run_p1: p1
./p1

clean_p1: 
    rm p1

感谢您的帮助。如果不知道那些内容是什么,我就不会想到这一点。不过,我仍然有一个问题。

在获得多个可执行文件的情况下,有不同的方法吗?我唯一的可执行文件是p1,它获得了所需的输出,但需求引用了多个。这个作业确实有三个部分,所以它可能意味着来自同一文件中其他部分的可执行文件。教这个的人没有很好的英语。

0 个答案:

没有答案