
Makefile学习笔记
文章平均质量分 69
奋斗-少年
暂时没有任何描述
展开
-
一点一点学写Makefile(5)-获取文件所在路径
这几天因为工作上的事情忙的焦头烂额,到这几天没有写博客,现在补上。 我们在开发一套代码时,应该保证工程放到任何一个目录中均可以编译成功,但是有时候链接库的时候会造成编译错误,本次就会告诉大家如何动态的获得工程所在的绝对路径 代码下载目录 选择Makefile-5 //makefile CROSS = CC = $(CROSS)gcc CXX = $(CROSS)g++ DEBUG原创 2016-06-08 17:17:00 · 7776 阅读 · 1 评论 -
一点一点学写Makefile(2)-自动搜所当前目录下的所有源文件
上个博客我们使用的是笨方法添加源文件,本次我要实现的是遍历当前文件夹来获得所有的cpp文件 //Makefile //make.force CROSS = CC = $(CROSS)gcc CXX = $(CROSS)g++ DEBUG = -g -O2 CFLAGS = $(DEBUG) -Wall -c RM = rm -rf SRCS = $(wildcard *.cpp) //原创 2016-06-01 20:26:46 · 1602 阅读 · 0 评论 -
一点一点学写Makefile(3)-增加第三方库和头文件
我们在写代码的时候不一定都是有自己来完成,一个工程中会大量使用一些比较优秀的动态库、静态库等,我们在使用这些库完成所有的代码后,需要在编译的时候将这些库使用的头文件添加到我们的工程上,将他的库文件也添加到我们的工程中,接下来我们就来看一下怎么来添加。 我们在项目中很少将第三方库与我们自己的代码放到同一个目录中,而是有一些约定俗成的存放方法: 如上图,我们会将第三方库的头文件放到includ原创 2016-06-02 10:19:48 · 25179 阅读 · 3 评论 -
一点一点学写Makefile(4) - 编译时指定宏参数
我们在项目中有时为了方便会自定义一些与项目无关的功能,例如打印输出一些提示信息、将关键协议生成文件等,但是如果每次都通过修改代码的方法来实现,测试部门就会认为你改的这些代码可能会带来其他问题。对于这种情况,我一般会通过开关宏来控制,同时编译多个文件,在测试时使用一个正常发布的版本,如果发现问题并且无法判断问题的来源时,可以使用这个由打印输出的版本,找到问题并解决后在切换成为原来的版本。 先上一端原创 2016-06-03 08:08:39 · 2085 阅读 · 0 评论 -
一点一点学写Makefile(6)-遍历当前目录源文件及其子目录下源文件
有时候,我们在开发的时候需要将本次工程的代码分成多个子目录来编写,但是在Makefile的编写上却是个问题,下面我就教大家怎么构建带有子文件夹的源代码目录的自动扫描编译 下面这张图是我的文件树 这里面src目录下是我的源代码,我将功能代码分成了三个子模块,分别为test1, test2, test3, 调用这三个子模块的是main.cpp文件,下面我将这三个子模块的代码// src/原创 2016-10-26 15:49:12 · 11328 阅读 · 6 评论 -
一点一点学写Makefile-1
相信很多Linux开发者 都得自己来写Makefile,刚开始学习学写这个的时候都会碰到很多困难,我之前没有自己独立完成过Makefile,都是在公司已有的模板上添加。现在突然有一个很大的想法就是从零开始写Makefile,这个博客就是我的学习笔记。 开始准备我写的代码,总共七个文件,内容都很简单,工程的下载地址是: 代码如下: //add.h #ifndef ADD_H #define原创 2016-06-01 13:53:20 · 1324 阅读 · 2 评论