sublime-text 环境配置(持续更新)

C++、C 环境配置

Attention

  1. 以下皆为单文件编译运行,多文件联合需要 makefile(后续更新)
  2. 插件推荐

1. Windows

首先安装 C、C++ 编译器。较为自由的有以 GNU 为代表的 gcc 和 g++。windows 上没有 GNU,但是有 MinGW(全称 Minimalist GNU on Windows),是 GNU 在 windows 上的版本。安装途径:

  1. 官网
  2. Dev C++ 默认使用 MinGW(打开所在路径->dev C++ 所在路径下有一个 MinGW64 的文件夹)

然后配置环境变量( g++,gcc 编译命令需要根据一些路径,找到对应的程序对代码进行编译)

此电脑 -> 属性 -> 高级系统设置 -> 环境变量 -> 系统变量(S) -> Path 双击 -> 新建 -> 找到对应 MinGW 的 gcc, g++路径,例如 D:\software\Dev-Cpp\MinGW64\bin,将这个路径填写

接下来再返回的过程中,每一个窗口都要点击确定

可能不会立马生效,需要重启 or 等若干分钟
打开命令行 cmd.exe,输入 g++ --version,如果有版本信息,说明环境配置成功。

现在,给定一个 .c 文件或者 .cpp 文件,我们可以通过命令行编译代码文件了,命令:

g++ test.c -o test

-o 输出到文件,输出文件是 text.exe,默认同目录。
注意一点, gcc, g++ 等编译器只是帮助我们编译了代码文件,并不能直接运行,集成环境(dev C++只是可以帮我们顺便运行输出文件而已)
运行,命令行输入:

test.exe

以上,已经确定完成了 C,C++ 环境的搭建,那么如何在 sublime-text3 中完成这整个过程呢?

打开 sublime-text3 -> Tools -> build systems -> New build systems...
需要填写一个 sublime-build 文件,如下书写:

{
    "working_dir": "$file_path",
    "cmd": "g++ -Wall -std=c++14 -fexec-charset=GBK \"$file_name\" -o \"$file_base_name\"",
    "file_regex": "^(..[^:]*):([0-9]+):?([0-9]+)?:? (.*)$",
    "selector": "source.c, source.cpp",
 
    "variants": 
    [
        {   
            "name": "Run",
            "shell_cmd": "g++ -Wall -std=c++14 -fexec-charset=GBK \"$file\" -o \"$file_base_name\" && start cmd /c \"\"${file_path}/${file_base_name}\" & pause\""
        }
    ]
}
  1. g++ 编译 C++,gcc 编译 C,可自行修改。C++兼容C,g++可以编译 c 和 C++;如果非要只编译 C,则将 g++ 改为 gcc,同时删除 -std=c++14
  2. 编译参数:
  • -Wall,开启警告提示
  • -std=c++14,按照 C++14 新标准
  • -fexec-charset=GBK,编码字符集 GBK;倘若编译运行失败,提示error: no iconv implementation, cannot convert from UTF-8 to GBK,则删除 -fexec-charset=GBK选项
  • -o,输出文件为
  • lmysqlclient,链接数据库
  • -lpthread,链接多线程库
  • -llog4cpp,链接log4cpp库
  • -lboost_system -lboost_thread -lboost_filesystem,链接 boost 库
    ......

假设命名为 C_myself.sublime-build,回到 Tools -> build systems -> 选择刚才命令的的 C_myself,最好别是 automatic。
用法:

用 sublime 打开 test.c 文件,按 F7(或者 ctrl + B),会跳出一个选择,选择最下面的 run,即可,编译运行一键完成。

sublime.gif

效果如图:

2. Linux

linux 下一般有 GNU 套件,默认有 gcc 和 g++;如果没有,安装GCC编译器十分简单,终端命令

sudo apt-get install build-essential (ubuntu)
sudo yum install gcc-c++ (CentOS)
sudo pacman -S gcc (ArchLinux,如 manjaro)

输入命令 g++ --version 若有版本信息,说明安装成功!
接下来只需要书写 sublime-build 文件即可,例如在 gnome 桌面下,sublime-build 如下:

{
    "encoding": "utf-8",
    "working_dir": "$file_path",
    "shell_cmd": "g++ -std=c++14\"$file_name\" -lpthread -o \"$file_base_name\"",
    "file_regex": "^(..[^:]*):([0-9]+):?([0-9]+)?:? (.*)$",
    "selector": "source.c++",
 
    "variants": 
    [
        {    
        "name": "Run",
        "shell_cmd": "g++ -std=c++14 '$file' -lpthread -o '$file_base_name' && gnome-terminal -x bash -c \"'${file_path}/${file_base_name}';read -p '\nmake it !'\""
        }
    ]
}

Ctrl + B(或者 F7) 即可调出终端,输出结果。

如果需要链接第三方库:

  1. log4cpp :-llog4cpp
  2. opencv : pkg-config --cflags --libs opencv,放在\"$file_base_name\"之后有效
  3. boost : -lboost_system
  4. Boost.asio(最折腾): -lboost_system -lboost_thread -lboost_filesystem -I/usr/local/include/boost -L/usr/local/lib

Python 环境配置

1. windows

安装好 Python,书写 sublime-build 文件:

{
    "encoding": "utf-8",
    "working_dir": "$file_path",
    "shell_cmd": "python -u \"$file\"",
    "file_regex": "^[ ]*File \"(...*?)\", line ([0-9]*)",
    "selector": "source.python",
 
    "variants":
    [
        {
            "name": "Run",
            "shell_cmd": "start cmd /c \"python -u \"$file\" & pause\"",
        }
    ]
}

2. Linux

例如在 Gnome 桌面下,sublime-build 如下:

{
    "encoding": "utf-8",
    "working_dir": "$file_path",
    "shell_cmd": "/usr/bin/python3 -u \"$file\"",
    "file_regex": "^[ ]*File \"(...*?)\", line ([0-9]*)",
    "selector": "source.python",
 
    "variants":
    [
        {
            "name": "Run",
            "shell_cmd": "gnome-terminal -x bash -c \"python3 '${file}';read -p '\nYHL make it !'\""
        }
    ]
}

Java 配置

1. Windows

安装好 Java 环境之后,书写 sublime-build :


{
    "shell_cmd": "ECHO Compiling $file_base_name.java & ECHO ============Out============ & javac -encoding UTF-8 \"$file\" & java \"$file_base_name\"",
    "file_regex": "^(...*?):([0-9]*):?([0-9]*)",
    "working_dir": "${file_path}",
    "selector": "source.java",
    "encoding":"gbk",
    "variants":[
         {   
            "name":"编译",
            "shell_cmd": "ECHO Compiling $file_base_name.java & javac -d . -encoding UTF-8 \"$file\"",
        },
        {   
            "name":"运行当前类",
            "shell_cmd":" java \"$file_base_name\" "       
        },
        {   
            "name":"在cmd中运行",
            "shell_cmd":" start cmd /c \"javac -encoding UTF-8 \"$file\" & java \"$file_base_name\" & pause \""  
        }
   ]
}

插件推荐

你可能感兴趣的:(sublime-text 环境配置(持续更新))