linux/msys环境下使用sdcc开发
Tofloor
poster avatar
st******[email protected]
deepin
2012-11-16 22:02
Author
转移到linux下之前,对linux下嵌入式开发非常陌生,不知道用什么工具。后来听说了SDCC用于编译51等系列小的单片机工程,这是一个开源工具。在windows下一直只会依赖Keil C或MDK,但还是想尽量避免使用盗版的、破解的商业软件。

       在windows下安装好msys(或者msys-cn http://code.google.com/p/msys-cn/),就可以方便地利用一些在linux下常用的命令,算是对图形界面的的补充。这两天拿学习板试验了一下sdcc<http://sdcc.sourceforge.net/>,手册为全英文,只粗略地看懂怎么编译和连接,更多更精细的功能暂时没工夫研究,用到的机会估计也不多,毕竟51单片机的工程也不太大。

        sdcc编译稍麻烦,每次只能编译一个c文件(one source file each time);连接时main.rel必须在最前面(main.rel should be the FIRST);使用GNU make工具管理的话,可以减小很多重复工作,提高效率。于是自己写了一个简单的示例工程,使用GNU make工具进行管理,经过测试在msys环境和linux环境均可用,但在windows的cmd环境下使用时,make -n显示的执行命令都很正确,但make总出错,一直没明白,希望有高人出来解决掉。 不过总算在msys下可以高效地使用,有机会摆脱Keil C。

       这个工程可以在http://code.google.com/p/sdcc-mcs51/找到,详细内容在makefile中有解释。希望和大家相互交流,互相学习。仍有两个问题:[list:1gaevbdm]1.SDCC手册我只找到英文版,不知有没有中文版;[/list:u:1gaevbdm][list:1gaevbdm]2. windows下可以用STC_ISP.exe、SSTEasyIAP.exe等工具将最终hex文件烧写入单片机,但在linux下我不知道有没有这样相似的工具;[/list:u:1gaevbdm]如果有人已有以上两个问题的答案,希望能拿出来交流。
Reply Favorite View the author
All Replies
st******[email protected]
deepin
2012-11-16 22:04
#1
简单的sdcc使用,可以参照 http://skeylee.lofter.com/post/ba27f_1727b8
Reply View the author
cxbii
deepin
2012-11-16 23:36
#2
不会,....
但帮顶
Reply View the author
st******[email protected]
deepin
2012-11-19 01:16
#3
为跨平台而修改得到的妥协方案
Reply View the author