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.

[参考译文] AM625:SDK 编译中缺少来自 meta-toolchain-arago-tisdk 的文件

Guru**** 2554750 points


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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1215248/am625-missing-files-in-sdk-build-from-meta-toolchain-arago-tisdk

器件型号:AM625

您好!

我已尝试使用 SDK 08.04.01.04中的2 methodes 构建 SDK (dunfall);

1 - bibake image-base -c population-sdk、在 conf/local.conf 中缺少原子设备相关性

SDK 已生成、但在安装期间挂起、存在一些错误。

2- bitbake meta-toolchain-arago-tisdk、具有使用 xenomai、chromium、apps 等软件包定制的 toolchain_target_task

安装成功。

我有2个文件:environment-setup 和 environment-setup-Aarch64-linux、但这些文件都不允许我构建应用程序。

我对使用 bitbake 成功编译的应用使用相同的源代码。

似乎缺少一些系统头文件:

对于 environment-setup-Aarch64-linux、将出现错误问题 。

对于 environment-setup-Aarch64-linux、将出现错误问题

我使用以下外部工具链:

https://nexus-energie.actiatelecom.fr/repository/tools/gcc/gcc-arm-9.2-2019.12-x86_64-aarch64-none-linux-gnu.tar.xz
https://nexus-energie.actiatelecom.fr/repository/tools/gcc/gcc-arm-9.2-2019.12-x86_64-arm-none-linux-gnueabihf.tar.xz


安装 SDK 的主机上的/usr/local/arago-2021.09目录中没有 sys/mman.h。

我试着关注这个主题: https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1202155/faq-am6x-am335x-am437x-using-a-yocto-internal-toolchain-for-target-image-builds-and-cross-development-sdk-installer-generation-with-yocto-dunfell-based-v8-x-sdks-for-sitara-mpus
但我的 SDK 为 SDK 8.4、而不是线程中所请求的8.5。

那么、您能告诉我解决该问题的最佳方法是什么:
1 -在 SDK 8.4上强制执行补丁
2-升级到8.5
3-升级至8.6
4 -如果是稳定的释放,切换到柯克斯通?

您能告诉我如何解决此问题吗? ​

此致、

