Eclipse GCC 入门

下面是本人入门的一些做法及结论:

 

1. 安装:下载Eclipse3.5 CPP版本 和Cygwin. 如果Cygwin安装成功, 则配置开发环境基本无问题。网上有关于Cygwin和MinGW的Eclipse配置,这里也无需我多费口水。

 

2. Note: Cpp源代码的后缀名要小心, CPP和cpp混写造成编译通不过的问题. //这个问题折磨了我不少时间。

 

使用这个环境一段时间后,觉得需要暂时放弃,原因如下:

 

1.  编译速度奇慢, 机器配置: dure core2.0G; 1G内存. 但每次编译重编译速度很慢,极大影响学习效率。

 

2. 编译的配置的DLL不能被java调用[这个问题已经解决], 由于自己对GCC编译器的开关不熟悉, 网上资料非常少, 问题不好解决。还只能补充GCC的知识. 顺便说下,我学习C仅为了Java好好提高效率, 而不是用C去开发GUI。

 

 

毕竟Eclipse CDT不是 VS2005, 他并没有对编译器GCC做任何优化,这里得出的结论是, 需要学习gcc的基本编译指令,通过makefile

去做C开发的工作,否则,只能让工作变得更慢, 目前我理解的方案如下:

     编辑器: Eclipse CDT

     编译器:   gcc + makeFile

 

后续将从gcc + Make file入手,将出台一系列的"cygwin + gcc + makeFile入门" 文章,总结自己在这方面的学习经验。

 

补充一下:

 

在Eclipse GCC开发的时候,遇到了这些问题:

 

1. 编译速度慢,运行后过了一段时间才make file, 因为CDT和gcc是两套东西,接口调用时间比较长

 

2. ANSI帮助文档查看不方便, 不如MSDN智能, 无法翻阅函数开发文档

 

 

优点:

 

1. Eclipse跨平台, 图形化工作做得不错,编辑提示能力强

 

2. 可视化调试能力强

 

 

鉴于以上的分析,可以采用如下方式开发C代码:

 

1. windows下采用Eclipse CDT + GCC + cygwin的方式, linux直接用Eclipse CDT 

 

2. Eclipse下建立MakeFile工程,而不是普通的C或者CPP工程,这样对编译过程可以尽量优化

 

3. 帮助文档的查看,可以通过cygwin的Man printf类似的命令查看, 因为大致熟悉函数的调用接口的情况下,用eclipse提示就可以知道形参是什么,另外1%的情况是对一个函数完全不了解,此时可以用man指令

 

4. 编译可以通过shell用make指令,也可以用eclipse图形工具操作, 调试用eclipse CDT,图形的东西毕竟直观


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/454795.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

java反序列化后不相等_Jackson:使用不同的属性名称序列化/反序列化 - java

