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.

[参考译文] 编译器/CCSTUDIO-TM4X:无效重新声明错误

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

https://e2e.ti.com/support/tools/code-composer-studio-group/ccs/f/code-composer-studio-forum/668673/compiler-ccstudio-tm4x-invalid-redeclaration-error

器件型号:CCSTUDIO-TM4X

工具/软件:TI C/C++编译器

CCS 7.2.0.00013

TI 16.9.3.LTS

TM4C1290NCPDT 目标

下面 的 typedef 语句类型名称的重新声明无效。

这意味着什么?

谢谢、

Priya

UNION BITS_FLAGS{
 结构 {
  uint32_t LanSet :1;  // 1 = LAN 端口初始设置模式//
  uint32_t bit_15 :1;
  uint32_t bit_14 :2;
  uint32_t bit_13 :2;
  uint32_t bit_12 :2;
  uint32_t bit_11 :2;
  uint32_t bit_10 :2;
  uint32_t bit_9 :2;
  uint32_t bit_8 :2;

  uint32_t bit_7 :2;
  uint32_t bit_6 :2;
  uint32_t bit_5  :2;
  uint32_t bit_4 :2;
  uint32_t bit_3 :2;
  uint32_t mag  :2;  // Mag 读卡器+ V 打印机//
  uint32_t FED  :2;  //输入器//
  uint32_t BRD  :2;  //板//
 }位;
 uint32_t DWORD;
};
typedef union bits_flags ACT_FUNC;

