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.

[参考译文] TMS470MF06607:F035闪存库链接问题

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/566926/tms470mf06607-issue-with-linking-of-f035-flash-library

器件型号:TMS470MF06607

您好、TI、

我正在尝试将 pf035a_api_eabi.lib 闪存库与我的应用链接起来。

我已经使用 armcc.exe 中的--enum_ie_int 选项编译了我的映像

链接时出现以下错误:

错误:L6242E:无法链接对象 blank.obj、因为其属性与图像属性不兼容。

(笑声) pack-enum 与 enum_in_int 冲突。

错误:L6242E:无法链接对象 compact。obj、因为其属性与图像属性不兼容。

(笑声) pack-enum 与 enum_in_int 冲突。

错误:L6242E:无法链接对象 ERASE.obj、因为其属性与映像属性不兼容。

(笑声) pack-enum 与 enum_in_int 冲突。

错误:L6242E:无法链接对象 prog_data.obj、因为其属性与图像属性不兼容。

(笑声) pack-enum 与 enum_in_int 冲突。

错误:L6242E:无法链接对象 verify_data.obj、因为其属性与图像属性不兼容。

(笑声) pack-enum 与 enum_in_int 冲突。

错误:L6242E:无法链接对象 Fapi_PollFlashStatus.obj、因为其属性与图像属性不兼容。

(笑声) pack-enum 与 enum_in_int 冲突。

错误:L6242E:无法链接对象 sector_select.obj、因为其属性与图像属性不兼容。

(笑声) pack-enum 与 enum_in_int 冲突。

错误:L6242E:无法链接对象 setup_FSM.obj、因为其属性与图像属性不兼容。

(笑声) pack-enum 与 enum_in_int 冲突。

 

我认为 pf035a_api_eabi.lib 是在没有--enum_is_int 选项的情况下编译的。我的应用程序具有与操作系统相关的文件、这些文件是使用--enum_is_int 编译的。 --enum_ie_in_int 是操作系统正常运行的必要条件。

因此、在编译时无法删除--enum_s_int 选项。

请建议一种链接闪存库的方法、而不会出现任何错误。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您使用的是哪种编译器?它的版本是什么?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    pf035a_api_eabi.lib 是使用 TI 编译器编译的。 默认枚举大小为32位。 如果您使用的是 ARM 编译器、则可能能够使用--diag-warning=6242命令行选项覆盖链接器错误。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    我使用的是 ARM 编译器5.06更新2 (内部版本183)
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    尊敬的 Bob:

    覆盖链接器错误是否会对应用程序产生不利影响?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    否、F035库是使用32位枚举构建的。 您可能需要验证只有 pf035a_api_eabi.lib 生成新警告。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Bob、您好!

    当我尝试使用 "--diag-warning=6242"命令行选项覆盖链接器错误时、会收到以下警告

    警告:L6242E:无法链接对象 blank.obj、因为其属性与图像属性不兼容。

    警告:L6242E:无法链接对象 ERASE.obj、因为其属性与映像属性不兼容。

    警告:L6242E:无法链接对象 prog_data.obj、因为其属性与图像属性不兼容。

    警告:L6242E:无法链接对象 verify_data.obj、因为其属性与图像属性不兼容。

    警告:L6242E:无法链接对象 Fapi_PollFlashStatus.obj、因为其属性与图像属性不兼容。

    警告:L6242E:无法链接对象 sector_select.obj、因为其属性与图像属性不兼容。

    警告:L6242E:无法链接对象 setup_FSM.obj、因为其属性与图像属性不兼容。

    我是否需要担心它们!

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    否、您使用的选项将错误变为警告。 这符合预期。