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.

[参考译文] CC1312R:包括导致 make 文件错误的标头

Guru**** 2553450 points
Other Parts Discussed in Thread: CC1312R

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

https://e2e.ti.com/support/wireless-connectivity/sub-1-ghz-group/sub-1-ghz/f/sub-1-ghz-forum/1012765/cc1312r-including-header-causing-make-file-error

器件型号:CC1312R

我创建了一个基本头文件和源文件。 源文件使用#include "i2cBackbone.h"调用标头、并包含同样在标头文件中声明的示例基本方法。 但是、当我构建时、我会得到以下错误:

gmake:***没有规则使目标'./i2cBackbone.c ./i2cBackbon.h'成为'i2cBackbone.o'所需的目标。

我感到困惑的是、当我清理项目并且我可以单步执行时、这个程序成功构建、但是当我在不清理的情况下进行构建(清理然后构建、然后再次构建)时、我会得到上述错误。 我的调试器模式为 Debug、而不是 Debug_TI (1)或 Debug_TI (2)。 什么可能是原因?

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

    您好、Michael、

    您是否从 SDK 中的示例开始? 我建议您从驱动程序/空示例开始。  

    谢谢、

    玛丽·H.

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

    我看到的是同一个问题。 它看起来像依赖项文件( d)有时在一行中包含两个条目、如下所示:

    main.d:

     ...
     ...
     syscfg/ti_board_config.h \
     syscfg/ti_drivers_config.h \
     ../hello_world.h\ ../dummy.h

    当我更改相应的源文件时、我会得到 Michael 提到的编译器错误:

    gmake:***没有规则使目标'./hello_world.h ./dummy.h'成为'main.o'所需的目标'./dummy.h'。

    我在 Windows 上使用 TI MCU+ SDK 07.03.02.13、CCS 10.3.1和 TI ARM Clang 1.3.0就会遇到这种情况。 我很确信这以前适用于 MCU+ SDK、CCS 和 TI ARM Clang 的早期组合、但我不确定。

    对我来说、这看起来像是依赖项文件生成中的错误。

    此致、

    Dominic

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

    尊敬的 Dominic:

    真有意思。 您能否发布您为重现问题所执行的特定步骤?

    谢谢、

    玛丽·H.

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

    您好、Marie、

    我已根据 MCU_PLUS_SDK_am64x_08_00_00_21\examples\kernel\DPL\hello_world\am64x-evm\r5fss0-0_freertos\ti-arm-clang 示例应用创建了一个小型示例、该示例随 AM64x 的 MCU+ SDK 一起提供。

    我添加了"helloworld.h"和"dummy.h"两个头文件、它们都包含在 main.c 中 我已附上(修改的)示例项目的 ZIP 文件。

    首次编译项目时、一切正常。

    如果我对 main.c 进行了一些不相关的更改、例如在某个位置添加一个空行、或再次保存文件、以确保 make 确定需要再次编译 make.o、gmake 失败、并出现与 OP 问题非常类似的错误:

    gmake:***没有规则使目标'./hello_world.h ./dummy.h'成为'main.o'所需的目标'./dummy.h'。
    gmake:目标"全部"不会由于错误而重新生成。

    不确定这是否相关、但它看起来非常相似、因此我发布到了此主题。 从 googling 到 CC1312R、它可能也会使用 tiarmclang。 请告诉我、我是否应该创建一个专门涉及 MCU+ SDK 和 AM64x 的新主题。

    此致、

    Dominic

    e2e.ti.com/.../hello_5F00_world_5F00_am64x_2D00_evm_5F00_r5fss0_2D00_0_5F00_freertos_5F00_ti_2D00_arm_2D00_clang.zip

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

    您好 Dominic、

    感谢您的测试案例。 我可以重现此问题。 源文件生成的依赖项*。d 文件似乎有问题。 我正在进一步调查。

    谢谢

    Ki

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

    我为此问题提交了一个错误。 跟踪 ID: https://sir.ext.ti.com/jira/browse/EXT_EP-10448

    谢谢

    Ki