我有这个POJO:public class SetPoint {private String tagName;//more fields//getters and setters}我从REST API获取SetPoints,对它们进行处理,然后再次发送。问题是我想从JSON反序列化SetPoint,例如:{"tagname…

如何实现线程间的通讯(转载)

原文出处: wingjay正常情况下,每个子线程完成各自的任务就可以结束了。不过有的时候,我们希望多个线程协同工作来完成某个任务,这时就涉及到了线程间通信了。 本文涉及到的知识点:thread.join(), object.wait(), objec…

Doracle.jdbc.J2EE13Compliant=true

To make the Oracle driver behave in a Java EE-compliant manner, you must define the following JVM property: -Doracle.jdbc.J2EE13Complianttrue转载于:https://www.cnblogs.com/heben/p/7472989.html

Docker 精通之微服务

Docker 精通系列 Docker 精通之入门Docker 精通之微服务Docker 精通之常用命令Docker 精通之 Dockerfile Docker 是一个容器工具,提供虚拟环境。很多人认为,它改变了我们对软件的认识。 站在 Docker 的角度,软件就是容器的组合:业…

苦逼的程序员怎么发展

今天组长开会时跟我谈话了,说的意思是我更适合另外一个组,我现在这个组没有什么技术含量,另外一个组技术含量可能更深些。 苦逼啊,这世界缺少的都是耐心,老是用一成不变的模式看人,我是那么还和以前一样沉…

php根据浏览器调用支付_Android通过外部浏览器调用微信H5支付,Android+PHP详解

看了好多关于讲解微信H5支付开发的文章,大多数都是通过微信内部浏览器来调用支付接口(其实就是公众号支付),可能是因为H5支付接口刚开放不久吧。微信官方体验链接:http://wxpay.wxutil.com/mch/pay/h5.v2.php,请在微信外浏览器打开…

秒杀系统架构分析与实战

0 系列目录 秒杀系统架构 秒杀系统架构分析与实战1 秒杀业务分析 正常电子商务流程 (1)查询商品;(2)创建订单;(3)扣减库存;(4)更新订单&#xff1…

Docker 精通之常用命令

Docker 精通系列 Docker 精通之入门Docker 精通之微服务Docker 精通之常用命令Docker 精通之 Dockerfile 配置文件路径 /etc/sysconfig/docker docker镜像及容器目录 主目录:/var/lib/docker 容器存放目录:/var/lib/docker/containers/ 镜像存放目…

世界500强面试题(经典)

本书中的问题,是软件业人士在面试时常问的,其中大多数出自微软公司,也有一些来自世界500强公司中的其 他公司。其实道理是相通的,认真领会,加以变通,当你读完全书时,你会发现你已经找到了一块进…

php 获取字符串中的url,php使用正则表达式获取字符串中的URL

今天写一个问答系统上线之后发现有很多人发链接了,由于业务部门要我们过滤掉网站地址了,下面我给大家分享一个提取字符串url地址函数,代码如下:$str 本文实例讲述了php匹配字符串里所有URL地址的方法。http://www.manongjc.com 分享给大家供大家参考;preg_match_all("/htt…

如何提高安卓代码的质量和语法

本文讲的是如何提高安卓代码的质量和语法,在这篇文章中,我会介绍几种不同的方式,让你通过自动化工具提高你的Android代码质量,包括 Checkstyle, Findbugs,PMD, 当然,还有我们最熟悉的…

洛谷 U3357 C2-走楼梯

https://www.luogu.org/problem/show?pidU3357 题目背景 在你成功地解决了上一个问题之后,方方方不禁有些气恼,于是他在楼梯上跳来跳去,想要你求出他跳的方案数。.. 题目描述 方方方站在一个n阶楼梯下面,他每次可以往上跳一步或两…

Liunx 系统调优

Sysctl命令用来配置与显示在/proc/sys目录中的内核参数.如果想使参数长期保存,可以通过编辑/etc/sysctl.conf文件来实现。 命令格式:sysctl [-n] [-e]-w # 临时改变某个指定参数的值,如sysctl -w net.ipv4.ip_forward1-a # 显示…

php多文件上传存储到表,PHP 实现一种多文件上传的方法

搜索热词之前在实现表单中file类型input选择多图片的时候找到一种方式 也许不是最好的但亲测可行且支持ie7以上以及chrome浏览器在表单中使用正常多文件选择multiple属性PHP;">然后使用AjaxFileUpload或其他方式提交将对应命名的file文件 $file[‘image] 转化为 json打…

CentOS7设置自定义开机启动,添加自定义系统服务

Centos 系统服务脚本目录: /usr/lib/systemd/ 有系统(system)和用户(user)之分,如需要开机没有登陆情况下就能运行的程序,存在系统服务(system)里,即&#xf…

成功应聘Intel的真实经历

编者按:INTEL(英特尔)公司创建于1968年,是全球最大的芯片制造商,Intel研究中心更是汇聚了全球无数的精英,一批年轻人抱着梦想走入了这里,过去我们谈到了太多关于Intel技术与市场方面&#xff0c…

Kotlin学习记录1

参考我的博客:http://www.isedwardtang.com/2017/09/02/kotlin-primer-1/转载于:https://www.cnblogs.com/EdwardTang/p/7476787.html

Keepalived配置文件详解

keepalivedkeepalived是集群管理中保证集群高可用的一个服务软件,其功能类似于heartbeat,用来防止单点故障。keepalived工作原理keepalived是以VRRP(Virtual Router Redundancy Protocol,即虚拟路由冗余协议)协议为实现…

php高等数学,中国大学《高等数学(四)》期末答案高校邦《PHP语言程序设计》见面课答案...

参考答案如下Conversation 2Pretco-A12.9-10.mp3:9、中国 A) Some shoes are missing. B) Itsdelivery is delayed.C) The order is cancelled. D) Some packages are damaged.10、中国 A) Giving an additional discount. B) Renewing the contract.C) Sending the goods by a…

深入剖析ThreadLocal实现原理以及内存泄漏问题

关于ThreadLocalMap<ThreadLocal, Object>弱引用问题&#xff1a; 当线程没有结束&#xff0c;但是ThreadLocal已经被回收&#xff0c;则可能导致线程中存在ThreadLocalMap<null, Object>的键值对&#xff0c;造成内存泄露。&#xff08;ThreadLocal被回收&#xf…