本文转载自:https://blog.csdn.net/newjay03/article/details/72835758

本来打算完全在Ubuntu下开发的,但是水平有限,没有在Ubuntu下找到合适的阅读大型代码的工具,所以不得不在windows搭建开发环境。
一、主要内容:
1、在windows10下搭建arm(s3c2440)开发环境
在win10下使用vmware workstation12 pro建立Ubuntu主机,而后在Ubuntu中配置arm交叉编译链。在win10下编写代码,在Ubuntu中编译。
2、在windows10下搭建arm(s3c2440)调试环境
eclipse+openocd(GUI版)+gdb
二、软硬件环境
1、硬件环境
i7 6700hq+8gRAM+韦东山jz2440v3开发板+easyopenjtag
2、软件环境
操作系统:win10家庭中文版
开发调试软件:eclipse(eclipse-cpp-luna-SR2-win32-x86_64)+eclipse 插件 Zylin Embedded CDT+GDB+sourceinsight3.5+VMware workstation12 pro+openocd(GUI)
超级终端及串口工具:SecureCRT
FTP:CuteFTP9.0
三、在windows10下搭建arm(s3c2440)开发环境
1、硬件连接及驱动安装。
在这里就不啰嗦了,开发板手册上写的很清楚,强烈建议在搭建环境之前阅读开发板手册,可以少走好多弯路,不折腾。
2、在win10下安装虚拟机VMware并建立Ubuntu主机,在Ubuntu中配置arm交叉编译链。
为了方便起见,直接使用jz2440v3开发板光盘中的Ubuntu9.10虚拟机镜像,里面已经配置好了交叉编译环境,各种软件服务都安装配置好了,推荐初学者使用,不折腾,毕竟初学者是先入门嘛。当时自己折腾了好久,发现还是这个方便。如果正式开发还是要根据实际情况,自己配置交叉工具链。
3、在win10下搭建自己喜欢的代码编辑环境,自己喜欢就行,只是编辑,这里也不赘述。
4、安装终端软件,目的是登陆并操作虚拟机中的Ubuntu。这里使用的是SecureCRT。
5、安装FTP软件,用于向Ubuntu上传下载源代码等文件。
我们是在win10下阅读编写代码,然后使用FTP工具上传到Ubuntu,在Ubuntu中编译,然后再下载到win10中调试,烧写或下载到开发板。
6、使用jz2440开发板光盘中提供的oflash软件烧写二进制代码到开发板。
具体方法可以参考开发板手册。
至此,已经可以编写编译烧写嵌入式程序,但是如果程序出了问题,还是无法进行高效调试的,接下来介绍调试环境的搭建。
四、在windows10下搭建arm(s3c2440)调试环境
自己在看韦东山第一期视频时,发现视频中并没有讲解调试环境的搭建,但是写代码肯定会出错,出错就要调试,然后定位排除bug,而且开发中大部分时间都是在调试定位排除bug。而且到后面学习u-boot时如果能单步跟踪u-boot的运行,对理解掌握其工作原理还是非常有帮助的。然后自己就通过搜索和自己动手摸索,成功搭建了裸板的调试环境,注意这里是裸板调试环境,也就是开发板中还没有运行操作系统时,我发现网上裸板程序的相关内容,特别是调试环境搭建的介绍特别少,好多人都是使用“点灯大法”,非常不方便,下面我简单介绍下如何搭建以eclipse为前端的gdb调试环境。
1、安装gcc-arm-none-eabi-5_4-2016q3-20160926-win32
此软件是已经编译好的windows下的arm交叉工具链,在这里只使用其中的调试工具arm-none-eabi-gdb.exe.
2、安装eclipse,这里eclipse只是作为gdb的前端工具,只是为了方便,如果习惯命令行下操作的话,可以不用安装。
(1)千万记住不要安装最新版的eclipse,因为无法安装Zylin Embedded CDT插件,我使用的是eclipse-cpp-luna-SR2-win32-x86_64。之前要安装java环境并配置环境变量,这里就不讲了,自己搜索。
(2)安装Zylin Embedded CDT插件。此插件用于方便调试。
在 eclipse 的 Help --> Install New Software 中添加地址 http://opensource.zylin.com/zylincdt/ 就可以了。按照提示安装之后debug --> debug configuration 中可以看到 zylin 了。
3、在eclipse中建立工程并导入源代码。
这里导入源代码只是为了调试,不进行编译。
打开文件:file---->new--->c project
填上project name,下面的project type选择Makefile project---> empty project,Toolchains选择other toolchain,点finish。
然后在左侧project explorer中,选中刚才建的项目,右键--->import 选择file system,下一步,然后在from directory中选中自己代码的文件夹。选中代码,而后finish。
4、配置eclipse调试器
点击eclipse主界面上甲虫图标右侧的小倒三角,点击debug configurations,可以在左侧看到之前安装的zylin插件,双击zylin embedded debug(native),在右侧会生成一个新的调试环境,填入name,然后在main标签中c/c++application中选择在Ubuntu编译生成的elf文件。点击debugger标签,选择之前安装的arm-none-eabi-gdb.exe,也可以添加自己的GDB command file,就是一个初始化脚本,这个要根据不同的开发板进行相应修改。点击commands标签,可以写入一些简单的初始化命令,此时不要点击debug。
5、安装OpenOCD with GUI setup
使用的是光盘中提供的软件,直接安装即可,此软件自带了s3c2440的配置文件,傻瓜式的,选择manual,interface选择openjtag,target 选择samsung_s3c2440;openocd标签中设置workdir,然后点击connect,右侧会显示一些log信息,如果不报错,就说明成功连接了开发板和GDB。
6、此时点击debug即可开启debug之旅了。

