ctrl+shift+p filters: :st2 :st3 :win :osx :linux
浏览

CMakeBuilder

作者: rwols ST3

直接在 Sublime Text 3 内部配置、构建和测试 CMake 项目。

详细信息

安装次数

  • 总计 11K
  • Win 4K
  • Mac 2K
  • Linux 4K
8月6日 8月5日 8月4日 8月3日 8月2日 8月1日 7月31日 7月30日 7月29日 7月28日 7月27日 7月26日 7月25日 7月24日 7月23日 7月22日 7月21日 7月20日 7月19日 7月18日 7月17日 7月16日 7月15日 7月14日 7月13日 7月12日 7月11日 7月10日 7月9日 7月8日 7月7日 7月6日 7月5日 7月4日 7月3日 7月2日 7月1日 6月30日 6月29日 6月28日 6月27日 6月26日 6月25日 6月24日 6月23日 6月22日
Windows 1 1 0 0 2 0 2 0 1 0 2 2 0 2 2 1 0 0 0 0 1 1 3 0 1 2 2 0 0 2 0 1 0 1 0 1 0 0 1 1 1 0 4 1 0 0
Mac 2 1 1 0 0 0 2 0 1 0 0 0 2 0 0 0 0 1 1 0 0 0 0 0 0 0 0 1 0 0 0 1 1 1 0 0 0 1 0 0 1 0 0 0 1 1
Linux 0 0 1 0 0 2 1 0 0 3 2 1 3 0 1 2 1 0 1 2 1 2 1 1 0 0 3 1 1 0 1 1 0 0 1 0 0 1 1 1 1 0 0 1 0 2

Readme

源代码
raw.​githubusercontent.​com

CMakeBuilder

直接在 Sublime Text 3 内部配置、构建和测试 CMake 项目。

安装

运行以下命令

Package Control: Install Package

查找 CMakeBuilder。

版本 1.0.1 及以下版本没有服务器功能。以下是为版本 1.0.1 及以下版本提供的文档。

TL;DR

  1. 打开一个 .sublime-project 文件。

  2. 将此内容添加到您的项目文件的 "settings"

    "cmake":
    {
       "build_folder": "$folder/build"
    }
    
  3. 从命令面板运行“CMakeBuilder: Configure”命令。

  4. 检查您在 .sublime-project 文件中的新构建系统。

  5. CTRL + B + B

  6. F4 跳转到错误和/或警告。

请看下方的示例项目以获取更多选项。

参考

CMake 词典

“CMake 词典”指的是您在 Sublime 项目文件的“settings”中使用键 "cmake" 定义的 JSON 字典。CMake 词典接受以下键:

  • build_folder [必需字符串]

指向您想构建项目的目录的字符串。一个好的首选是 $folder/build

  • command_line_overrides [可选字典]

该字典的每个值都是字符串或布尔值。键值对传递给运行 cmake_configure 时的 CMake 调用,作为 -D 选项。例如,如果字典中有键值对 "MY_VAR": "BLOB",则 CMake 调用将包含 -D MY_VAR=BLOB。布尔值转换为 ONOFF。例如,如果字典中有键值对 "BUILD_SHARED_LIBS": true,则 CMake 调用将包含 -D BUILD_SHARED_LIBS=ON

  • generator [可选字符串]

指定 CMake 生成器的 JSON 字符串。

  • mac osx 的可用生成器:“Ninja”和“Unix Makefiles”。

    如果 osx 上未指定生成器,则“Unix Makefiles”是默认生成器。对于“Ninja”,您必须安装 ninja。使用 brew 安装它。

  • linux 的可用生成器:“Ninja”和“Unix Makefiles”。

    如果Linux中未指定生成器,则默认为“Unix Makefiles”。对于“Ninja”,您必须安装ninja。使用软件包管理器安装它。

  • 适用于Windows的可用生成器:“Ninja”和“Visual Studio”。

    如果Windows上未指定生成器,则默认为“Visual Studio”。无论您使用Ninja还是Visual Studio,您都需要Microsoft Visual Studio C++来配置项目。

    • root_folder [可选字符串]

根CMakeLists.txt文件所在的目录。如果此键不存在,假定Sublime项目文件所在的目录具有根CMakeLists.txt文件。

  • env [可选字典]

