`
冷静
  • 浏览: 146913 次
  • 性别: Icon_minigender_1
  • 来自: 佛山
社区版块
存档分类
最新评论

在 Linux PPC 上使用 Eclipse CDT 开发 C\C++ 程序

阅读更多

引言

Linux 是一个成熟的操作系统,Linux 上大多操作都基于命令行格式,随着 Linux 的快速发展,很多版本的 Linux 平台都提供了可视化操作界面以方便用户进行简单、快捷的操作,对于 Linux 平台上最常用的 C 语言,可视化界面使用户编译执行 C/C++ 程序也更加直观、方便、快捷。

PowerPC 是一种 精简指令集RISC)架构的 中央处理器CPU),其基本的设计源自 IBM 的 POWER(Performance Optimized With Enhanced RISC;《 IBM Connect 电子报》 2007 年 8 月号译为“增强 RISC 性能优化”)架构。1990 年,IBM、Apple 和 Motorola 开发 PowerPC 芯片成功,并制造出基于 PowerPC 的多处理器计算机。PowerPC 架构的特点是可伸缩性好、方便灵活。PowerPC 与其他处理器相比,其体系结构相对开放 ,Linux 一直以来都是公开其所有源代码,两个开放的系统最终走到一起,是自然的选择,这也就有了 Linux PPC。

作为一个软件产品测试人员,在工作中常常会接触到各种不同的操作系统平台,以覆盖不同用户群体的实际需求,目前国内外基于奔腾处理器的 Linux 平台是使用的较为频繁的,但是基于 PowerPC 处理器的 Linux 使用相对较少。对于最常见的 Linux x86 平台,通常都是去 eclipse 官方网站下载 Eclipse IDE for C/C++ 开发包来对 C 语言编写的测试脚本实现可视化的编译执行,但是,对于某些操作系统,比如:Linux PPC,Eclipse 官方网站并没有直接提供可用的集成开发包,而且安装此平台的机器很多都是 LAB 里面的实验机,并没有连接外部 Internet 网络,所以,利用 Eclipse 插件在线安装的方法也是行不通的,为此,我们需要下载相应的针对 Linux PPC 平台的 Eclipse 版本以及插件 CDT 进行安装配置才能建立测试环境里需要的 C/C++ 可视化编译环境。

本文主要介绍在 Linux PPC 平台上安装和配置 Eclipse 和 CDT,Linux 平台上 Eclipse 的编辑环境,调试运行环境,着重介绍如何使用 Eclipse 来快速,简便,准确地调试 C/C++ 程序,包括对程序的单步执行,断点用法,局部、全局变量实时监控,子函数执行监控,错误以及警告信息实时显示等等内容。利用 Eclipse 强大编辑以及调试功能,可以使用户花很短的时间完成 C/C++ 程序设计,为 Linux 平台上 C/C++ 编程用户提供更加人性化的设计环境;在文章的最后,我们会介绍最新发布的代号为 Helios(太阳神)的 Eclipse 3.6 在 CDT 上的新特性。


Eclipse CDT 安装功略

安装前准备

安装之前需要准备几个重要的组件:

  1. JRE(Java Runtime Environment)

由于 Eclipse 本身是用 Java 开发的,所以使用 Eclipse,肯定就需要安装 JRE 环境了,一般 Linux 环境中都会有安装好的 JRE 环境,可以 check 一下,万一没有,那么就需要下载一个装上,下载地址如下:

(http://www.oracle.com/technetwork/java/javase/downloads/index.html)

  1. Eclipse
    在安装 CDT 插件之前,选择一个 Eclipse 进行安装是必不可少的步骤,选择 Eclipse version 3.2,可以从 [http://www.eclipse.org] 下载 Eclipse 安装包。
  2. CDT

CDT 是 Eclipse 提供的一个插件,用它能生成 C/C++ 的编译和执行环境,CDT 的版本也有很多,要下载与 Eclipse 相匹配的 CDT,比如安装 eclipse 3.2 以上的版本,就需要安装 CDT 3.1 以上的版本。

安装 JRE

大多数 Linux 环境中都安装了 JRE,在拿到机器以后,我们可以检查一下机器的环境,确保 JRE 的正确运转,检查过程如图 1 所示:


图 1. JRE 下载及安装
图 1. JRE 下载及安装

安装 Eclipse(在 Linux PPC suse10 环境)

到指定网站下载 Eclipse 安装压缩包(注意:Linux 平台上的包也分好几种,一定要根据本身系统的类型下载相应的安装包) :eclipse-SDK-3.2.1-linux-gtk-ppc.tar.gz 建立一个工作目录,并将 Eclipse 安装包进行解压缩,将产生一个新的目录 eclipse. 如图 2 所示 :


图 2. Eclipse PPC 安装包
图 2. Eclipse PPC 安装包

进入 eclipse 目录,可以看到安装的详细内容,如图 3 所示:


图 3. Eclipse PPC 安装解压包
图 3. Eclipse PPC 安装解压包

安装 CDT

  1. 下载匹配于 Eclipse 3.2.1 的 CDT 压缩软件包,下载地址在:http://www.eclipse.org/downloads/download.php?file=/tools/cdt/releases/callisto/dist/3.1.1/。
  2. 将下载的压缩包解压:tar – zxvf org.eclipse.cdt-3.1.1-linux.ppc.tar.gz,解压后的文件会自动存在 eclipse 的安装子目录 plugins 下面,如图 4 所示:


图 4. CDT 解压包
图 4. CDT 解压包

  1. 完成解压缩后,还需要将 cdt 文件拷贝到 /usr/local/eclipse/plugins/ 目录下,才能完成 cdt 的安装。

Eclipse CDT 编辑环境

Eclipse CDT 提供了多功能的编辑器,可以方便用户编写 C/C++ 程序,提供了语法高亮显示、语法即时检测、错误以及警告信息注释、doc 查询、变量检查、模块检查、源码折叠等一系列功能,对于在 Linux 平台上编写程序的工程师,书写 C/C++ 程序是一件很麻烦的事情,我们都希望有这么一个利器,能方便快捷地处理这些工作,很幸运,Eclipse CDT 帮我们实现了这一切。

安装好 Eclipse CDT 以后,可以通过 VNC 来进入其图形化操作界面,为此,我们先在 Linux 机器上启动一个 VNC 的 session,如下图 5 所示:


图 5. 启动 vnc
图 5. 启动 vnc

然后,我们可以在本地 windows 机器上通过 VNC 客户端登陆 Linux 机器,并通过 eclipse 可执行程序打开 Eclipse 编辑环境,如图 6 所示:


图 6. Eclipse 编辑环境
图 6. Eclipse 编辑环境

第一次登陆 eclipse 的时候,会要求输入一个目录作为工作空间,我们可以在 Linux 机器上找一个空间充足的目录作为日后的工作空间(workspace)。


配置 C/C++ 程序运行调试环境

创建工程、文件

  1. 创建一个新工程(也可以在一个已存在的工程中加入你自己的工程)
  2. 在菜单‘ File ’中选择 New ‘ Project ’。

从弹出的列表中选择‘ Managed Make C Project ’(若选择 Managed Make C Project,Eclipse CDT 编译环境会自动为我们建立 make file,若选择 Standard Make C Project,则必须程序员自己写 make file;如图 7 所示:


图 7. 选择编译方式
图 7. 选择编译方式

4. 选择‘ Next ’

5. 在弹出的面板中,输入 Project Name,该工程会放在之前建立的工作空间 (workspace) 目录内。如图 8 所示:


图 8. 工程创建对话框
图 8. 工程创建对话框

6 .选择‘ Next ’,接下来选择项目类型,我们选择默认的可执行即可。如图 9 所示:


图 9. 配置模式选择
图 9. 配置模式选择

7 .单击‘ Finish ’完成当前工作,一个名为 test 的工程就建立了。

接下来,我们可以建立一个 C\C++ 的源程序:

(1). 在菜单'File' 里面选择 NewSource file,在弹出的对话框中输入 C 源程序文件名,如图 10 所示:


图 10. 输入编译源文件
图 10. 输入编译源文件

(2).单击'Finish'完成文件建立工作。

(3).在弹出的对话框里,我们可以编辑 c 程序了,如图 11 所示:


图 11. 程序编辑界面
图 11. 程序编辑界面

配置运行调试对话框

首先,对于要运行调试的工程文件,在 eclipse 主界面上选择菜单‘ Run ‘,并在弹出下拉框中选择’ Debug ’,再修改如下配置(选择工程文件),如图 12 所示:


图 12. 选择工程文件
图 12. 选择工程文件

对于需要添加 Program Argument 的程序,我们可以为新建项目增加 Argument,CDT 插件也提供了这方面的接口,打开 Debug 对话框,并在项目中 argv items in “(x)= Arguments” 添加相应的 Argument。如图 13 所示:


图 13. 选择工程文件
图 13. 选择工程文件


CDT 调试运行过程

任何程序的调试与运行都是密不可分的,从程序工程师的角度来看,一个程序从编写完毕到最后成功完成,都是一个运行、修改、调试、再运行、再修改、再调试。。。的过程。Eclipse CDT 提供了完整的调试运行环境。

CDT 运行程序

对于选中的工程文件,在 Eclipse 主界面上选择菜单‘ Run ‘,并在弹出下拉框中选择’ Run ’,如图 14 所示:红线框住的区域表示程序的整个运行过程和结果都可以看到。


图 14. EPIC 运行程序界面
图 14. EPIC 运行程序界面

Eclipse CDT 调试程序(俗称‘ Debug ’程序)

相比较运行程序而言,这一过程显得复杂得多,这也是这篇文件的精髓所在,前面都是为这一步在做必要地铺垫。对于程序员而言,调试程序是不可避免的,通常将要调试的线程挂起,然后利用单步执行方式来实现对整个程序的一行一行代码地执行,同时,观察每一步运行的结果,以及掌握运行过程中变量的变化情况。

Eclipse CDT 提供了多种调试操作功能以方便用户实现在编程中的切实需求,包括单步执行、跳入子函数、跳出子函数、断点设置、断点取消、直接执行语句段直至断点位置等等。

  1. Step Over– 单步执行函数、循环 loop、或执行其他普通语句。正待执行的代码行在 EPIC 编辑器中会被高亮显示出来,此时,线程处于挂起状态,在 Debug 视图工具条中按下这个功能图标 ()(相应的快捷键是‘ F6 ’)后,该行语句将被执行,完毕后,将自动跳转到下一行待执行语句,并使其呈高亮显示状态,该线程继续挂起等待下一步指令。
  2. Step Into– 可以执行进入函数、循环 loop、或执行其他普通语句。在 Debug 视图工具条中按下这个功能图标 ()(相应的快捷键是‘ F5 ’),该功能类同上述‘ Step Over ’,不同之处在与:如果该语句中含有子函数,循环等结构,‘ Step Over ’是直接后台执行完这些子函数或是循环,并返回结果。但是‘ Step Into ’却会按执行栈的顺序执行方式,依次跳入子函数或循环提供单步执行的功能。
  3. Step Return– 这一功能是针对执行过程已经进入子函数后,可以从当前代码行开始直接后台执行完该子函数剩余代码并返回,不用再单步执行该子函数。在 Debug 视图工具条中按下这个功能图标 ()(相应的快捷键是‘ F7 ’)。

在主界面中选择菜单‘ Run ‘ -> ’ Debug ’ , 就进入程序调试状态了,我们可以选择调试操作方式,包括单步执行、跳到最近的下一个断点再执行,跳入子函数等等,针对这些操作过程中,对于工程师来说,始终关注的都是整个程序的运转情况以及掌握每一步执行操作完成后相关变量的变化情况,为此,我们有必要介绍一些视图,利用这些视图,我们可以更好的掌握程序的调试状况,以利于下一步操作。

首先,进入调试界面接口,可以在主界面中选择:Window-> Show View ->Debug,在弹出来的视图里,可以管理在工作区的正在被调试或是运行程序,它显示了一个工程框架、工作过程中的程序运行状况等等。如图 15 所示:


图 15. CDT 调试窗口
图 15. CDT 调试窗口

变量视图能够显示程序在运行过程中的变量的值以及其实时变化情况,这一功能对于调试工作来说是尤为重要的,变量是程序的‘血液‘,程序代码就是通过变量来连接的,掌握变量的情况,就是掌握整个程序的运行状况。

在变量视图里面,可以看到变量栈的框架结构,它显示变量的原始状态,包括结构体变量、哈希变量、list 变量或是对象等等。

如图 16 所示:


图 16. 变量显示窗口
图 16. 变量显示窗口

断点视图可以显示该程序文件中所有的断点、它们的状态以及位置。在这个视图里,可以通过选择一个或断点,并激活对应断点的程序文本框,来设定、使之无效或是取消断点。如图 17 所示:


图 17. 断点视图
图 17. 断点视图


总结

综上所述,我们已经看到了一个 Linux 平台上集编辑、编译、调试 C/C++ 程序为一体的图形化的工具,它解决了若干年来一直困扰着 Linux 程序员的对于在 Linux 平台上调试运行 C/C++ 语言程序很麻烦的问题,它简洁明了、功能强大的编辑环境也给 C/C++ 语言编程者带来了另外一种享受。最重要的是获取这一切,您都采取的是免费的方式,因为所有的组件都是开源的,所以这是一款非常值得推荐的软件工具。2010 年 6 月 23 日,代号为太阳神的 Eclipse 3.6 正式发布,该版本同步更新的项目将有 39 个,其中就包括对 CDT 的更新,太阳神中包括的 CDT 项目改善了调试(Debug)支持,首先,新的 DSF/GDB 调试接口与现有的 CDI/GDB 接口基本相当,此外,引进了新的 Eclipse C/C++ 调试器(EDC)可选组件,为 Windows 和 Linux 操作系统 API 提供了直接的调试器接口,更为重要的是,引入了新的 Codan 静态分析框架,在编译前提供语义分析错误报告。

<!-- CMA ID: 580195 --><!-- Site ID: 10 --><!-- XSLT stylesheet used to transform this file: dw-article-6.0-beta.xsl -->

参考资料

转自:http://www.ibm.com/developerworks/cn/linux/l-cn-ecl-cdt/index.html?ca=drs-

分享到:
评论

相关推荐

    如何在Linux使用Eclipse + CDT开发C C++程序

    传统在 Linux 下开发程序,是在文字模式下,利用 vi 等文字编辑器撰写 C/C++ 程序存盘后,在 Command line 下使用 gcc 编译,若要 debug,则使用 gdb。这种开发方式生产力并不高,若只是开发学习用的小程序则影响...

    Eclipse CDT(C & C++ Development Tooling)开发环境的搭建.pdf

    ### Eclipse CDT (C & C++ Development Tooling) 开发环境的搭建...通过以上步骤,您可以在Windows平台上搭建起一个完整的Eclipse CDT (C & C++ Development Tooling) 开发环境,为后续的C/C++程序开发打下坚实的基础。

    免费下载:eclipse cdt编译C++的插件

    Eclipse CDT(C/C++ Development Tooling)是Eclipse集成开发环境(IDE)的一个重要扩展,专为C和C++编程提供强大的支持。它包含了源代码编辑器、构建工具、调试器以及项目管理和版本控制等多种功能,是C/C++开发者...

    eclipse cdt 解析C++ AST

    Eclipse CDT(C/C++ Development Tooling)是Eclipse的一个插件,主要用于C和C++程序的开发环境。它不仅提供了代码编写的基本功能,还能够解析和分析C++代码,构建抽象语法树(Abstract Syntax Tree,简称AST),并...

    ubuntu 下eclipse CDT搭建交叉编译开发环境

    本文将详细介绍如何在ubuntu平台下使用eclipse CDT搭建交叉编译开发环境,包括准备相关软件安装包、安装软件包、应用程序编译、导入现存的makefile project、Qt 插件安装等几个方面的内容。 一、准备相关软件安装包...

    Eclipse CDT API文档

    Eclipse CDT(C/C++ Development Tools)是Eclipse IDE中的一个核心插件,它为C和C++开发者提供了一套完整的集成开发环境。CDT API文档是专门为那些想要扩展或定制Eclipse CDT功能的程序员准备的,它包含了大量的...

    Eclipse C、C++(CDT)开发入门.pdf

    本教程“Eclipse C、C++(CDT)开发入门.pdf”旨在帮助初学者配置和入门Eclipse CDT,以便于高效地进行C和C++程序开发。 首先,我们需要了解如何安装Eclipse CDT。在已有的Eclipse基础版本上,可以通过Help &gt; ...

    Eclipse CDT + C / C++ 环境安装+编译_调试

    标题 "Eclipse CDT + C / C++ 环境安装+编译_调试" 提供了关于在Eclipse集成开发环境中配置C和C++编程环境的信息。这通常涉及到安装Eclipse CDT(C/C++ Development Tooling)插件,以及设置编译器和调试器。我们将...

    Eclipse C、C++(CDT)开发.rar

    Eclipse CDT(C/C++ Development ...通过“Eclipse C、C++(CDT)开发.pdf”这份文档,你应该能够深入了解如何在Eclipse环境下进行C和C++的开发,包括从基础设置到高级特性的使用,为你的C/C++编程旅程提供有力的支持。

    linux下安装Eclipse及安装c++插件CDT

    而且,由于Eclipse是开源且免费的,因此在Linux上使用Eclipse开发C/C++程序既经济又实用。 安装Eclipse和CDT的步骤如下: 1. **下载所需文件**: - 首先,需要安装JRE(Java运行环境),因为Eclipse是基于Java的...

    linux安装eclipseCDT对应的jdk和eclipseCDT安装包

    在Linux系统中,Eclipse CDT(C/C++ Development Tooling)是一款强大的集成开发环境,专为编写C和C++程序而设计。Eclipse CDT是Eclipse平台的一部分,允许开发者利用Eclipse的强大功能来创建、调试和管理C/C++项目...

    Linux下安装Eclipse/JRE/CDT开发C/C++

    总结:在Linux环境下,Eclipse配合CDT为C/C++开发者提供了一个强大的开发工具链,它简化了开发流程,增强了代码编辑和调试体验,同时也方便了项目管理和团队协作。通过安装和配置JRE、Eclipse及CDT,开发者可以在...

    Ubuntu下使用Eclipse开发C/C++

    ### Ubuntu下使用Eclipse...在Ubuntu下使用Eclipse CDT进行C/C++开发,不仅能够提高编码效率,还能利用其强大的调试功能深入理解程序逻辑。通过本文的指导,开发者可以快速搭建开发环境,并着手进行实际的项目开发。

    解决 Eclipse-CDT 搭建C/C++ 开发环境部分问题

    在使用Eclipse CDT进行C/C++开发时,可能会遇到一系列与环境配置和工具链相关的问题。本篇文章将深入探讨如何解决"Program "g++" not found in PATH"、"Lanuch failed no binaries"以及新建项目时找不到MinGW的问题...

    Eclipse IDE for C/C++ Linux64位

    Eclipse作为一个开源的、跨平台的开发工具,其C/C++版本是许多软件工程师和学生在Linux系统上进行C/C++开发的首选工具。 首先,Eclipse IDE的核心特性包括代码编辑、调试、构建和项目管理等功能。它拥有智能代码...

    使用eclipse来开发c,c++

    在本文中,我们将探讨如何使用Eclipse作为C和C++的集成开发环境(IDE),以及如何配置所需的编译器和工具链。Eclipse是一个广泛使用的Java IDE,但它也可以通过插件扩展来支持其他编程语言,如C和C++。Eclipse CDT...

    如何使用Eclipse编译C,C++,JAVA程序

    - **MinGW的介绍**:MinGW是一个轻量级的开发环境,它包含了一系列开源工具,使得开发者可以在Windows上使用GCC来编译C和C++代码。 - **MinGW的下载**:你可以从MinGW官网或者第三方源下载MinGW安装包。 - **...

    Eclipse C/C++ 自动补全的cdt补丁

    Eclipse C/C++ 自动补全的cdt补丁,补全.

    eclipse_cdt的使用教程

    9. **多平台支持**:Eclipse CDT不仅适用于Windows,还支持Linux和Mac OS等操作系统,这意味着你可以在不同平台上开发和调试C/C++代码。 10. **学习资源**:虽然Eclipse CDT的官方文档和教程相对较少,但网上有大量...

Global site tag (gtag.js) - Google Analytics