makefile

来源:互联网 发布:网络直播歌手 编辑:程序博客网 时间:2024/05/21 07:09
Q: 编译链接可执行文件一定要用到makefile吗?
A: 只不过现在很多编译器采用了这种方式而已。
   你总要提供一个方法来管理多个文件的工程呀。
   这个文件是提供给编译器一个编译的规则而已。你也可以用其它的方法。
Q: 哦,一个文件需要用makefile吗?
A: 其它多个文件也可以不用makefile
    只是麻烦一些。
    我们的习惯是不管多少文件都用makefile
    因为你的程序总会添东西,总会变成多个文件
    一个文件不写makefile也可以。但你每次都要打命令自已编译。
    长久来看还是写makefile更简洁即使只有一个文件
Q: 有makefile文件,省得些每次都写那么多命令了。是吗?
A: 一个命令make就搞定了。
    比如只有一个文件gcc -o test.c
    这样编译也可以。
    但你写了makefile
    make就可以了。如果你编译次数越多。一定是make需要你输入的更少写。
    所以即使是永远只有一个文件,我也原意写makefile
Q:  IDE里面都没用makefile文件,是编译器提供了其他方法吗?
A:  大部分都用了makefile
    只是他自已生成的。
    不用你写了而已
    你总要有一个文件记录下你工程的组织方式。
    没有更好的方法。
    IDE也不例外。
Q:  IDE中编写程序之后有自己的工程文件,没有makefile文件,除非自己导出makefile文件。
A : makefile只是一个名字。
    你叫他小猫,小狗也是一样的。
    你可以打开工程文件自已看里面的内容,可以研究一下。
    大部分的工程文件都是文本文件,你可以看到内容的。 
    我的意思是说:对不同的编译器来说。他的makefile规则可能完全不同。
    但是一定要有一个这样的文件来定义工程的编译方式。
Q:  明白了
A:  或者他根本不叫makefile
    不同的人有他的定义方式。
    你写编译器也可以定义自已的规则。
    总之makefile中提供了工程中有哪儿些文件,这些文件应该如何编译,如何联接,最终生成什么样的文件。
    但是这些信息如果提供给编译器,需要有特殊的约定。
    大家按约定来就可以了。
Q:  大概明白了