这是一个字符串的键值对字典。在配置时间此处放置环境变量。例如,如果您已设置gcc为默认编译器,要选择clang作为编译器,可以使用

"env": { "CC": "clang", "CXX": "clang++" }
  • platform [可选字符串]

对于支持平台参数的生成器。在本插件的情况下,这是Visual Studio。在实际应用中,将其设置为“x64”来构建64位二进制文件,而不是默认的32位。这是传递给CMake的-A参数。

  • toolset [可选字典]

对于支持工具集参数的生成器。在本插件的情况下,这是Visual Studio。在实际应用中,将其设置为{ "host": "x64" }以使用64位编译器而不是32位编译器。这是传递给CMake的-T参数。与command_line_overrides情况一样,字典被转换为字符串,如key1=value1;key2=value2

  • vs_major_version [可选整数]

当在Windows上使用Ninja生成器时,默认情况下它将使用系统中最新的Visual Studio SDK。如果您需要另一个SDK,定义vs_major_version数字为15或16。

任何键都可以由特定平台的覆盖键替代。平台键为"linux""osx""windows"之一。有关如何使用此功能的示例,请参阅下面。

示例项目文件

以下是一个用作起始点的Sublime项目示例。

{
    "folders":
    [
        {
            "path": "."
        }
    ],
    "settings":
    {
        "cmake":
        {
            "build_folder": "$folder/build",
            "command_line_overrides":
            {
                "BUILD_SHARED_LIBS": true,
                "CMAKE_BUILD_TYPE": "Debug",
                "CMAKE_EXPORT_COMPILE_COMMANDS": true
            },
            "generator": "Unix Makefiles",
            "windows":
            {
                "generator": "Visual Studio 15 2017",
                "platform": "x64",
                "toolset": { "host": "x64" }
            }
        }
    }
}

可用脚本命令

  • cmake_clear_cache,参数:{ with_confirmation : 布尔型 }
  • cmake_configure,参数:
  • cmake_diagnose,参数:
  • cmake_open_build_folder,参数:

命令菜单中的可用命令

  • CMakeBuilder:清除缓存
  • CMakeBuilder:配置
  • CMakeBuilder:诊断
  • CMakeBuilder:浏览构建文件夹...

所有命令均可通过命令菜单以及窗口顶部的工具菜单访问。

可用设置

  • silence_developer_warnings:JSON布尔型

如果为true,将在cmake_configure命令的CMake调用中添加选项-Wno-dev

  • always_clear_cache_before_configure:JSON布尔型

如果为true,将在运行cmake_configure命令之前始终清除CMake缓存。

  • ctest_command_line_args:JSON字符串

运行cmake_run_ctest时传递给CTest调用的命令行参数。

清除缓存

要强制重新生成CMake文件,请运行

CMakeBuilder: Clear Cache

然后运行

CMakeBuilder: Configure

诊断/帮助

如果您遇到困难且不知道该做什么,请尝试运行

CMakeBuilder: Diagnose

工具菜单

所有命令也都可在“CMakeBuilder”下的工具菜单中看到。

11

使用CTest运行单元测试

如果您已使用CMake的add_test函数配置了单元测试,则可以使用“ctest”构建变体运行这些测试。

使用make使用多个核心

此包调用cmake --build来构建你的目标。如果你正在使用“Unix Makefiles”生成器(make),并且希望使用多核,那么你有几个选项

  • 不要使用make,而是使用ninja
  • "env": {"CMAKE_BUILD_PARALLEL_LEVEL": 8}作为"cmake"配置中的环境变量。
  • 在您的 .bashrc中导出MAKEFLAGS变量。

各种生成器的语法突出显示

构建目标时会有语法突出显示,并且为每个生成器设置合适的行正则表达式,这样你就可以按F4键跳转到错误。

9
10 12

有效的变量替换列表

这是你.sublime-project文件中有效的变量替换的参考列表。

  • 软件包
  • 平台
  • 文件
  • 文件路径
  • 文件名
  • 文件基本名
  • 文件扩展名
  • 文件夹
  • 项目
  • 项目路径
  • 项目名
  • 项目基本名
  • 项目扩展名