typedef 结构

 uint16_t us;
 uint16_t usPadding;//PR_added:32字节填充
 uint32_t ul;
} t_Mstylle1;

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

    Priya Nadathur70 说:
    对于 下面的 typedef 语句,我收到无效的类型名称重新声明错误。

    我无法重现此错误。  请按照文章 如何提交编译器测试用例中的说明提交测试用例。

    谢谢、此致、

    乔治

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

    e2e.ti.com/.../ppFiles.zip

    我附加了带有相关警告的预处理源文件以及包含此头文件(system.h)的所有文件、这些文件生成了错误。

    我喜欢指针/反馈。

    谢谢、

    Priya

    进行了编辑、以附加 ARM 编译器屏幕截图。 如果您需要更多信息、请告诉我。

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

    我还在为调试构建编译工程时附加了编译错误和控制台报告的列表。

    我正在等待反馈。

    谢谢、

    Priya

    e2e.ti.com/.../3276.console.txte2e.ti.com/.../1425.errors.txt

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您很可能会将此头文件包含两次。 考虑向文件添加 include 保护。
    en.wikipedia.org/.../Include_guard
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    e2e.ti.com/.../4722.errors.txte2e.ti.com/.../7446.console.txtThank您的回复。 添加 include 保护使重新声明错误消失。

    但是、我不理解我遇到的其他编译错误或警告。 会

    您能够对此做出任何说明吗? 再次感谢你。

    已编辑以添加:您是否还可以评论 pinout.c 中的警告? 隐式声明

    ROM 函数。  

    此致、

    Priya

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

    [引用 user="Priya Nadathur70"]但是,我不理解我遇到的其他编译错误或警告。

    关于编译 arcsend.pp 时出现的错误... 编译器存在问题。  如果您使用 ARM 编译器版本18.1.0.LTS、则编译过程正常。  我在 SDOWP 系统中提交了 CodeGen-4559、以进行调查。  欢迎您在我的签名中使用下面的 SDOWP 链接进行访问。

    谢谢、此致、

    乔治

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

    e2e.ti.com/.../6683.console18.1LTS.txt

    感谢你的答复。 我已使用18.1.0.LTS 进行编译。  

    已编辑为添加、我确实将 Include 选项更改为正确的 ARM 编译器。 附加的当前控制台文件。

    无法找到 stdint.h 和 stdbool.h

    谢谢、

    Priya

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

    请注意、此问题与 CodeGen-1979重复、该版本已在16.9.6.LTS 版本中修复。  请将编译器升级到分支上的最新补丁。

    谢谢、

    安娜

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

    是否可以包含指向此修补程序的链接? 我可以在16.9.6中发现 codegen 1979中存在封闭缺陷、我从哪里去呢?

    进行了编辑以询问:当我安装 CCS7.2时、我只安装了 Tiva ARM MCU。 我还应该安装 MSP 430吗?


    谢谢、
    Priya

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您可以在此处下载最新的编译器补丁、并查看 Closed_defects.html 文件:
    www.ti.com/.../download.html
    software-dl.ti.com/.../Closed_defects.html

    如果您特别需要16.9.6.LTS 而不是最新版本、可在此处获取:
    software-dl.ti.com/.../download.htm

    如果要为 MSP430器件编译代码、只需安装 MSP430编译器。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    安娜
    我尝试安装18.1.0.LTS 和16.9.6.LTS。 两个版本都提供了相同的编译错误流、无法打开 stdbool.h 和 stdint.h 这是为什么?

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

    [引用用户="Priya Nadathur70"]

     我确实将 include 选项更改为正确的 ARM 编译器。 附加的当前控制台文件。

    无法找到 stdint.h 和 stdbool.h

    [/报价]

    该日志中执行的命令显示您正在使用以下选项:

    --include_path="C:/ti/ccsv7/tools/compiler/ti-cgt-arm_18.1.0.LTS

    它应该是:

    --include_path="C:/ti/ccsv7/tools/compiler/ti-cgt-arm_18.1.0.LTS/include

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

    e2e.ti.com/.../5633.console16.9.6.LTS.txte2e.ti.com/.../6521.errors.txt

    我仍然没有任何运气。 现在、它会出现一系列链接器错误。 我感谢你的帮助。

    谢谢、

    Priya

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

    我将重点介绍第一组链接器错误。

    首先、我需要澄清一些术语。  使用 TI 链接器时、通常会提供链接器命令文件。  这是一个包含代码的文本文件、用于为链接器指定详细信息、例如为存储器范围指定名称、以及如何将段分配到存储器范围。  使用 GCC 链接器时、有一个类似的文本文件。  它通常称为链接器脚本。  链接器命令文件和链接器脚本之间的代码详细信息差别很大。  但它们具有相同的基本目的。

    我很确定文件 repmfirmware_debug.ld (和其他类似名称的文件)是 GCC 链接器脚本、而不是 TI 链接器命令文件。  这就是为什么您会看到如此多的错误与...

    "../REPMFirmware/Debug/repmfirmware_Debug.ld、第10行:错误#10008-D:找不到文件"include"

    我不确定解决此问题的最佳方法。  也许您应该使用完全不同的链接器命令文件集。  或者也许这个项目只能使用 GCC ARM 编译器构建。  您从何处获得此项目?  无论谁是我、都能提供比我更好的帮助。

    谢谢、此致、

    乔治

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

    这是一个从 Stellaris 代码移植的项目。 我可以访问另一个此类项目

    已经投入生产。 我应该查找哪些文件? 我将从中找到它

    其他移植项目、如有需要、也可与工程师联系。

     

    如果您可以为我提供有关该文件的一些指导、它将会大有帮助。

    谢谢、

    Priya

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

    [引用 user="Priya Nadathur"]这是一个从 Stellaris 代码移植的项目。

    我的第一个想法是让您在 Stellaris 器件论坛中开始新的线程。  但现在它是一个只读论坛。  您可以搜索它、也可以找到一些东西。  TM4C 器件论坛是另一个仍处于活动状态的论坛。  您可以尝试一下。  但我不知道这将如何实现。

    Priya Nadathur 说:
    如果可以为我提供有关该文件的一些指针,将会非常有帮助。

    不幸的是,我不能。  我无法识别任何文件。

    谢谢、此致、

    乔治

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    乔治
    在我等待联系工程师时、我能够将我的项目设置与成功移植的项目相匹配。 我删除了 Stellaris 链接器文件。 您能否查看当前的错误集并解释为什么存在链接器错误?
    e2e.ti.com/.../669839

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

    链接器调用中的此条目...

    -l"C:/ti/TivaWare_C_Series-2.1.4.178 

    (笑声) 只是目录路径。  它应该命名一个文件。  通常是一个库。

    谢谢、此致、

    乔治