How to edit Sublime Text build settings?

user1149549 picture user1149549 · May 21, 2014 · Viewed 49k times · Source

I want to enable -std=gnu++11 in Sublime Text 3's C++ Single File build on Ubuntu 12.04.

I have already upgraded the tool chain to the latest g++ and do not want to see the following error on every build:

error: #error This file requires compiler and library support for the ISO C++ 2011 standard. This support is currently experimental, and must be enabled with the -std=c++11 or -std=gnu++11 compiler options.

I browsed to /home/myuname/.config/sublime-text-3 but cannot find any file to edit.

How can I edit the build settings?

Answer

MattDMo picture MattDMo · May 21, 2014

edited

My original answer works, but there's a much better way of doing this, by creating your own build system. This use case is exactly why the feature is there.

Go to ToolsBuild SystemNew Build System… (all the way at the bottom) and enter the contents below. Save as C++ 11 Single File.sublime-build, and it will now be accessible in the build system menu. Select it, hit CtrlB to build, and then hit CtrlShiftB to run the resulting program.

{
    "cmd": ["g++", "-std=gnu++11", "${file}", "-o", "${file_path}/${file_base_name}"],
    "file_regex": "^(..[^:]*):([0-9]+):?([0-9]+)?:? (.*)$",
    "working_dir": "${file_path}",
    "selector": "source.c, source.c++",

    "variants":
    [
        {
            "name": "Run",
            "cmd": ["${file_path}/${file_base_name}"]
        }
    ]
}

If you need to edit it in the future, the file is in the User folder of Packages:

  • Linux: ~/.config/sublime-text-3/Packages
  • OS X: ~/Library/Application Support/Sublime Text 3/Packages
  • Windows Regular Install: C:\Users\YourUserName\AppData\Roaming\Sublime Text 3\Packages
  • Windows Portable Install: InstallationFolder\Sublime Text 3\Data\Packages