美文网首页
makefile 同时生成多个可执行文件

makefile 同时生成多个可执行文件

作者: 1Z实验室阿凯 | 来源:发表于2016-04-09 10:16 被阅读4138次

之前的问题描述

在makefile中加编译参数-pthread
也就是由这个问题,让我一步步去学习了makefile的使用

makefile 默认只生成第一个可执行文件,所以为了同时编译多个可执行文件,我们用到了伪可执行文件,make 过程中并不生成 这个伪可执行文件,利用依赖的属性,同时生成三个可执行文件

源代码功能介绍

编写程序sender,它创建一个共享内存,然后等待用户通过终端输入一串字符,并将这串字符通过共享内存发送给receiver;最后,它等待receiver的应答,等到应答消息后,将接收到的应答信息显示在终端屏幕上,删除共享内存,结束程序的运行。编写receiver程序,它通过共享内存接收来自sender的消息,将消息显示在终端屏幕上,然后再通过该共享内存向sender发送一个应答消息“over”,结束程序的运行。使用无名信号量或System V信号量实现两个进程对共享内存的互斥使用。

源文件

Code in Github

工程文件说明说明

  1. all 在这里是一个伪执行文件 依赖 init ,sender,recevier三个可执行文件

  2. common 里面不包含main函数,里面是一些封装的函数
    common.c 没有外部依赖 common.o 自动生成

3.makefile会自动添加部分信息

init.o : init.c common.h 

等效于

init.o : common.h

makefile终极版本

all : init sender receiver
.PHONY : clean


init : init.o common.o
    cc -pthread -o init init.o common.o

sender : sender.o common.o
    cc -pthread -o sender sender.o common.o

receiver : receiver.o common.o
    cc -pthread -o receiver receiver.o common.o

init.o : common.h           

sender.o : common.h

receiver.o : common.h

clean : 
    rm  init 
    rm  receiver
    rm  sender 
    rm  *.o

效果演示、

makefile_show_02.gif

相关文章

  • makefile 同时生成多个可执行文件

    之前的问题描述 在makefile中加编译参数-pthread也就是由这个问题,让我一步步去学习了makefile...

  • linux下make以及makefile

    make工具是一个根据makefile文件内容,针对目标(可执行文件)进行依赖性检测(要生成该可执行文件之前要有哪...

  • makefile 常用语法

    使用makefile语法编译生成可执行文件 假设我们在linux环境下有如下几个c文件 我们先创建一个.mk文件 ...

  • 利用makefile文件编译c++源文件

    阅读全文请点击 一、基础知识介绍 在Linux下,要想编译c++项目,并生成可执行文件,需要使用到makefile...

  • makefile的自动推导

    main.c 文件 test.c 文件 Makefile 文件 然后就可以编译出可执行文件了。 Makefile的...

  • 浅谈 LinkMap 检查每个类占用大小

    LinkMap 文件是 Xcode 产生可执行文件的同时生成的链接信息,用来描述可执行文件的构造成分,包括代码段 ...

  • windows下QT程序打包

    生成可执行文件.exe 打包QT程序,通常选用以Release模式生成的可执行文件。如下图所示切换生成可执行文件模...

  • Makefile

    在使用Makefile 编译多个c文件时,出现 Makefile:2:*** missing separator....

  • Linux 中软件安装原理

    configure 检查程序运行环境,以及程序依赖,生成makefile文件 make 根据makefile 文...

  • Makefile学习笔记——4.规则的命令

    1 前言 在前篇Makefile规则中,描述了Makefile是为了生成一个文件,该文件称为目标,而用什么命令生成...

网友评论

      本文标题:makefile 同时生成多个可执行文件

      本文链接:https://www.haomeiwen.com/subject/tqtblttx.html