This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] J721EXSOMXEVM:在使用 ti-SDK-EVM-08构建的 yocot Linux 映像中缺少 libstdc++fs.a

Guru**** 2012440 points
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1053215/j721exsomxevm-missing-libstdc-fs-a-in-the-yocot-linux-image-build-using-ti-sdk-evm-08

器件型号:J721EXSOMXEVM

您好!

我们将根据本文档 https://software-dl.ti.com/jacinto7/esd/processor-sdk-linux-jacinto7/08_00_00_08/exports/docs/linux/Overview_Building_the_SDK.html 中提供的说明使用 Yocto 构建 TI 处理器 SDK Linux 根 FS。 我们能够成功构建根 FS 映像。 我们应用程序的一部分需要 C++文件系统库`libstdc++fs.a`。 当我们查看 SDK 或构建的 rootfs 映像随附的 sysroot 时、无法找到`libstdc++fs.a`库。

当我查看 meta-arm/meta-arm-toolchain/meta-devtoolchain/external-arm-toolchain/external-arm-toolchain.bb 时、我看到`libstdc++-staticdev`包含在内。 我还将其包含在"build/conf/local.conf"中、并重建了映像。 我仍然看不到`libstdc++fs.a"的创建。 我还搜索了整个构建 文件夹、找不到该库。 如果我能得到一些 意见或建议、我会非常感谢您如何构建并将此库包含在根 FS 映像中。

谢谢

Anup

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Anup、您好!

    很抱歉耽误您的回答。

     libstdc++fs.a 是 gcc-arm-9.2-2019.12-x86_64 Aarch64-none-linux-GNU 工具链的一部分。 您可以在 以下位置找到它:./Aarch64-no-linux-gnU/lib64/libstdc++fs.a

    此致

    Karthik

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Karthik、

    是的、我看到在我的 toolchain dir 中、这是我在构建基于 Yocto 的 rootfs 映像时在以下命令中设置为 toolchain_base 路径的内容

    toolchain_BAS= 机器= bitbake -k tisdk-default-image


    我的问题是,如何获取 rootfs 映像中包含的`libstdc++fs.a`? 我看不到`libstdc++fs.a`
    在使用上述命令构建的 rootfs 映像中。

    谢谢
    Anup
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Anup、

    如果只是复制此存档、您是否可以编写自己的配方或包装后步骤、将其放置在所需位置?

    此致

    Karthik

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Karthik、

    如果只是复制此档案、

    我假设您正在讨论、在我的 Yocto 构建过程中添加一个步骤 、将`libstdc++fs.a`从 toolchain dir 复制到最终的 rootfs 映像。 我可以这样做,但不确定这是不是正确的做法。  如果    我们找不到其他方法来实现它、我可以将其作为最后的手段。 原因是,其他库(如    libstdc++.so)包含在 rootfs 映像中。 我很好奇  为什么`libstdc++fs.a` 缺失。 我尝试将"libstdc++-staticdev"添加 到我的图像配方 tisdk-default-image.bb、但它仍然没有帮助。 我深入研究了 meta-arm、OE 内核和 meta-Arago、其中包括 STDC++ 、并尝试包含 "libstdc++-staticdev" 、但仍然无法包含 libstdc++fs.a。 如果有人 可以告诉我在运行以下命令时如何将`libstdc++.so`包含在我的 rootfs 映像中(可能是要查看的正确方法)、这可能会帮助我尝试包括"libstdc++fs.a"

    toolchain_BAS= MACHINE=J7-EVM bitbake -k tisdk-default-image

    谢谢

    Anup

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Anup、

    这是一个通用的工具链问题、我建议您查看 meta-arm 或 Yocto 项目邮件列表以获取建议。

    此致

    Karthik