下面是本人入门的一些做法及结论:
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,图形的东西毕竟直观
分享到:
相关推荐
GCC入门到精通
gcc入门,学习gcc的朋友可以看一看. gcc入门,学习gcc的朋友可以看一看.
gcc 入门知识 简介
eclipse c++开发环境搭建,需要下载eclipse和mingw-get-inst-20110530
AVR单片机GCC 程序设计 GCC AVR入门详解 GCC AVR入门源码
gcc入门教程[借鉴].pdf
AVR GCC 入门讲解 事无巨细 全面的讲解了avr gcc编程
有关GCC入门的书籍,很好用。 希望能够对大家学习GCC有些帮助
Ubuntu系统下GCC入门文章,介绍安装UBUNTU后第一个C程序的执行过程,详细
gcc入门教程归类.pdf
关于GCC的使用说明,不可多得的入门材料,方便学习linux下面的编程
ProgrammerNotepad的配置与AVRGCC入门
linux系统下C编译器GCC入门.docx
用Eclipse环境配合GCC编译器开发stm32, 并配合Jlink仿真器和GDB实时仿真调试STM32测试通过. 有文章和测试截图,参加本人博客。 http://blog.csdn.net/yyz_1987 Eclipse配合GDB和jlinkGDBServer仿真调试STM32
介绍了linux下的编译器gcc的基本原理,以及嵌入式汇编编译的过程
一本讲使用gcc编程的书,非常适合于初学者,讲得深入浅出。我读了之后很快入门了。
ubuntu下gcc编程入门收藏 准备工作 如果你还没装编译环境或自己不确定装没装,不妨先执行 sudo apt-get install build-essential 如果你需要编译 Fortran 程序,那么还需要安装 gfortran(或 g77) sudo apt-get ...
【收集帖】小布老师作品:GCC编译器使用入门培训
gcc makefile 入门 源代码, GCC和MakeFile入门代码一, 后续继续学习并上传代码
ubuntu下gcc编程入门收藏 http://hi.baidu.com/flying5/blo 准备工作 [GCC的安装过程] 如果你还没装编译环境或自己不确定装没装,不妨先执行 sudo apt-get install build-essential 如果你需要编译 ...