代码之家  ›  专栏  ›  技术社区  ›  Maldus

在cmake中提供多个工具链选项

  •  0
  • Maldus  · 技术社区  · 6 年前

    我有一个ARM平台的嵌入式项目,特别是AARCH64。

    直到现在我都在用化妆品。我最近设置了没有特殊问题的CMAKE。 我之所以搬到cmake,是因为我觉得它是一个更现代的构建工具,可以进行更智能的配置。

    例如,我可以使用不同的工具链(aarch64 elf-gcc-linaro、aarch64-linux-gnu-gcc,…)编译我的项目,我希望cmake尝试在系统上安装这些工具,并使用默认情况下首先找到的工具。

    这是可能的(还是有意的)?我希望这对于这个工具来说是一个简单的壮举,但是在搜索了一段时间之后,我似乎找不到正确的轨迹。

    1 回复  |  直到 6 年前
        1
  •  1
  •   user45189    6 年前

    是的,您可以让cmake项目搜索安装在操作系统中的可用工具链,选择一个并编译您的项目。我还为ARM嵌入式项目编写了一个cmake程序,因为现在它在不同的操作系统Windows和Unix之间是通用的。在Linux上有 ARM ToolChain 已安装,在Windows上有 Keil-MDK . 如果您有不同的工具链可供选择,您可以编写cmake脚本,该脚本将使用如下命令查找路径 find_path() 然后调用正确的“toolchianxx.cmake”脚本,为选定的编译器设置正确的编译器标志。

    在您的特定问题中,只需使用find_path命令并使用hits在“预设”已知路径中查找已安装的编译器。