一个编译C++ 文件常用得 makefile ,直接拷贝就可以用哦。

原创 2013年12月04日 20:39:29

SRCROOT 当前源代码目录

SRCROOT=../src/


CC = g++


INCLUDE_PATH=$(shell find $(SRCROOT) -type d) ../src

INCLUDE=$(addprefix -I ,$(INCLUDE_PATH))


#设置编译得参数 -g 表示可以产生debug符号

FLAGS = -g -fPIC


#SRC_FILE 也可以这样来做:

#SRC_FILES=$(wildcard *.cpp)
#DIR=$(notdir $(src))
#OBJS=$(patsubst %.c%.o$(dir) )


SRC_FILES=$(shell find $(SRCROOT) -name '*.cpp') 

OBJS=$(patsubst %.mm,%.o,$(patsubst %.cpp,%.oo,$(SRC_FILES)))


all:    ALLEXE


ALLEXE:  $(OBJS)

$(CC) $(FLAGS) -o $@ $^

find $(SRCROOT) -name '*.o' | xargs rm -fr

find $(SRCROOT) -name '*.oo' | xargs rm -fr

find $(SRCROOT) -name '*.s' | xargs rm -fr

find $(SRCROOT) -name '*.ss' | xargs rm -fr


%.o: %.cpp

$(CC) $(FLAGS) -o $@ $<

#也可以这样写:

# $(OBJS): %.o: %.c
# $(CC) -c $(CFLAGS) $< -o $@ 

#    记得命令用tab开头哦。。。


clean:

find $(SRCROOT) -name '*.o' | xargs rm -fr

find $(SRCROOT) -name '*.oo' | xargs rm -fr

find $(SRCROOT) -name '*.s' | xargs rm -fr

find $(SRCROOT) -name '*.ss' | xargs rm -fr

rm -fr ALLEXE 

相关文章推荐

bootstrap 修改 删除,直接复制粘贴就可以用

function editFun(){ if($(".check_row:checked").length!=1){ alert("请选择一条要修改的数据"); r...

表格控件mmGrid 精简版 直接就可以用

Insert title here
  • a1ccwt
  • a1ccwt
  • 2016年11月01日 14:43
  • 1081

沉浸式状态栏解决方案(studio直接依赖一个库就可以)

原文出处:http://laobie.github.io/android/2016/02/15/status-bar-demo.html  伴随着 Android 5.0 发布的 Material ...

LoadImage一个从网络访问图片,并存到缓存(内存,磁盘)直接可以用

package com.tarena.util; import java.io.ByteArrayOutputStream; import java.io.File; import java.io....
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:一个编译C++ 文件常用得 makefile ,直接拷贝就可以用哦。
举报原因:
原因补充:

(最多只允许输入30个字)