【问题标题】:Geany - Howto easily configure ARM C/C++ toolchain for cross-compilationGeany - 如何轻松配置 ARM C/C++ 工具链以进行交叉编译
【发布时间】:2021-01-23 14:09:31
【问题描述】:

我是嵌入式 linux 新手,想将 Geany 用作嵌入式 linux 系统应用程序开发人员的轻量级 IDE。开发系统是Ubuntu 16.04,目标是STM32MP1板(ARM Cortex-A7)。 Ubuntu 上的交叉编译工具链已经安装并且可以工作。在命令行上构建应用程序的典型工作流程是:

  • 打开终端
  • 调用源[路径]/environment-setup-cortexa7t2hf-neon-vfpv4-ostl-linux-gnueabi
  • 调用制作

这行得通,但我怎样才能通过 Geany 实现这一目标? source 命令调用一次的 shell 文件包含许多命令(导出、路径扩展等),这些命令用于为打开的终端设置 ARM 工具链。

有没有一种简单的方法可以将此文件或其内容包含在 Geany 的构建配置中?这样我就可以使用 Geany 工具栏项编译单个文件并构建/链接整个应用程序?

【问题讨论】:

    标签: linux gcc arm embedded-linux geany


    【解决方案1】:

    这行得通,但我如何使用 Geany 实现这一目标?

    转到Build -> Set Build Commands

    然后将compile命令设置为:

    sh -c 'source "[Path]/environment-setup-cortexa7t2hf-neon-vfpv4-ostl-linux-gnueabi" && make'
    # substitute sh with the shell you want to actually run
    
    # or if your default shell is the one you want to run
    # I suspect `geany` just calls `system()`
    source "[Path]/environment-setup-cortexa7t2hf-neon-vfpv4-ostl-linux-gnueabi" && make
    

    【讨论】:

    • 不幸的是,这两个选项都不起作用。有错误消息'/bin/sh: 1: source: not found'和'sh: 1: source: not found'。我找到的解决方法是从终端打开 Geany,该终端已经执行了“源”命令。
    • sh 更改为 bash 或使用点
    猜你喜欢
    • 2021-08-30
    • 2019-01-08
    • 2016-01-15
    • 2016-03-16
    • 2010-10-07
    • 1970-01-01
    • 1970-01-01
    • 2018-09-28
    • 2021-07-26
    相关资源
    最近更新 更多