通用多目录makefile的写法】的更多相关文章

我的项目文件层次是:项目名称/include.output.src src/admin.stu.tch.common 最外层的Makefile: DEBUG = yMYDEBUG = DEBUGifeq ($(DEBUG),y)DEBFLAGS = -O -g -D$(MYDEBUG)elseDEBFLAGS =endif PRJ_HOME := $(shell pwd)SOURCES := $(wildcard *.c)OBJECTS := ${SOURCES:%.c=%.o}INCPATH…
最近需要写一个测试程序,这个测试程序需要集成一些功能,写在同一个文件看上去很不好,多个文件的Makefile又不是很熟,于是分享下面这篇文章 先介绍下,调试Makefile时,想知道某个变量的值,怎么办,在该变量下方加入: $(shell echo $(VAR) > a.txt) 转自:http://blog.csdn.net/yuzhihui_no1/article/details/44810357 前面已经分享了单目录项下多文件的makefile的编写,现在来看看多目录下多文件makefil…
1.前言 目前从事于linux下程序开发,涉及到多个文件,多个目录,这时候编译文件的任务量比较大,需要写Makefile.关于Makefile的详细内容可以参考网上流传非常广泛的<跟我一起写Makefile>http://blog.csdn.net/haoel/article/details/2886/,作者是个大牛,非常佩服. 2.简单测试 测试程序在同一个文件中,共有func.h.func.c.main.c三个文件,Makefile写法如下所示: 1 CC = gcc 2 CFLAGS =…
1.前言 目前从事于linux下程序开发,涉及到多个文件,多个目录,这时候编译文件的任务量比较大,需要写Makefile.关于Makefile的详细内容可以参考网上流传非常广泛的<跟我一起写Makefile>http://blog.csdn.net/haoel/article/details/2886/,作者是个大牛,非常佩服. 2.简单测试 测试程序在同一个文件中,共有func.h.func.c.main.c三个文件,Makefile写法如下所示: CC = gcc CFLAGS = -g…
之前GCC那部分我提到过,gcc啥啥啥啥傻傻的那个指令只能够编译简单的代码,如果要干大事(例如突然心血来潮写个c开头的神经网络库之类的),还是要写Makefile来编译.其实在Windows下通常用IDE,例如Visual Studio,那个所谓的"项目"就有点像Makefile.通常Windows系统下这类IDE会自动帮你配置了编译时需要的东西,而Linux环境下我们需要自己来写Makefile来实现IDE的效果,听起来会麻烦点,实际上掌握了技巧之后就那样. 这部分实验指导书里面写的…
#一个通用的Makefile,可以在linux各大平台下通用编译c程序,这个版本在gcc平台下实现,如需要课更改第二部的gcc,也可以在第三部添加所需要的库,如有错误,欢迎即使纠正 #1.遵循可移植操作系统接口,即应用程序接口(API)+可移植性c源码DSEF=_D_POSIX_SOURCE #2.这里以gcc平台下编译为例,如需要可改为g++,arm-linux-gcc和mips等平台CC=gcc RM=rm -rfFLAGS=-g -o #3.包含的库,如需要,在后面添加LIB=-lterm…
在linux下面下写程序少不了写makefile,如果每个文件都按部就班的详细的写编译脚本,效率势必低下:makefile提供了自动化变量.模式规则等,稍加利用可以提高写makefile的效率.下面列举一个简单通用的makefile书写规则: SRCS = $(wildcard *.c)OBJS = $(SRCS:.c = .o)CC = gccINCLUDES = -I/usr/your_path/includeLIBS = -L/usr/your_path/libCCFLAGS = -g -…
目录结构 由于只是用来编译简单的小型程序,所以目录尽量简洁: . ├── build │   ├── bin │   ├── .dep │   └── obj ├── makefile └── src 这里用户需要创建的就只有makefile和src目录(里面放入项目.h和.cpp文件). build目录下用于存放编译中间文件和最终的可执行程序,其中.dep用于记录.cpp文件的头文件依赖关系. 自动生成头文件依赖 利用g++命令中推导头文件依赖的功能生成每个.cpp文件对应的.d依赖文件,再将…
在学习c语言GUI编程时想必大家都会遇见这样一个问题买就是每次编译都要敲`pkg-config --cflags --libs gtk+-2.0`这个烦恼吧 这是我们可以编写一个makefile文件这样就不用每次都敲这一大串的代码 以下是makefile文件代码: 希望能帮大家解决问题 第二种写法 CC = gcc CFLAGS = LDFLAGS = `pkg-config gtk+-2.0 --cflags --libs` SRCS = $(wildcard *.c) TARGETS = $…
一个项目下的文件比较多,如果单个的输入,比较费劲,所以就需要把编译过程写进一个MakeFile文件中. 下面建立5个文件,3个cxx文件,2个hxx头文件 //filename main.cxx #include<iostream> #include"printf1.hxx" #include"printf2.hxx" using namespace std; int main(void) { cout<<"Hello World!…