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.

[参考译文] RTOS/SYSBIOS:SYSBIOS v06.52.00.12出现 GNU 链接器错误

Guru**** 2599795 points
Other Parts Discussed in Thread: SYSBIOS

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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/640006/rtos-sysbios-gnu-linker-error-with-sysbios-v06-52-00-12

器件型号:SYSBIOS
主题中讨论的其他器件: TLK105LTLK105

工具/软件:TI-RTOS

大家好、

在使用 SYSBIOS 06_52_00_12构建 PRU-ICSS 工业协议项目时、我们会观察到编译失败。 错误如下所示。

/home/gtbldadm/ti/bios_6_52_00_12/packages/ti/sysbios/rts/gnu/ReentSupport.c:83:未`对 ti_sysbios_rts_GNU_ReentSupport_checkIfCorrectLibrary'的引用
collect2:错误:LD 返回1退出状态

我已经为同一个附加了 CCS 构建日志。 如何修复此错误? 如果需要其他详细信息、请告诉我。

此致、
Nijin

e2e.ti.com/.../hdsl_5F00_diagnostic_5F00_AM437x_5F00_arm_5F00_build_5F00_issue_5F00_with_5F00_bios_5F00_6_5F00_52_5F00_00_5F00_12.txt

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    我已将您的疑问转发给软件专家。 他们的反馈应发布在此处。

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

    我们已将此内容添加到 Processor SDK RTOS 常见问题解答文档中、如前所述。 您能否查看以下链接、并告知我们您是否仍在遇到此问题:
    processors.wiki.ti.com/.../Processor_SDK_RTOS_FAQ

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

    您好、Rahul、

    感谢您的回答。 我们观察到 BIOS_6_52_00_12中的 SYSBIOS 库路径已更改。 因此、我们已将-library-path 从"${BIOS_CG_ROOT}/packages/gnu/targets/arm/libs/install-native/arm-none-eabi/lib/fpu 更正为"${BIOS_CG_ROOT}/packages/gnu/targets/arm/libs/install-native/arm-none-eabi/lib/hard "

    链接器选项的项目设置如下所示

    之前的错误现在消失了、但我们观察到与'stdin、'stdout'和'stderr'相关的不同错误。

    ****为项目 EtherCAT_SLAVE_DEMO_AM572x_ARM 构建配置 AM572x_release ****

    "C:\\ti\\ccs_v7_1_0_16\\ccsv7\\utils\\bin\\gmake"-k -j 4 all -O
    '构建目标:EtherCAT_SLAVE_DEMO_AM572x_ARM.OUT'
    '调用:GNU 连接器'
    "c:/ti/PSDK/AM57xx/04_02_00_03_Nightly_10112017/gcc-arm-none-eabi-6-2017-q1-update/bin/arm-none-eabi-gcc.exe -mtun=cortex-a15 -marm -Dam5728 -Dcore0 -DSOC_AM572x -DNO_UART_APWL_APP -DECAT_LIMIT_DEMO -O2 -ffunWL-SECTIONS -fdata-SECTIONS -g -gdwarf-2 -gwarf -Wall -remote_sdk-ram_default/cn/simum=-ram-ex-rand-ex-ram/status-ram-ram-ram-ram-ram/status-/cn/m1./cn/m1./cn/mtrad-/cn/m1./status-cwl=/cn/m1./cn/m1./cn/m1./cn/m1./docs/-date-s=/cn/m1./cn/set/cn/secv/docs/-date-difor/docs/-date-s=/docs/-date-s=-date-difor/for-cwl=/docs/-date-s=/cn/set-date-s/set-date-s/set-date-se-/ti/PSDK/AM57xx/04_02_00_03_Nightly_10112017/bios_6_52_00_12/packages/gnu/targets/arm/libs/install-native/arm-none-eabi/lib/hard start-group -o"EtherCAT_SLAVE_DEMO_AM572x_ARM.out""./GPIO_SoC.o""./spi_SoC.o""./uart_soc.o""./uart_spi_soc./tif./tispricl"/tisf.cn/board.cn"/tif.cn.tisf.cn/ticl.trap_tisf./tis.cn"
    Makefile:164:目标'EtherCAT_SLAVE_DEMO_AM572x_ARM.OUT'的配方失败
    D:\x0203287\Source\repo_2\public\sdk\protocol\EtherCAT_slave\ecat_appl\src\SYSBIOS\SysBIOS.aa15fg (GNU_ResentSupport.o):In Function `ti_SysBIOS_rts_GNU_ReentSupport_getReent (int0_t)':
    C:/ti/PSDK/AM57xx/04_02_00_03_Nightly_10112017/bios_6_52_00_12/packages/ti/sysbios/rts/gnu/ReentSupport.c:173:未`对"_SF_FASH_STDIN"的引用
    C:/ti/PSDK/AM57xx/04_02_00_03_Nightly_10112017/bios_6_52_00_12/packages/ti/sysbios/rts/gnu/ReentSupport.c:173:未`对"_SF_FASH_STDOUT"的引用
    C:/ti/PSDK/AM57xx/04_02_00_03_Nightly_10112017/bios_6_52_00_12/packages/ti/sysbios/rts/gnu/ReentSupport.c:173:未`对"_SF_FASH_STDERR"的引用
    C:/ti/PSDK/AM57xx/04_02_00_03_Nightly_10112017/bios_6_52_00_12/packages/ti/sysbios/rts/gnu/ReentSupport.c:173:未`对"_SF_FASH_STDIN"的引用
    C:/ti/PSDK/AM57xx/04_02_00_03_Nightly_10112017/bios_6_52_00_12/packages/ti/sysbios/rts/gnu/ReentSupport.c:173:未`对"_SF_FASH_STDOUT"的引用
    C:/ti/PSDK/AM57xx/04_02_00_03_Nightly_10112017/bios_6_52_00_12/packages/ti/sysbios/rts/gnu/ReentSupport.c:173:未`对"_SF_FASH_STDERR"的引用
    collect2.exe:错误:LD 返回1退出状态
    gmaked[1]:***[EtherCAT_SLAVE_DEMO_AM572x_ARM.OUT]错误1.
    Makefile:160:目标'all'的配方失败
    gmake:***[全部]错误2.

    ****构建完成****

    您能告诉我们哪些链接器设置需要进一步纠正以解决此问题吗?

    此致、
    Nijin

    PS:现在无法访问上述 Processor SDK 常见问题解答页面。 由于技术问题、它给我提供了"内部错误"。 不确定是否是暂时的问题。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    该链接现在应可用。 上星期可能已经停机了一段时间。 我还在 SYSBIOS 团队中进行了循环、让我们意识到了这个问题。

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

    你好、Nijin、

    将使用较旧的 SYS/BIOS 版本编译的工程迁移到 SYS/BIOS v6.51或更高版本时、需要遵循一些迁移步骤。 发行说明中有一个指向迁移步骤的指针。 我已粘贴以下直接链接:

    http://processors.wiki.ti.com/index.php/SYS/BIOS_with_GCC_(CortexA)#Migrating_existing_GCC_projects_to_SYS.2FBIOS_v6.51_or_newer

    如果遇到任何其他构建问题、请告知我们。

    最棒的

    Ashish

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

    Ashish 和 Rahul、您好!

    非常感谢您的建议和帮助。 我们现在可以解决构建问题。

    我记下了我们在项目设置中为解决该问题而进行的更改、以供将来参考:

    1.在 SYSBIOS 库路径中的更改(--library-path):[Project Settings->GNU Linker->Libraries]

    使用"${BIOS_CG_ROOT}/packages/gnu/targets/arm/libs/install-native/arm-none-eabi/lib/hard 而不是"${BIOS_CG_ROOT}/packages/gnu/targets/arm/libs/install-native/arm-none-eabi/lib/fpu

    2.在链接器设置中添加其他标志:[Project Settings->GNU Linker->Miscellaneous (其他)]

    添加"-specs=nano。specs"以选择'newlib-nano '作为 C 运行时库。 这可以通过命令行项目创建参数来完成、例如:-ccs.setLinkerOptions "-specs=nano。specs"@configurations config_name

    此致、
    Nijin