DATE: 2018.12.10
文章目录
1、前言
最近在编译一份开源代码时,由于VS对最新标准C实现C99的支持性差,在搭建编译环境过程中遇到了一些问题,特记录于此。
现在很多开源代码(比如x264,ffmpeg)中的C代码都采用c99规范,Linux gcc编译器对c99目前也不是完全支持,但可以通过指定参数-std=c99或-std=gnu99来使用c99规范;VS对c99的支持性就更差了,目前vs2010,vs2012都不支持c99规范,从vs2013开始才部分支持c99规范。因此,问题来了:
如果我们需要vs2010版本编译的可执行文件或库怎么办呢?
目前主要有一种解决方案:
采用c99toc89转换工具进行预处理然后送入编译器进行编译。 具体方法在3小节中讲述 。