Linux_构建命令和文件-make和makefile

安装和编译

源码的安装一般由3个步骤组成:配置(configure)、编译(make)、安装(make install)
    Make可以从一个名为Makefile的文件中获得如何构建程序的知识

基本概念

make 命令 
  定义C/C++编译选项,C++使用C++11标准
    CFLAGS := 
    C++FLAGS := -std=c++11
Makefile 文件: 显示规则,隐式规则,变量定义,文件指示,注释
 1.Makefile的核心是规则 rules
 2.依赖关系和依赖方法  target prerequisites
    依赖方法通过规则中的命令(commands)来定义的
 3.变量规则以及特殊变量
    $@ 代表目前的目标
	%这样的通配符
	
	[=]和[:=]符号的区别   [:=]必须先定义然后再使用
	
 自动选择编译源文件	 “伪目标
 
make 如果 target 文件不存在,
    或是 target 文件依赖的 .o 文件(prerequities)的文件修改时间要比 target 这个文件新,
      就会执行后面所定义的命令 command 来生成 target 这个文件
  编译器gcc、源文件SRC、头文件INC、目标文件OBJ、编译选项CFLAGS 和链接选项LDFLAGS、LIBS等 
 以及伪目标clean、compile、debug的执行规则	

示例

 执行文件包含2个源文件
  main.c sin_value.c 
 一般步骤: 先进行目标文件的编译 在链接成执行文件,并加入libm数学库,产生可执行文件

示例 makefile

LIBS = -lm
OBJS = main.o sin_value.o
CFLAGS = -Wall
#每个.cpp生成一个对应的目标文件

objs/%.o : src/%.cpp
main:${ONJS}
	gcc -o $@ ${OBJS} ${LIBS}
clean:
	rm -f $(OBJS) 		

基本命令方式

目标: 依赖文件  
  <tab>命令
posted @ 2024-12-11 18:05  辰令  阅读(35)  评论(0)    收藏  举报