win10下搭建jz2440v3(arm s3c2440)开发及gdb调试环境【转】的更多相关文章

  1. win10下搭建vue开发环境

    特别说明:下面任何命令都是在windows的命令行工具下进行输入,打开命令行工具的快捷方式如下图:     详细的安装步骤如下: 一.安装node.js 说明:安装node.js的windows版本后 ...

  2. 1.WIN10下搭建vue开发环境

    WIN10下搭建vue开发环境 详细的安装步骤如下: 一.安装node.js 说明:安装node.js的windows版本后,会自动安装好node以及包管理工具npm,我们后续的安装将依赖npm工具. ...

  3. win10下搭建深度学习--总结【学习笔记】

    win10 下搭建深度学习开发环境总结: 1.本人环境如下:win10,GTX1050TI.i7,anaconda3,vs2015,cuda9.0,cudnn7.1.4,tensorflow-gpu= ...

  4. 在Ubuntu下搭建ASP.NET 5开发环境

    在Ubuntu下搭建ASP.NET 5开发环境 0x00 写在前面的废话 年底这段时间实在太忙了,各种事情都凑在这个时候,没时间去学习自己感兴趣的东西,所以博客也好就没写了.最近工作上有个小功能要做成 ...

  5. react-native —— 在Windows下搭建React Native Android开发环境

    在Windows下搭建React Native Android开发环境 前段时间在开发者头条收藏了 @天地之灵_邓鋆 分享的<在Windows下搭建React Native Android开发环 ...

  6. windows下搭建Apache+Mysql+PHP开发环境

    原文:windows下搭建Apache+Mysql+PHP开发环境 要求 必备知识 熟悉基本编程环境搭建. 运行环境 windows 7(64位); Apache2.2;MySQL Server 5. ...

  7. Linux下搭建gtk+2.0开发环境

    安装gtk2.0 sudo apt-get install libgtk2.0-dev 查看 2.x 版本 pkg-config --modversion gtk+-2.0 #有可能需要sudo ap ...

  8. 在Win10下搭建web服务器,使用本机IP不能访问,但是使用localhos或127.0.0.1可以正常访问的解决办法

    最近在在Win10下搭建web服务器,发现通过windows自带的浏览器win10 edge浏览器使用本机IP不能放问,但是使用localhos或127.0.0.1可以正常访问, 后来无意发现,使用w ...

  9. Ruby on Rails入门——macOS 下搭建Ruby Rails Web开发环境

    这里只介绍具体的过程及遇到的问题和解决方案,有关概念性的知识请参考另一篇:Ruby Rails入门--windows下搭建Ruby Rails Web开发环境 macOS (我的版本是:10.12.3 ...

随机推荐

  1. Python巨蟒全栈开发目录

    巨蟒python全栈开发-第一阶段 基础数据类型&基础 1.什么是计算机&&python的简介(待补充) 2.while循环&&格式化输出&&运 ...

  2. JavaBean的任务就是: “Write once, run anywhere, reuse everywhere” Enterprise JavaBeans

    javaBean_百度百科 https://baike.baidu.com/item/javaBean/529577?fr=aladdin 区别EJB JavaBean 和 Server Bean(通 ...

  3. Googlebot (Google Web search)

    w推测“域名解析过程中,Google crawlers中首先是Googlebo中的Google Web search上阵”. +-----+----------------+------------- ...

  4. C#中字符数组,字节数组和string之间的转化

    转自:http://blog.csdn.net/wangxiaoqin00007/article/details/17675419 NDC(NetworkDiskClient)的界面和后台程序之间用S ...

  5. Javascript闭包学习(Closure)

    闭包(closure)是Javascript语言的一个难点,也是它的特色,很多高级应用都要依靠闭包实现. 下面就是我的学习笔记,对于Javascript初学者应该是很有用的. 一.变量的作用域 要理解 ...

  6. vue中获取客户端IP地址(不需要额外引入三方文件)

    之前看了几种方法 ,都是引入腾讯,新浪,搜狐等的三方js文件来查询IP地址,但是我自己测试的时候IP地址不准确,所以就找了找,发现了这个方法,准确的获取到了IP地址和cmd的ipconfig获取到的I ...

  7. 【开发者笔记】按List中存放对象的某一字段计数的问题

    如题,假设有如下表t_info: name date info a 20127-12-20 xxxx描述 b 20127-12-20 yyyyy描述 c 20127-12-21 zzz描述 d 201 ...

  8. PAT 1086 Tree Traversals Again[中序转后序][难]

    1086 Tree Traversals Again(25 分) An inorder binary tree traversal can be implemented in a non-recurs ...

  9. Oracle DB 移动数据

     描述移动数据的方式 • 创建和使用目录对象 • 使用SQL*Loader 加载非Oracle DB(或用户文件)中的数据 • 使用外部表并通过与平台无关的文件移动数据 • 说明Oracle 数据泵的 ...

  10. 网站实时信息采集和统计graphite

    Graphite 是一个Python写的web应用,采用django框架,Graphite用来进行收集服务器所有的即时状态,用户请求信息,Memcached命中率,RabbitMQ消息服务器的状态,U ...