zoukankan      html  css  js  c++  java
  • Sublime Text 2结合VS2010配置C C++编译

    本文参考以下文章 特此谢谢
    http://www.cnblogs.com/akira90/archive/2013/01/02/2842571.html
    因遇到错误,浪费一个小时才解决
    一、利用VS2010搭建命令行编译环境
    台式PC,WIN7系统 + VS2010
    1. 在“环境变量”里面创建三个系统变量
      在命令行输入set命令会有对应的VS信息,vs2010是VS100COMNTOOLS
    <1>名字: VS100Common
           值: C:Program FilesMicrosoft Visual Studio 10.0Common7
    <2>名字: VS100VC
           值: C:Program FilesMicrosoft Visual Studio 10.0VC
    <3>名字: VS100SDK
           值: C:Program FilesMicrosoft SDKsWindowsv7.0A
    2. 创建三个用户变量
    <1>名字: PATH
    值 :%VS100VC%BIN;%VS100Common%IDE;%VS100Common%TOOLS;%VS100SDK%BIN;%PATH%
    <2>名字: INCLUDE
    值 :%VS100VC%INCLUDE;%VS100VC%ATLMFCINCLUDE;%VS100SDK%INCLUDE;%INCLUDE%
    <3>名字: LIB
    值 :%VS100VC%LIB;%VS100VC%ATLMFCLIB;%VS100SDK%LIB;%LIB%
    3. 打开终端运行cl,如果没有提示非命令的话,如下图配置成功。不行的话,重启电脑。
    4. 随便写一个程序:
    #include <iostream>

    using namespace std;
    int main()

    {
        unsigned int a = ~0;
        if( a>65536 )
        {
          cout<<"32 bit"<<endl;
        }
        else
        {
          cout<<"16 bit"<<endl;
        }
        return 0;
    }

     5. 编译运行:结果如下图

     

     

    二、Sublime Text2搭建C/C++开发环境

    1. 打开Sublime Text2,选择tools,然后选择Build System,然后选择 New Build System。
    然后在里面输入下面的代码:
        "cmd": ["CL", "/Fo${file_base_name}", "/O2", "${file}"],
        "file_regex": "^(..[^:]*):([0-9]+):?([0-9]+)?:? (.*)$",
        "working_dir": "${file_path}",
        "selector": "source.c, source.c++",
        "encoding":"cp936",
        "variants":
        [
            {
                "name": "Run", 
                "cmd": ["2.bat", "${file_base_name}.exe"]
            }
        ]
    }


    2. 然后保存为:MSComplie.sublime-build,注意后缀一定为sublime-build,名字可以随便取,便于识别就好。
    上面的代码仅仅是在原来代码的基础了针对windows平台下CL的修改了两节,同时加了几个逗号,并且修改了编译环境的编码,因为默认的Sublime Text 2的编码是UTF-8。。
    代码的原理很简单,就是在命令行里编译源文件的命令 CL /FoObjectName /O FileName
    打开上面那个demo测试下:ctrl+B编译
     

    Ctrl+Shift+B运行程序界面如下:

     

    果编译运行时遇到如下错误:

    [Error 2] 
    [cmd: [u'CL', u'/Fotest', u'/O2', u'C:********
    ***********
    配置文件没有生效,重启Sublime Text 2就好。
    3. 参考http://isharehello.blog.163.com/blog/static/218699419201403102856917/
    MSComplie.sublime-build 也可以这么写
    <1> 创建以下两个bat文件,丢到添加了环境变量的文件中,我的是直接丢在system32下的。
      1.bat

     @echo off

    %1
    pause
    del *.obj *.exe ::这一行是用来删除生成的obj和exe文件的,可以不加
    exit

      2.bat
    @echo off
    start 1.bat %1
     

    <2> MSComplie.sublime-build粘贴以下内容

     

        "cmd": ["CL", "/Fo${file_base_name}", "/O2", "${file}"],
        "file_regex": "^(..[^:]*):([0-9]+):?([0-9]+)?:? (.*)$",
        "working_dir": "${file_path}",
        "selector": "source.c, source.c++",
        "encoding":"cp936",
        "variants":
        [
            {
                "name": "Run", 
                "cmd": ["2.bat", "${file_base_name}.exe"]
            }
        ]
    }

    <3> 同样Ctrl+B Ctrl+Shift+B 而命令行以系统命令窗口弹窗显示

     

  • 相关阅读:
    静态链表的C语言实现
    struct和typedef struct彻底明白了
    线性表的链式存储结构的C语言实现
    线性表的顺序存储结构C语言的实现
    算法基础知识
    数据结构基础认识
    Storm入门学习随记
    【坑】执行Consumer的时候发生java.net.UnknownHostException错误
    Kafka入门学习随记(二)
    Maven学习随记
  • 原文地址:https://www.cnblogs.com/zzugyl/p/3865112.html
Copyright © 2011-2022 走看看