您的位置:首页 > 编程语言 > C语言/C++

在Visual C++ 2012(MSVC)编译SDCC编译器

2015-12-03 16:28 513 查看
当你想使用一个开源的工具来开发单片机51程序时,可以使用SDCC编译器,它不仅是免费的,还是开放源码的编译器;不仅让你可以开发51的程序,还可以深入了解编译原理的编译器。通过本文的指导,你可以实现自己编译一个51编译器出来,也可以继续深入地了解编译器的原理作为基础。
 
为了下载SDCC编译器的源码,你得先到官方网站下载相应的代码,下载代码有两种方式:方式一是通过SVN代码库来下载:
svn://svn.code.sf.net/p/sdcc/code/trunk/sdcc
使用SVN工具就可以通过上面的连接把源代码下载。
方式二是通过压缩包的方式下载: http://sdcc.sourceforge.net/snap.php 在这种方式里,文件包命名为sdcc-src-yyyymmdd-rrrr.tar.bz2方式,找到最新的压缩包下载即可。
 
接着自行安装VC2012版本,不过在VC2012版本里不能编译SDCC的工程ucSim。安装VC2012之后,就可以到SDCC的目录下面找到解决方案文件sdcc.sln,打开这个方案文件,并在加载完成之后,会提问是否升级到VC2012的工程,因为SDCC官方还是建议使用VC2010开发。当所有工程编译通过之后,就会在目录sdcc\bin_vc生成所有执行文件。当你需要发布出去时,可以从目录sdcc\bin_vc拷贝到sdcc\bin目录里,就可以运行起来了。
 
SDCC的部分工程里使用开源库boost库,因此你需要到网站:
http://www.boost.org/
下载相应的版本,解压放到一个目录下,然后在VC2012的工程目录里指定相应的路径。就可以编译与boost相关的工程了。
 
为了编译词法分析和语法分析部分相关的代码,需要工具bison.exe,flex.exe和gawk.exe,可到网站htttp://unxutils.sourceforge.net下载,主要下载文件UnxUtils.zip。当成功下载之后,在根目录下创建一个文件夹c:\UnxUtils,然后把所有文件解压到此目录下面。然后在VC++Directories目录里添加此目录,这样就让可以工程访问相应的工具。
 
记得一定下载此版本UnxUtils的执行文件,其它版本的执行的文件,可能会导致sdcpp项目编译不通过。
 
做这些动作之后,在VC2012的工程里选择 build all就可以编译所有文件出来。后面就可以在目录sdcc\bin_vc找到所有输出文件,拷贝到sdcc\bin就可以使用了,可以开始对51的程序进行开发和编译了。
 
蔡军生 QQ;9073204  深圳
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息