Alexis。

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

    尊敬的 Alexis:

    Unknown 说:
    我有2个文件:environment-setup 和 environment-setup-Aarch64-linux、但没有任何文件允许我构建我的应用程序。

    控制输入  环境设置 何时使用  meta-toolchain-arago-tisdk 工具链安装程序。 您可以记得您得到了正确的密码、因为命令提示符将会进入 [Linux-开发套件]

    我对使用 bitbake 成功编译的应用使用相同的源代码。

    似乎缺少一些系统头文件:

    对于 environment-setup-Aarch64-linux、将出现错误问题 。

    对于 environment-setup-Aarch64-linux、将出现错误问题

    [/报价]

    您是否想说、在安装的工具链目录中搜索时找不到这些头文件? 当我从 SDK 8.6版中查看工具链安装程序时、这些文件也在其中。  请参见下方的。 您应该会在您基于 SDK v8.4源代码创建的安装程序中看到类似内容。 这些是非常基本的头文件。

    a0797059@dasso:~/ti/ti-processor-sdk-linux-am62xx-evm-08.06.00.42/linux-devkit
    $ find . -name mman.h
    ./sysroots/aarch64-linux/usr/include/asm/mman.h
    ./sysroots/aarch64-linux/usr/include/sys/mman.h
    ./sysroots/aarch64-linux/usr/include/asm-generic/mman.h
    ./sysroots/aarch64-linux/usr/include/bits/mman.h
    ./sysroots/aarch64-linux/usr/include/linux/mman.h
    a0797059@dasso:~/ti/ti-processor-sdk-linux-am62xx-evm-08.06.00.42/linux-devkit
    $ find . -name errno.h
    ./sysroots/x86_64-arago-linux/usr/share/ti/cgt-pru/lib/src/errno.h
    ./sysroots/x86_64-arago-linux/usr/share/ti/cgt-pru/include/errno.h
    ./sysroots/x86_64-arago-linux/usr/share/ti/cgt-c6x/include/libcxx/errno.h
    ./sysroots/x86_64-arago-linux/usr/share/ti/cgt-c6x/include/errno.h
    ./sysroots/x86_64-arago-linux/usr/share/ti/gcc-arm-none-eabi/arm-none-eabi/include/sys/errno.h
    ./sysroots/x86_64-arago-linux/usr/share/ti/gcc-arm-none-eabi/arm-none-eabi/include/errno.h
    ./sysroots/aarch64-linux/usr/include/asm/errno.h
    ./sysroots/aarch64-linux/usr/include/sys/errno.h
    ./sysroots/aarch64-linux/usr/include/errno.h
    ./sysroots/aarch64-linux/usr/include/asm-generic/errno.h
    ./sysroots/aarch64-linux/usr/include/bits/errno.h
    ./sysroots/aarch64-linux/usr/include/linux/errno.h

    Unknown 说:

    这些步骤大致适用于所有 TI Processor SDK Linux v8.x 型号。 也许不需要补丁或补丁应用不明确、但如果出现这些情况、应该很容易弄清楚。 如果您在采用此解决方案时遇到特定问题、请告诉我、我可以提供一些额外的指导。

    [quote userid="523492" url="~/support/processors-group/processors/f/processors-forum/1215248/am625-missing-files-in-sdk-build-from-meta-toolchain-arago-tisdk 这样、您能告诉我解决这个问题的最佳方法是什么:
    1 -在 SDK 8.4上强制执行补丁
    2-升级到8.5
    3-升级至8.6
    4 -如果是稳定版本,则切换到 kirkstone?[/quote]

    我不希望升级到8.5或8.6会对您的特别关注产生任何影响,因为" Yocto 赌桌"应该是或多或少相同的。 采用8.5或8.6后的主要优势将是对 AM62x 器件功能提供更好、更强大的支持、这主要是通过其中包含的更新后的 Linux 内核和 U-Boot 树实现的。 您可以在此处看到更改:

    https://software-dl.ti.com/processor-sdk-linux/esd/AM62X/08_05_00_21/exports/docs/devices/AM62X/linux/Release_Specific_Release_Notes.html

    https://software-dl.ti.com/processor-sdk-linux/esd/AM62X/08_06_00_42/exports/docs/devices/AM62X/linux/Release_Specific_Release_Notes.html

    此致、Andreas

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

    尊敬的 Andreas:

    以下是 SDK 安装文件夹中的文件搜索:

    # CD /usr/local/arago-2021.09

    #查找。 -name mman.h

    #查找。 -name errno.h

    /sysroots/x86_64-arago-linux/usr/share/ti/cgt-pru/include/errno.h
    /sysroots/x86_64-arago-linux/usr/share/ti/cgt-pru/lib/src/errno.h
    /sysroots/x86_64-arago-linux/usr/share/ti/cgt-c6x/include/libcxx/errno.h
    /sysroots/x86_64-arago-linux/usr/share/ti/cgt-c6x/include/errno.h
    /sysroots/x86_64-arago-linux/usr/share/ti/gcc-arm-none-eabi/arm-none-eabi/include/sys/errno.h
    /sysroots/x86_64-arago-linux/usr/share/ti/gcc-arm-none-eabi/arm-none-eabi/include/errno.h

    sysroot 目录中没有任何内容。

    执行后:source /usr/local/arago-2021.09/environment-setup

    提示未更改,我的 shell 是:

    $ echo $shell  

    /usr/bin/zsh

    昨天,我启动从新设置的 SDK 编译( Docker Ubuntu 18.04.6 LTS ):

    1 - SDK 08.06:

    ./ oe-layertool-setup.sh -f configs/processor-sdk/ processor-sdk-08.06.00-config.txt  

    MACHINE=am62xx-evm bitbake tisdk-base-image && MACHINE=am62xx-evm bitbake tisdk-base-image -c populate_sdk

    2 - SDK 08.05:

    ./ oe-layertool-setup.sh -f configs/processor-sdk/ processor-sdk-08.05.00.21-config.txt

    Git -C meta-Arago AM 0001-meta-toolchain-Arago-fix-internal-toolchain-installe.patch
    Git -C meta-Arago AM 0002-tisdk-tefault-image-add-Qt5-to-generated sdk-why-us.patch
    Git -C meta-arm am 0001-optee-os_git.bb-Update-libgcc_locate_CFLAGS-sysroot-.patch
    Git -C meta-arm am 0002-optee-os-add-missing-sysroot-compiler-flag.patch
    Git -C meta-ti am 0001-optee-os-Fix-SRC_URI-to-allow 继承-patch-to-get.patch

    应用补丁时没有错误。

    MACHINE=am62xx-evm bitbake tisdk-base-image && MACHINE=am62xx-evm bitbake tisdk-base-image -c populate_sdk

    对于这两个我有相同的错误:

    错误:tisdk-base-image-1.0-r0.tisdk1 do_populate_sdk:无法安装软件包。 命令'/workspace/tisdk/build/arago-tmp-external-arm-glibc/work/am62xx_evm-linux/tisdk-base-image/1.0-r0.tisdk1/recipe-sysroot-native/usr/bin/opkg --volatile-cache -f /workspace/tisdk/build/arago-tmp-external-arm-glibc/work/am62xx_evm-linux/tisdk-base-image/1.0-r0.tisdk1/opkg.conf -t /workspace/tisdk/build/arago-tmp-external-arm-glibc/work/am62xx_evm-linux/tisdk-base-image/1.0-r0.tisdk1/temp/ipktemp -o /workspace/tisdk/build/arago-tmp-external-arm-glibc/work/am62xx_evm-linux/tisdk-base-image/1.0-r0.tisdk1/sdk/image/tmp/xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx/yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy/sysroots/aarch64-linux --force_postinstall --add-ignore-recommends ti-llvm3.6-dev --add-ignore-recommends OpenCL-monitor-dev --add-ignore-recommends libulm-dev
    收集的错误:
    *解算器遇到1个问题:
    *问题1/1:
    *-没有提供 packagegroup-core-standaling-sdk-target-1.0-R8.0.aarch64所需的 libatomy-dev
    *
    *解决方案1:
    *-不要要求安装提供 packagegroup-core-standalone-sdk-target 的软件包

    Diswaved package: Busybox-syslog
    dispend 软件包:coreutils-dev
    Diswavend 软件包:coreutils


    错误:故障的日志文件存储在:/workspace/tisdk/build/arago-tmp-external-arm-glibc/work/am62xx_evm-linux/tisdk-base-image/1.0-r0.tisdk1/temp/log.do_populate_sdk.2568032中
    错误:任务(/workspace/tisdk/sources/meta-arago/meta-arago-distro/recipes-core/images/tisdk-base-image.bb:do_populate_sdk)失败、退出代码"1"

    您能否告诉我您为在新设置的基础上构建 SDK 而逐步执行的命令的历史记录?

    您是否还可以确认要添加到 local.conf 的配置以将额外程序包 ssh 添加为 Xenomai。

    我花费了大量的时间来调试 SDK、这是我第四次从头开始重新构建 SDK。

    因此,我们需要找出问题的来源是什么?

    我确实需要提供一个可以完全正常运行的 SDK 版本08.04.01.04、您能否提供其他指导? 幻灯片。

    感谢您的帮助。

    此致、

    Alexis。

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

    尊敬的 Andreas:

    您能否尽快回答此主题、它会阻止将开发工具(SDK)部署到我们的开发团队。

    此致、

    Alexis。

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

    提示未更改,我的 shell 是:

    $ echo $shell  

    /usr/bin/zsh

    [/报价]

    您是否可以使用'bash'作为系统壳体进行配置。 这是生成的要求之一。 不能确定你最终是如何使用"zsh"的、通常 ubuntu 默认设置是"ash"、它不适用于我们的 SDK、从而导致非常奇怪的构建问题。 请参阅此处:

    https://software-dl.ti.com/processor-sdk-linux/esd/AM62X/08_04_01_09/exports/docs/linux/Overview_Building_the_SDK.html#prerequisites-one-time-setup

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    我真的需要提供一个完全可以正常运行的 SDK 版本08.04.01.04,您能提供更多指导吗? 请.

    我将 使用设置和启动一个简洁的构建  processor-sdk-08.04.01.09-config.txt (这是您需要的 AM62x SDK v8.4.x 的最新版本)、并将尝试使用官方版本生成工具链安装程序 Bitbake meta-toolchain-Arago-tisdk 方法首先(未添加软件包)、查看头文件并稍微报告此处。

    此致、Andreas

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

    尊敬的 Alexis:

    我设置了一个干净的环境、构建了 Devkit 安装程序、验证您要查找的头文件是否存在、该环境可以成功激活、一切都在工作、包括编译一个从 errno.h 访问定义的小程序 请找到以下所有步骤。

    a0797059@dasso:~/tisdk/am62xx-evm-test/build (master)
    $ MACHINE=am62xx-evm bitbake -k meta-toolchain-arago-tisdk
    NOTE: Your conf/bblayers.conf has been automatically updated.
    NOTE: Your conf/bblayers.conf has been automatically updated.
    <...>
    NOTE: Tasks Summary: Attempted 6195 tasks of which 4823 didn't need to be rerun and all succeeded.
    NOTE: Writing buildhistory
    NOTE: Writing buildhistory took: 6 seconds
    NOTE: Writing buildhistory
    NOTE: Writing buildhistory took: 1 seconds
    
    Summary: There were 2 WARNING messages shown.
    a0797059@dasso:~/tisdk/am62xx-evm-test/build (master)
    $ ll arago-tmp-external-arm-glibc/deploy/sdk/
    total 782848
    drwxrwxr-x 2 a0797059 a0797059      4096 Apr 18 08:14 ./
    drwxrwxr-x 6 a0797059 a0797059      4096 Apr 18 08:14 ../
    -rw-r--r-- 2 a0797059 a0797059      8106 Apr 18 08:11 arago-2021.09-aarch64-linux-tisdk.host.manifest
    -rw-r--r-- 2 a0797059 a0797059 801175336 Apr 18 08:13 arago-2021.09-aarch64-linux-tisdk.sh
    -rw-r--r-- 2 a0797059 a0797059     40397 Apr 18 08:08 arago-2021.09-aarch64-linux-tisdk.target.manifest
    -rw-r--r-- 2 a0797059 a0797059    395708 Apr 18 08:08 arago-2021.09-aarch64-linux-tisdk.testdata.json
    a0797059@dasso:~/tisdk/am62xx-evm-test/build (master)
    # See e2e.ti.com/.../4119837
    $ sed -i -e 's/\\(executable\\|dynamically linked\\)/\\(executable\\|dynamically linked\\|static-pie linked\\)/' arago-tmp-external-arm-glibc/deploy/sdk/arago
    -2021.09-aarch64-linux-tisdk.sh
    a0797059@dasso:~/tisdk/am62xx-evm-test/build (master)
    $ chmod +x arago-tmp-external-arm-glibc/deploy/sdk/arago-2021.09-aarch64-linux-tisdk.sh
    a0797059@dasso:~/tisdk/am62xx-evm-test/build (master)
    $ arago-tmp-external-arm-glibc/deploy/sdk/arago-2021.09-aarch64-linux-tisdk.sh
    Enter target directory for SDK (default: /usr/local/arago-2021.09): /home/a0797059/tmp/arago-2021.09
    You are about to install the SDK to "/home/a0797059/tmp/arago-2021.09". Proceed[Y/n]?
    Extracting SDK...done
    Setting it up...done
    SDK has been successfully set up and is ready to be used.
    $ cd /home/a0797059/tmp/arago-2021.09
    a0797059@dasso:~/tmp/arago-2021.09
    $ ll
    total 44
    drwxrwxr-x 3 a0797059 a0797059  4096 Apr 18 08:27 ./
    drwxrwxr-x 8 a0797059 a0797059  4096 Apr 18 08:25 ../
    -rw-rw-r-- 1 a0797059 a0797059  3640 Apr 18 08:26 environment-setup
    -rw-r--r-- 1 a0797059 a0797059  3617 Apr 18 08:26 environment-setup-aarch64-linux
    -rw-r--r-- 1 a0797059 a0797059  1492 Apr 18 07:17 post-relocate-setup.sh
    -rw-r--r-- 1 a0797059 a0797059 14721 Apr 18 07:17 site-config-aarch64-linux
    drwxrwxr-x 4 a0797059 a0797059  4096 Apr 18 08:08 sysroots/
    -rw-r--r-- 1 a0797059 a0797059   124 Apr 18 07:17 version-aarch64-linux
    a0797059@dasso:~/tmp/arago-2021.09
    $ source environment-setup
    [linux-devkit]:~/tmp/arago-2021.09> find . -name mman.h
    ./sysroots/aarch64-linux/usr/include/asm/mman.h
    ./sysroots/aarch64-linux/usr/include/sys/mman.h
    ./sysroots/aarch64-linux/usr/include/asm-generic/mman.h
    ./sysroots/aarch64-linux/usr/include/bits/mman.h
    ./sysroots/aarch64-linux/usr/include/linux/mman.h
    [linux-devkit]:~/tmp/arago-2021.09> find . -name errno.h
    ./sysroots/x86_64-arago-linux/usr/share/ti/cgt-pru/lib/src/errno.h
    ./sysroots/x86_64-arago-linux/usr/share/ti/cgt-pru/include/errno.h
    ./sysroots/x86_64-arago-linux/usr/share/ti/cgt-c6x/include/libcxx/errno.h
    ./sysroots/x86_64-arago-linux/usr/share/ti/cgt-c6x/include/errno.h
    ./sysroots/x86_64-arago-linux/usr/share/ti/gcc-arm-none-eabi/arm-none-eabi/include/sys/errno.h
    ./sysroots/x86_64-arago-linux/usr/share/ti/gcc-arm-none-eabi/arm-none-eabi/include/errno.h
    ./sysroots/aarch64-linux/usr/include/asm/errno.h
    ./sysroots/aarch64-linux/usr/include/sys/errno.h
    ./sysroots/aarch64-linux/usr/include/errno.h
    ./sysroots/aarch64-linux/usr/include/asm-generic/errno.h
    ./sysroots/aarch64-linux/usr/include/bits/errno.h
    ./sysroots/aarch64-linux/usr/include/linux/errno.h
    [linux-devkit]:~/tmp/arago-2021.09> cat test.c
    #include <stdio.h>
    #include <errno.h>
    
    int main(void)
    {
            printf("Testing errno.h definition: %d\n", -ETIMEDOUT);
            return 0;
    }
    [linux-devkit]:~/tmp/arago-2021.09> $CC test.c -o test
    [linux-devkit]:~/tmp/arago-2021.09> file test
    test: ELF 64-bit LSB executable, ARM aarch64, version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux-aarch64.so.1, for GNU/Linux 3.7.0, with debug_info, not stripped

    请注意、由于我在 Ubuntu 22.04上安装此软件、因此需要其中的"已执行"补丁步骤、这与手头的问题无关、 但如果您将安装程序提供给不在 Ubuntu 18.04上开发的用户、这可能也会有所帮助、因此我也想将其包含在这里。   有关这方面的更多信息、请参阅 e2e.ti.com/.../4119837

    此致、Andreas