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.

[参考译文] TDA4VM:集成 mcal 驱动程序时出现未解析的符号

Guru**** 2463330 points


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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1477308/tda4vm-unresolved-symbol-when-integrating-mcal-driver

器件型号:TDA4VM

工具与软件:

您好!

我使用的是 RTOS 09_02_00_05。
我只针对 MCU1_0进行示例应用。 我想包含 mcal 驱动程序中的 GPT 驱动程序。 但是、我要将 LDIRS 位置以及 additional_static_LIB = gpt.aer5f 添加到 makefile 中、但链接器看不到它。

此致

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

    您的问题最初已 分配给 Doredla

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

    为了更具体地解决我的问题、我想将 GPT 库集成到 sciserver_testapp 应用中。 我修改了该目录中的 makefile:/ti-processor-sdk-rtos-j721e-evm-09_02_00_05/pdk_jacinto_09_02_00_30/packages/ti/drv/sciclient/examples/sciserver_testapp
    替换为以下行:

    LDIRS  += $(MCUSW_PATH)/binary/mcal/Gpt/lib/$(SOC)/mcu1_0/$(BUILD_PROFILE)
    ADDITIONAL_STATIC_LIBS += gpt.aer5f

    编译 sciserver_testapp 时、以下未定义的符号会导致错误:

     Gpt_Enable 382/home/$                (user)/ti/ti-processor-sdk-rtos-j721e-evm-09_02_00_05/pdk_jacinto_09_02_00_30/packages/ti/binary/sciserver_testapp_freertos/obj/j721e/mcu1_0/debug/Gpt/source Gpt_Startup.oer5f

    但 gpt.aer5f 包含以下符号:

    # nm -gc gpt.aer5f | grep scholl Gpt_Enable
    00000811 T Gpt_Enable

    是否缺少任何约束条件?  

    此致

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

    您好!

    [报价 userid="600131" url="~/support/processors-group/processors/f/processors-forum/1477308/tda4vm-unresolved-symbol-when-integrating-mcal-driver/5672506 #5672506"]

    编译 sciserver_testapp 时、以下未定义的符号会导致错误:

     Gpt_Enable 382/home/$                (user)/ti/ti-processor-sdk-rtos-j721e-evm-09_02_00_05/pdk_jacinto_09_02_00_30/packages/ti/binary/sciserver_testapp_freertos/obj/j721e/mcu1_0/debug/Gpt/source Gpt_Startup.oer5f

    [报价]

    还需要将 GPT 头文件包含在 sciserver make 文件中。

    此外、MCAL 驱动程序框架工作与 PDK 不同、因为 MCAL 遵循 AUTOSAR 规范具有配置文件。

    此致、
    Sudheer

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

    是的、我也包含了。

    此外、MCAL 驱动程序框架工作与 PDK 不同、因为 MCAL 遵循 AUTOSAR 规范、具有配置文件。
    [报价]

    这应该不起作用? 另一种选择是直接包含源文件、但我考虑先使用构建的 GPT 库。

    此致

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

    您好!

    [报价 userid="600131" url="~/support/processors-group/processors/f/processors-forum/1477308/tda4vm-unresolved-symbol-when-integrating-mcal-driver/5674882 #5674882"]
    还需要将 GPT 头文件包含在 sciserver make 文件中。

    是的、我也包含了。

    [报价]

    您需要包含 GPT make 文件和依赖模块中指定的所有头文件路径。

    请参阅 MCUSW 中的 GPT 示例。

    [报价 userid="600131" url="~/support/processors-group/processors/f/processors-forum/1477308/tda4vm-unresolved-symbol-when-integrating-mcal-driver/5674882 #5674882"]
    此外、MCAL 驱动程序框架工作与 PDK 不同、因为 MCAL 遵循 AUTOSAR 规范具有配置文件。

    这应该不起作用? 另一种选择是直接包含源文件、但我考虑先使用构建的 GPT 库。

    [报价]

    如果需要基本的 GPT 操作、最好添加所需的函数和头文件、而不是链接库。

    您的用例和操作系统使用什么?
    如果希望拥有 GPT+ Sciserver、则可以将 sci-server 集成到 GPT 中、因此请参阅 TI SDK 中的 CDDIPC 示例。

    此致、
    Sudheer

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

    您好!

    您需要包含在 GPT make 文件和相关模块中指定的所有头文件路径。

    是的、我有一个问题。 我将包含所有必需的接头、如下所示:

    INCDIR += Gpt/include/ \
              $(MCUSW_PATH)/mcal_drv/mcal/Bsw_Stubs/AsrGnrl/inc/ \
              $(MCUSW_PATH)/mcal_drv/mcal/Bsw_Stubs/EcuM/inc/ \
              $(MCUSW_PATH)/mcal_drv/mcal/Bsw_Stubs/Dem/inc/ \
              $(MCUSW_PATH)/mcal_drv/mcal/Bsw_Stubs/Det/inc/ \
              $(MCUSW_PATH)/mcal_drv/mcal \
              $(MCUSW_PATH)/mcal_drv/mcal/Bsw_Stubs/MemMap/inc/ \
              $(MCUSW_PATH)/mcal_drv/mcal/Bsw_Stubs/Os/inc/ \
              $(MCUSW_PATH)/mcuss_demos/Bsw_Stubs/Rte/inc

    并需要定义:AUTOSAR_431或 AUTOSAR_421。 不过、我在我的主头文件中定义了后续其他标头无法看到它。 我曾尝试使用 CFLAGS_local_common +=-DAUTOSAR_431、但不起作用。

    如果您需要基本 GPT 操作、最好添加所需的函数和头文件而不是链接库。

    谢谢、我会这么做。

    您的用例和操作系统使用的是什么?
    如果希望拥有 GPT+ Sciserver、则可以将 sci-server 集成到 GPT 中、因此请参阅 TI SDK 中的 CDDIPC 示例。[/QUOT]

    我想使用 Sciserver+GPT。

    此致

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    并且需要定义:AUTOSAR_431或 AUTOSAR_421。 不过、我在我的主头文件中定义了后续其他标头无法看到它。 我曾尝试使用 CFLAGS_local_common +=-DAUTOSAR_431、但不起作用。[/QUOT]

    我发现了问题。 在 makefile 文件中、上面的某些行在 CFLAGS_LOCAL_COMMON 中存在一个覆盖。
    感谢您的帮助。 目前我没有任何问题。

    此致

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

    您好!

    您需要包含 GPT make 文件和依赖模块中指定的所有头文件路径。

    是的、我有一个问题。 我将包含所有必需的接头、如下所示:

    全屏
    1.
    2.
    3.
    4.
    5.
    6.
    7.
    8.
    9.
    incDIR += GPT/include/\
    $(MCUSW_PATH)/mcal_drv/mcal/mcal/AsrGnrl/inc/\中的 Bsw_Stubs 3574
    $(MCUSW_PATH)/mcal_drv/mcal/mac/Ecu2640m/inc/ Bsw_Stubs \
    $(MCUSW_PATH) Bsw_Stubs 350/inc/\
    $(MCUSW_PATH)/mcal_drv/mcal/mcal/pl Bsw_Stubs Det240/inc/\
    $(MCUSW_PATH)/mcal_drv/mcal \
    $(MCUSW_PATH)/mcal_drv/mcal/mcal/MemMap/inc/\中的 Bsw_Stubs 3500a
    $(MCUSW_PATH)/mcal_drv/mcal/mcal/v243/inc/ Bsw_Stubs
    $(MCUSW_PATH)/mcuss_demos/INC. Bsw_Stubs
    XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

    并需要定义:AUTOSAR_431或 AUTOSAR_421。 不过、我在我的主头文件中定义了后续其他标头无法看到它。 我曾尝试使用 CFLAGS_local_common +=-DAUTOSAR_431、但不起作用。

    [报价]

    有关 GPT 的附属信息、请参阅 mcusw 中的 GPT 示例。
    mcusw/mcal_drv/mcal/examples/gpt/makefile

    您的用例和操作系统使用什么?
    如果希望拥有 GPT+ Sciserver、则可以将 sci-server 集成到 GPT 中、因此请参阅 TI SDK 中的 CDDIPC 示例。

    我想使用 Sciserver+GPT。

    [报价]

    如上所述、我建议将 Sciserver 集成到 GPT 中、因为这些配置需要参考其他 MCAL 驱动程序(如 CDDIPC)。
    有关将 sciserver 集成到 mcal 模块的信息、请参阅 TI SDK 中的 CDDIPC Rprox Linux 示例。
    mcusw/mcal_drv/mcal/examples/CddIpcRProcLinux/CddIpcAppRProcLinux.c

    此致、
    Sudheer

    [/quote]