最近在MCU on Eclipse网站上看到Erich Styger所写的一篇有关在Eclipse中使用Makefile创建项目的文章,文章讲解清晰明了非常不错,所以呢没人将其翻译过来供各位同仁参考。当然限于个人水平,有不当之处恳请指正。原文网址:https://mcuoneclipse.com/2017/07/22/tutorial-makefile-projects-with-eclipse/

像Eclipse这样的IDE的好处是它使得处理项目的工作变得非常容易。因为它不但可以生成文件,而且可以获取并自动地管理Makefile文件。但有时这可能不是我想要的,因为我需要更大的灵活性和控制,或者我想要为我的持续集成和自动化测试系统使用相同的制作文件。在这种情况下,就需要自己编写Makefile文件。

有一件事不排除其他内容:本文介绍如何使用Eclipse中的makefiles与Eclipse中托管构建系统相似的舒适度,但是具有无限制的make files:

概要

Eclipse附带一个内置的构建系统(managed make):我可以配置编译器链接器设置,Eclipse会处理其余的事情。在本教程中,我将介绍如何使用Eclipse手动创建和使用精心制作的make files。所推荐的make files和模板可以方便地使用make来控制构建系统。所提出的方法要求添加到项目中的每个新的源文件需要扩展make文件,而是对所有包含的头文件的自动生成依赖文件的make文件进行扩展。

使用make文件的好处是:

  • 比Eclipse .cproject文件和设置更容易在版本控制系统中存储和跟踪
  • 完全控制构建和制作过程
  • 作为构建过程的一部分,与其他步骤(例如使用版本控制系统或自动化测试系统)相比,这是微不足道的
  • 可以在IDE和外部使用相同的构建(make)(例如在自动构建系统上)
  • 并且编写make文件也很有趣

make文件方法需要了解构建过程,为此,了解什么与管理make一起使用是有帮助的,所以我可以将其用作基础或灵感。

前提条件

要在Eclipse中使用make文件,我需要以下内容:

  • Eclipse IDE。我正在使用恩智浦MCUXpresso IDE v10.0.2(基于Neon),但任何其他Eclipse发行版也可以这样做。
  • 使用make实用程序安装GNU工具链。通常这里附带了一个捆绑的Eclipse IDE,或者您可以使用DIY工具链。
  • 您的目标设备的编译器和链接器设置。使用现有示例项目中的选项。
  • 启动和链接器文件。再次,您可以借用现有的示例项目。
  • 应用源文件。我建议先从“空”main函数开始。

获取必要的文件和选项的一个好方法是查看一个通常使用“manged make”的示例项目。

使用Eclipse进行Makefile项目的更多相关文章

  1. eclipse — 导入android项目后识别成java项目的问题及解决

    最近在eclipse导入android项目的时候遇到了奇葩问题,再此记录 遇到的问题就是:将完好的android项目导入到eclipse的时候,原本这是一个很容易的事情,但是导入成功后发现,,,靠ec ...

  2. (八)Eclipse创建Maven项目运行mvn命令

    1.Eclipse创建Maven项目 使用Eclipse创建一个Maven项目非常的简单,选择菜单项File>New>Other(也可以在项目结构空白处右击鼠标键),在弹出的对话框中选择M ...

  3. 如何将Eclipse中的项目迁移到Android Studio 中

    如何将Eclipse中的项目迁移到Android Studio 中 如果你之前有用Eclipse做过安卓开发,现在想要把Eclipse中的项目导入到Android Studio的环境中,那么首先要做的 ...

  4. Eclipse导入现有项目

    针对一些新手内容 1.Eclipse 打开一个项目 第一步File-->Import导入 第二步:选择导入类型 第三步选择文件路径,点击Browse... 注意下面细红框选项,根据需要勾选 第四 ...

  5. 在Android Studio和Android Eclipse 更改现有项目里的SDK版本

    一,在Eclipse下改项目里的SDK的版本方法有几种,都比较简单:1.右键单击项目--->properties---->Resource----->Android在Project ...

  6. 【笔记】android sdk集成的eclipse中导入项目

    android sdk集成的eclipse中导入项目 想要把旧的ADT项目,一模一样的导入进来,需要: 1.把项目放到,非当前ADT的workspace目录下: 2.从Project中Import,选 ...

  7. myeclipse如何修改Web项目名称,eclipse如何修改项目名字

    myeclipse如何修改Web项目名称 1.复制一个现有的项目,重命名项目名称 2.这里的项目名称重新命名了,但是Web项目本质下的名称还是没有改变的.所以需要更改,更改方法-->选择项目右击 ...

  8. eclipse导入cordova项目

    eclipse导入cordova项目 导入老是出问题是不是?老是提议已存在是不是? 不知道如何改名字? 这里关键的一点是一定要选择对应的platform的目录,而不是你的项目的目录,不是你的项目的目录 ...

  9. Eclipse导入Java项目时“No projects are found to import”错误的处理

    用Eclipse导入Java项目时,经常会出现“No projects are found to import”错误(尤其是导入网上下载的项目时),这是因为文件夹里面没有.project和.class ...

随机推荐

  1. pyqt5-QWidget-窗口状态(最大化最小化等)

    setWindowState(state)          #设置窗口状态 Qt.WindowNoState  无状态-正常状态 Qt.WindowMinimized     最小化 Qt.Wind ...

  2. pyqt5-QWidget坐标系统和大小

    获取坐标和尺寸: 坐标的获取视频教程:https://v.qq.com/x/page/t085892mzh9.html  x()    y()   返回控件的坐标 相对于父控件的坐标(窗口框架左上角) ...

  3. Spring中的@Transactional(rollbackFor = Exception.class)属性详解

    序言 今天我在写代码的时候,看到了.一个注解@Transactional(rollbackFor = Exception.class),今天就和大家分享一下,这个注解的用法: 异常 如下图所示,我们都 ...

  4. 前端向服务器请求数据并渲染的方式(ajax/jQuery/axios/vue)

    原理: jQuery的ajax请求:complete函数一般无论服务器有无数据返回都会显示(成功或者失败都显示数据): return result

  5. 《从Paxos到Zookeeper:分布式一致性原理与实践》第一章读书笔记

    第一章主要介绍了计算机系统从集中式向分布式系统演变过程中面临的挑战,并简要介绍了ACID.CAP和BASE等经典分布式理论,主要包含以下内容: 集中式的特点 分布式的特点 分布式环境的各种问题 ACI ...

  6. Log4Net配置日志

    1.log4net 1)新建一个Net空白项目,在引用出点击管理NuGet程序包,搜索log4net并安装 2)建立log4net.config配置文件 在configuration里面添加如下代码, ...

  7. 批量清除react中的计时器小组件

    在Timers的父组件被卸载时,批量清除各个计时器.

  8. Django学习手册 - 基于requests API验证(一)

    验证需要知道requests提交数据的几种方式: GET 方式: # get 方式,传递数值可以直接通过url传递:(服务端接受 GET) requests.get(url='http://127.0 ...

  9. Javascript - ExtJs - 整合百度文章编辑器

    ExtJs - 整合百度文章编辑器(ExtJs UEditor) 第一步:去官网下载最新版本的UEditor,UEditor下载. 第二步:在编辑器根目录创建一个Extjs-Editor.js,录入以 ...

  10. Django中的信号基础知识

    Django中提供了“信号调度”,用于在框架执行操作时解耦.通俗来讲,就是一些动作发生的时候,信号允许特定的发送者去提醒一些接受者. 1.Django内置信号 1 2 3 4 5 6 7 8 9 10 ...