简单编写makefile文件,实现GCC4.9编译项目,增加boost库測试等等。。
一、须要用到的hw.cpp hw.h funtest.cpp funtest.h makefile 几个測试文件
1、hw.cpp代码例如以下:
#include "hw.h"
#include "funtest.h"
using namespace std;
using namespace boost;
int main()
{
timer t;
{
int i=1;
}
auto i="abc";
cout<<i<<endl;
cout<<"endl"<<endl;
cout<<"abcdefj"<<endl;
cout << "最大处理时间:" << t.elapsed_max() / 3600 << " h" << endl;
cout << "最小处理时间:" << t.elapsed_min() << " s" << endl;
cout << "逝去时间:" << t.elapsed() << " s" << endl;
cout<<"每行须要一个tab键"<<endl;
funtest::testa test1;
test1.testafun();
}
2、hw.h代码例如以下:
#ifndef __HW_H__
#define __HW_H__
#include <iostream>
#include <boost/timer.hpp>
#include <boost/progress.hpp> #endif
3、funtest.cpp代码例如以下:
#include "funtest.h" using namespace std; namespace funtest
{
testa::testa()
{
cout<<"testa()"<<endl;
} testa::~testa()
{
cout<<"~testa()"<<endl;
} void testa::testafun()
{
cout<<"testa::testafun()"<<endl;
}
}
4、funtest.h代码例如以下:
#ifndef __FUNTEST__H__
#define __FUNTEST__H__
#include <iostream>
namespace funtest
{
class testa
{
public:
testa();
~testa();
void testafun();
};
} #endif
二、makefile的编写以及使用演示样例
1、makefile代码例如以下:
#----------------------------------------------------------
#makefile helloworld測试用例
#
#
#
#
#-----------------------------------------------------------
ggg=g++49
exe=helloworld #全部的.o文件写在这里
obj = hw.o funtest.o #所要关联的cpp文件写在这里
cpp = hw.cpp funtest.cpp $(exe):$(obj)
@echo "链接開始................"
$(ggg) -o $(exe) $(obj) hw.o : $(cpp)
@echo "编译開始................"
$(ggg) -std=c++11 -c $(cpp) .PHONY : clean delete
all:
@echo "開始make all..........." clean:
@echo "開始清理................"
-rm -rf $(obj) $(exe)
delete:
@echo "delete.................."
pwd
2、用法linux简单演示样例。
[mythcpp@localhost src]$ make clean
開始清理................
rm -rf hw.o funtest.o helloworld
[mythcpp@localhost src]$ make
编译開始................
g++49 -std=c++11 -c hw.cpp funtest.cpp
链接開始................
g++49 -o helloworld hw.o funtest.o
[mythcpp@localhost src]$ make all
開始make all...........
[mythcpp@localhost src]$ make delete
delete..................
pwd
/home/mythcpp/src
abc
endl
abcdefj
最大处理时间:2.56205e+09 h
最小处理时间:1e-06 s
逝去时间:0 s
每行须要一个tab键
testa()
testa::testafun()
~testa()
[mythcpp@localhost src]$
lrwxrwxrwx. 1 root root 23 May 8 05:05 /usr/bin/g++49 -> /home/gcc-4.9.0/bin/g++
[mythcpp@localhost src]$ type g++49
g++49 is /usr/bin/g++49
$(exe):$(obj)
@echo "链接開始................"
$(ggg) -o $(exe) $(obj)
简单编写makefile文件,实现GCC4.9编译项目,增加boost库測试等等。。的更多相关文章
- 根据给定文件编写Makefile文件 两种方法编译
实例一 1.分析源文件代码依赖关系 mian.c #include "test1.h" #include "test2.h" #include <stdi ...
- 如何编写makefile文件
最近一直在学习makefile是如何编写的. 当我们写的程序文件比较少的时候,敲入gcc /g++,当你在大型工程中,在一个个编译文件的话,你可能就会很郁闷.linux有一个自带的make ...
- 教会你如何编写makefile文件
最近一直在学习makefile是如何编写的.当我们写的程序文件比较少的时候,敲入gcc /g++,当你在大型工程中,在一个个编译文件的话,你可能就会很郁闷.linux有一个自带的make命令,它让你的 ...
- 一个简单的makefile文件
一个简单的makefile文件:可以编译指定目录下的所有c和cpp文件,暂未加入自动头文件的依赖. #!/bin/bash #编译器 CROSS_COMPILING_PATH = #源文件路径 VPA ...
- 转:教会你如何编写makefile文件
最近一直在学习makefile是如何编写的.当我们写的程序文件比较少的时候,敲入gcc /g++,当你在大型工程中,在一个个编译文件的话,你可能就会很郁闷.linux有一个自带的make命令,它让你的 ...
- 为多个文件夹下的C源代码编写Makefile文件
上一篇文章写了如何为在同一个文件夹下的C源代码,本篇文章为多个文件夹下的C源代码编写Makefile文件. 建立两个文件夹,分别为abs与src.其最终目录结构如下: 1 $ ls * 2 jun.c ...
- MyEclipse部署项目到Tomcat上,但是classes文件夹下没有编译项目
在MyEclipse中把项目部署到Tomcat上,但是Tomcat下的classes文件夹下没有编译项目解决方法:1-直接在点击菜单栏的Project--clean,对项目进行clean2-查看菜单栏 ...
- windows下编译和安装boost库
boost是一个功能强大.构造精巧.跨平台.开源并且完全免费的C++程序库. 获取方式 boost提供源码形式的安装包,可以从boost官方网站下载,目前最新版本是1.59.0. 本机上正好有boos ...
- 一个简单的makefile文件编写
下午闲来无聊,就打开很久没动过的linux系统想熟悉熟悉在linux上面编译代码,结果一个makefile文件搞到晚上才搞定,哈哈! 先把代码简单贴上来,就写了一个冒泡排序: sort.h: #ifn ...
随机推荐
- Spring MVC中 提交表单报错400
背景: 在写SpringMVC表单提交的代码的时,在最后点击提交的时候总是会出现400的错误 原因: 主要原因就是表单提交的数据和对应实体类的属性无法完全匹配 解决方案: 查看我们提交的数据是否完全和 ...
- OO第一单元总结__多项式求导问题
作业一.含幂函数的简单多项式的求导 (1)基于度量的程序结构分析 1. 统计信息图: 2. 结构信息图: 3. 复杂度分析 基本复杂度(Essential Complexity (ev(G)).模块设 ...
- php 中引入邮箱服务 , 利用第三方的smtp邮件服务
项目中用短信通知有时间限制,对一些频率比较大的信息力不从心. 使用邮箱发送信息是个不错的选择\(^o^)/! 首先要注册一个邮箱,在邮箱设置里开通smtp功能. 简单介绍下smtp,大概就是第三方客户 ...
- 5.3.5 namedtuple() 创建命名字段的元组结构
在命名元组里.给每一个元组的位置加入一个名称,而且能够通过名称来訪问.大大地提高可读性,以便写出清晰代码,提高代码的维护性.事实上它就像C++里的结构体. collections.namedtuple ...
- linux文件与用户和群组
文件基本属性 在图片中alogrithm的文件属性为drwxrwxr-x,其中d代表此文件为目录. 后面rwx,rwx,r-x分别代表文件所属者(ower),组(group),其他用户(other)的 ...
- 保留全部Android crash信息
保留全部Android crash信息 framework/base/core/java/com/android/internal/os/RuntimeInit.java 又一次以下这个函数,增加自己 ...
- OS - 线程和进程的差别
进程是资源分配的基本单位,又是调度执行的基本单位.比如.用户执行自己的程序,系统就创建一个进程.并为它分配资源,包含各种表.内存空间.磁盘空间.I/O设备等. 然后.把该进程放入进程的就绪队列.进程调 ...
- adt-bundle-windows加入NDK支持
近期换了个硬盘,曾经都是用eclipse安装adt插件的,如今老了,图省事就下载了adt-bundle-windows,解压缩出来就直接用.但是这个adt-bundle没有集成NDK支持,于是手动安装 ...
- Unique path ii
Follow up for "Unique Paths": Now consider if some obstacles are added to the grids. How m ...
- 模拟退火算法c++
转载. 为方便理解, 在原博客的基础上加部分注释, 原博客地址:http://www.cnblogs.com/CsOH/p/6049117.html 今天终于用模拟退火过了一道题:CodeVS: P1 ...