zoukankan      html  css  js  c++  java
  • eclipse 灵活使用makefile来编译C/C++

    需求:

    近期在看<C++ Primer Plus>, 作者在不断优化自己的类。有很多不同的版本号,有非常多的測试函数(main函数),我使用的是eclipse+CDT来编写C++,不可能为每一个类都创建一个project。那咋办呢?

    我们知道gcc+makefile+gdb。是linux下的神器,使得编敲代码相当的灵活,奈何水平不够,还是使用了IDE来配合。

    以下就来看看怎么使用elipse+makefile来灵活编译程序。

    1. 首先上一张效果图:


    2. 文件说明,加入了目录header和src,来存储头文件和实现文件,src以下有一个makefile文件。生成的可运行文件放在Binaries以下。

    3. 怎么配置:

    (1)在project的属性中,c/c++ build中。新建一个配置(manage configuration)。

    (2)build settings中。肯定是将自己主动生成makefile的选项给去掉,以下的build路径中选择makefile所在的路径就可以;

    (3)能够參考下图。详细配置,能够參考:http://yuoveyu.blog.51cto.com/2926448/596429


    4. 剩下的就是自己写makefile文件了,有个经典的教程:<跟我一起写makefile>,能够參考,我这里的makefile:

    CC :=	g++
    RM := rm -rf
     
    all :	usetime0  usetime1 usetime2 usetime3
     
    clean :
    	$(RM)	usetime0 usetime1 usetime2 usetime3
     
    usetime0 :	usetime0.cpp
    	$(CC)	usetime0.cpp mytime0.cpp -o ../Binaries/usetime0 
    
    usetime1 :	usetime1.cpp
    	$(CC)	usetime1.cpp mytime1.cpp -o ../Binaries/usetime1
    	
    usetime2 :	usetime2.cpp
    	$(CC)	usetime2.cpp mytime2.cpp -o ../Binaries/usetime2
    
    usetime3 :	usetime3.cpp
    	$(CC)	usetime3.cpp mytime3.cpp -o ../Binaries/usetime3

    5. windows下使用vs2012怎么灵活的编译呢?  眼下使用的是ifdefine来进行控制相应的main函数,想使用哪个main函数,就在那个main函数里define一个宏变量。

    记录一个问题:PCH 警告:标头停止点不能位于宏或#if块中, #pragma once作为头文件的第一句就能够避免出现文章标题所说的警告问题.

    写在后面:

    1.eclipse的配置。曾经写过一个eclipse安装NS3。事实上跟这个流程差点儿相同;

    2.怎么学习C++,能够參考文章:怎样学好C++ : 包含一些书籍以及和java对照学习,能够自己找些开源的项目来学习; 知乎上也有讨论主题:怎么样才算学好C++



  • 相关阅读:
    Java知识点梳理——集合
    Java知识点梳理——装箱和拆箱
    Shiro RememberMe 1.2.4 反序列化漏洞详细复现
    哈希长度拓展攻击之De1CTF
    Discuz! ML RCE漏洞 getshell 复现
    Redis基于主从复制的RCE 4.x/5.x 复现
    WebLogic反序列化漏洞(CVE-2019-2725补丁绕过)
    【实战2】记一次获取远程桌面历程
    远程桌面远程代码执行漏洞(CVE-2019-0708)Poc
    【实战1】记一次提至administrator权限历程
  • 原文地址:https://www.cnblogs.com/liguangsunls/p/7308670.html
Copyright © 2011-2022 走看看