zoukankan      html  css  js  c++  java
  • 初学makefile

    makefile 需要用到 常用命令、shell、正则表达式、gcc,比较综合。

    今天写了一个做一个记录,以后系统总结一下。

    目录结构:russia---------include、src、mian.c、Makefile

         include-----------russia.h

         src-----------------fun1、fun2、fun3、fun4、fun5...Makefile

    Makefile 1:

    subobj = ./src/fun1.o ./src/fun2.o ./src/fun3.o ./src/fun4.o ./src/fun5.o ./src/fun6.o


    all:main.o SUBDIR
    gcc -o main main.o $(subobj)

    main.o:main.c
    gcc -c main.c

    SUBDIR:
    make -C src

    clean:
    rm main.o *.o

    Makefile 2:

    all:fun1.o fun2.o fun3.o fun4.o fun5.o fun6.o

    fun1.o:fun1.c
    gcc -c fun1.c
    fun2.o:fun2.c
    gcc -c fun2.c
    fun3.o:fun3.c
    gcc -c fun3.c
    fun4.o:fun4.c
    gcc -c fun4.c
    fun5.o:fun5.c
    gcc -c fun5.c

    MakeFile例子
    
    OBJS = main.o child.o
    CC = gcc 
    FLAGS = -g -O -Wall
    CSOURCE = main.c child.c
    HSOURCE = btree.h
    
    btree : $(OBJS)
            $(CC) $(FLAGS) -o $@ $^
    %.o : %.c 
            $(CC) $(FLAGS) -o $@ -c $<
    
    clear :
            rm *.o btree

     

    注意的问题:

     1、只编译不链接,用gcc -c不用-o

     2、全局变量放在 .c文件中, ,h中添加外部变量,避免重复声明问题。

  • 相关阅读:
    设计原则
    git 教程
    git新建分支及提交代码到分支
    DataTemplateSelector介绍
    Semaphore 类 的使用理解C#
    C#中Finalize方法的问题
    WPF原理剖析——路由事件
    WPF自学入门(四)WPF路由事件之自定义路由事件
    路由事件
    commandBinding 的命令
  • 原文地址:https://www.cnblogs.com/tshua/p/5712326.html
Copyright © 2011-2022 走看看