`
li-yuan
  • 浏览: 66530 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

一个简单而实用的make文件

阅读更多

原来一直都是手工为项目维护一个make文件,特别是文件越来越来多的时候,维护make文件就成了一个很大的负担,其实GNU Make还提供了一个函数$(wildcard (wildcard )可以生成源程序文件列表。

PROJECT=ptest
LIBS=-lpthread
SOURCE=$(wildcard ./src/*/*.c) $(wildcard ./src/*.c)
OBJS=$(patsubst %.c,%.o,$(SOURCE))
CFLAGS=-g -Wall -O
CC=gcc
vpath %.h ./src/head
vpath %.c ./src
vpath %.c ./src/*
$(PROJECT):$(OBJS)
        $(CC) $(CFLAGS) $(LIBS) $(OBJS) -o $@
.PHONY:clean
clean:
        $(RM) ptest $(OBJS)
分享到:
评论

相关推荐

    Android安卓手机查看MD(makedown)文件阅读器应用APP

    一款纯粹阅读功能的Android安卓手机查看MD(makedown)文件阅读器应用APP,支持直接浏览查看MD(makedown)文件,支持浏览手机文件夹里面的MD文件,简单实用的MD文件阅读APP

    万能makefile写法详解,一步一步写一个实用的makefile

    这里指示了main.o目标依赖于哪几个源文件,我们只要把这一行的内容,通过make的include指令包含到makefile文件里,即可在其任意一个依赖文件被修改后,重新编译目标main.o。 下面详解如何生成这个.d文件。 (二) ...

    filewatcher:适用于macOS的简单审核实用程序

    一个适用于macOS的简单审核实用程序 Filewatcher是用于macOS的审核和监视实用程序。 它可以审核macOS的系统审核管道中的所有事件,并按进程或文件过滤它们。 您可以使用该实用程序执行以下操作: 监视对一个文件或...

    watchlion:一个简单的Shell实用程序,用于监视Mac OS X 10.7+(Lion或更高版本)上的文件系统事件。

    一个简单的Shell实用程序,用于监视Mac OS X 10.7+(Lion或更高版本)上的文件系统事件。 壳牌公用事业 Watch Lion带有一个名为watchlion的实用程序脚本。 请在外壳程序提示符下键入watchlion --help ,以了解有关此...

    Qt中怎么用Ui文件

    ui文件最终会被翻译成标准的C++代码,并存入一个.h文件中,这个过程在调用make之后才进行,所以初始情况下你是看不到这个ui_myform.h文件的,只有经过了make过程该头文件才生成。不过没关系,没有这个文件我们照样能...

    bin2c:将任何二进制文件转换为 C 源代码的简单实用程序,可以稍后编译并链接到可执行文件

    将任何二进制文件转换为 C 源代码的简单实用程序,可以稍后编译并链接到可执行文件 bin2o 将任何二进制文件转换为 *.o 的简单脚本,它可以直接与其他目标文件链接到最终的可执行文件。 它还创建了适当的头文件 要求...

    HapticKey:一个简单的实用程序应用程序,在点击“ Touch Bar”时触发触觉反馈

    由于Touch Bar只是一个平板,因此除了视觉上显示的按键变化外没有其他反馈,因此特别是在像使用Vim一样点击ESC键时,这非常不舒服。 通过添加触觉反馈,可以使触控板而不是Touch Bar本身振动,这有助于改善Touch ...

    hodgepodge:无关脚本和实用程序的集合,这些脚本和实用程序太小而无法获得自己的存储库

    大杂烩实用程序这是一个杂项脚本和实用程序的集合,我觉得这些脚本和实用程序太小了,无法获得自己的存储库,但仍然很有用。 运行make编译所有二进制文件, make install或install.sh创建指向二进制文件的符号链接。...

    计算机应用技术(实用手册)

    让默认的就可以了,但是超频玩者是肯定不会放过任何可以提高性能的东西的,所以如果你想在这里让你的电脑提升一点性能的话,就必须慢慢试验,选择一个适当的参数才能让你的计算机达到性能和稳定的最佳状态!...

    biomake:类似于GNU-Make的实用程序,用于管理构建和复杂的工作流程

    这是一个类似的实用程序,用于管理涉及多个从属文件的构建(或分析工作流)。 它支持GNU Make的大多数功能,以及诸如基于集群的作业处理,每个目标多个通配符,MD5校验和(而不是时间戳)的整齐扩展以及Prolog中的...

    MASM汇编编辑器 好用 简单

    最实用,最简单编程软件。masm编程器汇编语言程序格式及MASM 汇编语言的实现也是先利用某种编辑器编写汇编语言源程序(*.ASM),然后经过汇编得到目标模块文件(*.OBJ)、连接后形成可执行文件(*.EXE)。 1、...

    ubuntu和linux下实用的bin2bytes

    Ubuntu和Linux下非常实用的文件和图片转换字节数组的程序和源码,windows下需要自己简单修改下也可以正常使用 使用方法: make clean make ./bin2bytes xxfile(要输入的文件名) 生成字节数组如下 unsigned...

    chromecast-tools:一组简单的实用程序,用于处理Chromecast USB启动映像文件

    cc-mangle-bootimg是一个例外,它使用Android引导映像文件(通常由mkbootimg生成)并处理其标头,以便具有易受攻击的引导加载程序的Chromecast会将其解释为签名映像并进行引导。工具cc-mangle-bootimg :更改启动...

    r53-updater:在 Route 53 中更新单个 A 记录的简单实用程序

    建造 $ make成功的构建将留下一个可执行文件r53-updater 。 此可执行文件没有外部依赖项,因此您可以安全地将其复制到另一台机器并在那里使用。跑步您需要创建一个配置文件供更新程序使用。 该文件需要包含以下信息...

    coll2tde:将 mongo 数据库转换为 TDE 文件

    最基本的用途是将一个集合作为一个整体转换为一个 DataExtract 文件。 然而,这假设集合是扁平的,并且所有文档都是简单的键值。 这意味着不允许嵌入文档,因为 DataExtract 是简单的表。 如果文档不仅仅是键值,...

    tar:用C语言实现的简单tar实现

    一个简单的tar实现 版权所有(c)2015 Jason Lee @ calcccrypto在gmail.com 请参阅许可文件以获得许可。 这只是tar文件格式的简单实现。 它可以压缩文件并解压缩它们。 就是这样。 尽管还编写了其他一些实用程序...

    crtime:确定Linux上文件创建时间的简单实用程序

    哇。 在Linux上很难获得文件创建时间: 但是谁会需要呢? 我。 以下是构建和测试的方法: sudo apt-get install e2fslibs-dev ./configure make test ... 想建立一个.deb吗? 尝试./dist.sh 。

    多个 USB 文件闪存器

    安装说明包含一个 makefile 用于简单地构建和安装所有需要的文件到系统中。您可以同时构建 CLI 和 GTK 工作区、仅 CLI 工作区或仅 GTK 工作区。make cli && sudo make install-cli将只构建和安装 CLI 工作区...

    ExtractDRS:命令行实用程序,用于从GENIE引擎中提取DRS文件的内容

    一个命令行实用程序,用于从提取.drs和.slp文件,帝国时代(I&II)和《星球大战:银河战场》使用了该工具。 编译中 简单的。 make ./extractdrs <directory/wheredrs/files/are/located/ 该程序是用C ++ 11...

    popsicle:多个 USB 文件闪存器

    包含一个 makefile 用于简单地构建和安装所有需要的文件到系统中。 您可以同时构建 CLI 和 GTK 工作区、仅 CLI 工作区或仅 GTK 工作区。 make cli && sudo make install-cli将只构建和安装 CLI 工作区 make gtk && ...

Global site tag (gtag.js) - Google Analytics