zoukankan      html  css  js  c++  java
  • 每天一个topic --makefile 和gcc

    1. 获取当前所有的.c 文件 由.c 得到.o文件

    SOURCE=$(wildcard ./*.c ../*.c)

    OBJS   = $(patsubst %.c,%.o,$(SOURCE)) 

    2.可执行文件依赖与当前所有.c 文件

    $(target):$(SOURCE)

      gcc -cflag -o target -dlflag

    3. cflag 

      指定头文件路径 -I../ -I./ 指定动态库或者(静/态)库路径 -L../ -L./ 

           -I../log/ -I./

    4.dlfage 库路径

      -Wl   允许动态搜索库

          -Wl,-rpath,./,-rpath,../log/ 指定动态库搜索路径

    5. 要编译动态库

        cflag -shared -fPIC

     gcc -shared -fPIC -o libtest.so test.c

    6.要编译静态库

      gcc -c sourec 

      ar crv libtest.a $(OBJS)

    -lefence -lpthread

  • 相关阅读:
    第三次作业
    第二次作业
    第一次作业
    第五次作业
    第四次作业
    第三次作业
    第二次作业
    随笔
    第五次作业
    第四次作业
  • 原文地址:https://www.cnblogs.com/chonghui1001/p/3265698.html
Copyright © 2011-2022 走看看