背景
目前很多公司的c项目代码都是在linux下编译的。而由于linux下编写代码比较麻烦,平时我们开发都是用UE或者Source Insight写代码后上传。
但用UE和SI存在以下问题:
1 写完代码后不能在本地编译,需要上传到服务器才能编译。出现语法错误又要回来改,比较耗时。特别是rcc这种多人共用同一个编译环境的,还经常相互干扰。
2 代码自动提示不够智能,因为这些程序缺少编译器,没有语义识别。更适合阅读而不是写代码用的。
解决思路
vs2010是一款比较强大的IDE,使用它可以明显提高开发效率。但直接使用vs2010编译linuxc项目存在以下问题:
1 vs2010无法识别某些Linux特有函数,导致无法编译
2 vs2010不支持utf8格式的源代码(需要转换成带签名的utf8格式才能识别)
3 vs2010内置编译器对于c99支持不好,特别是“在使用处定义变量”的功能
对于新开发项目,以上几点困难可以避免。但对于现存老项目,这些问题不方便整改。
这里提供一个解决方案(笔者经历过的几个项目实测可行),供参考。
问题1解决方案:对于这些特有函数,可以在windows建一个头文件,把相应原型写上。使用gcc编译器替代vs2010内置编译器
问题2解决方案:使用vc助手
下面文章提到的文件我后面会放到了百度网盘上。有兴趣私信,我发下载地址给你。
实际操作
安装vs2010快捷方式
或者更高版本更好,可惜我们开发环境只允许装这个版本
vs安装目录
安装win32系统的gcc
gcc-8.1.0-32.exe 我机器已经安装过了,没法截图。安装程序下载地址见后面。
安装完后的情况:
gcc安装目录
安装gawk
因为gcc默认编译输出无法被vs2010识别,所以需要用awk脚本进行转换
安装完后在系统环境变量里面增加Path变量,把gcc和awk程序路径添加进去
修改PATH环境变量
添加自定义的linux头文件
按Linux下头文件目录建好对应的头文件,每个文件统一写上
仿linux头文件
在com里面写上特有函数原型
把真正函数定义写在这个文件,方便查看修改
为方便大家操作,我把这些全打包在一个压缩包,直接解压即可。
修改gcc编译脚本
由于gcc安装路径与自定义头文件存放路径不同,需要修改编译脚本里面的头文件路径
需要修改gcc/bin 里面的-I选项即可,其它的不用改
用awk转换gcc编译输出让vs可以识别
安装vs助手
vs助手一定要装,对于vs不兼容的代码语法高亮全靠它
设置vs2010工程选项
打开vs2010进行以下设置
a 添加gcc编译命令
工具->外部工具->添加->按以下的参数新增gcc编译命令
外部工具
b 将gcc命令添加到菜单栏
工具->自定义->命令->在“工具”类别下面找到“外部命令8”(就是刚才添加的外部工具gcc)->确定
选中新生成的“外部命令8”菜单,按下移按钮,调整到自己比较喜欢的位置。
点击修改所选内容按钮,将其改名为gcc(&8)
效果如下:
添加后的菜单栏多了gcc菜单
以后修改了代码,保存,再点这个菜单或者(ctrl + 8)即可编译
编译结果在输出窗口
gcc编译成功
如果有语法错误,双击错误信息即可自动定位。
其它vs2010建议修改的设置
工具->选项->文本编辑器->文件扩展名
在扩展名文本框填上.pc,编辑器选择Visual C++,点添加
这一步目的是为了让工程里面的.pc文件也能高亮显示
工具->选项->文本编辑器->C/C++
钩选上行号,这样会在编辑界面左侧显示行号
工具->选项->文本编辑器->C/C++->制表符
制表符大小改为4,选中“插入空格”。这样输入tab键时会自动替换成空格,保证在其它编辑器上代码对齐不会乱
工具->选项->文本编辑器->C/C++->高级->IntelliSense
把“禁用IntelliSense”改为True,能减少编译器占用系统资源
工具->选项->文本编辑器->C/C++->格式设置->大纲显示
把“大纲语句块”改为True,这样if else等语句块也能折叠显示
工具->选项->环境->键盘
搜索“折叠”,找到“编辑.折叠块当前块”命令,为其分配快捷键“alt+/”,这样可以使用快捷键快捷折叠光标所在的语句块,方便阅读代码
快捷键设置
把项目相关的源代码下载到本地windows
以后开发时,在本地修改编译完后通过svn或者git提交代码
使用vs2010新建工程
文件->新建->项目->W32控制台应用程序->填上项目名,选择好项目保存位置,
新增项目
点击确定,在弹出对话框点“下一步”,把附加选项的“空项目”打上钩
添加空项目
在项目属性->C/C++->附加包含目录
填上自定义的Linux头文件目录
头文件目录
按代码目录结构新建文件夹并添加对应的文件(先新建筛选器,再添加现有项)
按代码目录建好树形结构并导入文件
好,现在就可以开始写代码了。写完代码后如果是一般直接使用vs编译就可以检查语法错误(推荐,速度较快)。有时碰上vs自带编译器不兼容的情况,则可以点击菜单栏的gcc命令进行编译。注意只能编译,链接还是会报错。这个暂时没解决,不过不影响开发。
下篇文章打算分享一些vs2010使用技巧。关于提高开发效率的技巧,如果您有什么好建议欢迎留言分享^_^。
1.文章《vs2010怎么修复vs2010下载好了怎么打开!》援引自互联网,为网友投稿收集整理,仅供学习和研究使用,内容仅代表作者本人观点,与本网站无关,侵删请点击页脚联系方式。
2.文章《vs2010怎么修复vs2010下载好了怎么打开!》仅供读者参考,本网站未对该内容进行证实,对其原创性、真实性、完整性、及时性不作任何保证。
相关推荐
- . 现代买票为什么带上携程保险
- . 潮阳怎么去广州南站
- . 湖南马拉河怎么样
- . 烧纸为什么到三岔路口
- . 百色为什么这么热
- . 神州租车怎么样
- . 芜湖方特哪个适合儿童
- . 护肤品保养液是什么类目
- . 早晚的护肤保养有哪些项目
- . 女孩护肤品怎么保养的最好