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.

[参考译文] TMS320F280037:C2000链接器找不到它具有路径的库

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1517112/tms320f280037-c2000-linker-not-finding-lib-which-it-has-a-path-to

器件型号:TMS320F280037
主题:SFRA 中讨论的其他器件

工具/软件:

我正在尝试在 Bitbucket 上设置流水线构建。  我在 Ubuntu 20.04上安装了 C2000编译器版本22.6.2和 CCS 20.1.1。  1)我正在使用 ccs-server-cli.sh、如下所示:1)将现有工程导入到工作区中、2)编译工作区中的所有工程。  

我使用以下工具开始构建:

/opt/ti/ccs/eclipse/ccs-server-cli.sh -workspace "$Bitbucket_clone_DIR/workspace"-application projectBuild -ccs.workspace

编译顺利完成、但我在链接库 sfra_F32_tmu_eabi.lib 时遇到错误、即使它位于提供给链接器的位置的磁盘上。  以下是 C2000在与相关库的提供库路径链接期间的输出、以黄色突出显示:

构建目标:"v1.1.2.22.out" DBG-FW-PWR
调用:C2000链接器
"/opt/ti/ti-cgt-c2000_22.6.2.LTS/bin/cl2000 --v28 -ml -mt ---cla_support=cla2 -float_support=fpu32 -idiv_support=idiv0 --tmu_support=tmu1 -VCU_support=vcrc -o0=cla_speed=cla_speed=fpu2 -float_support=fputer_mode=relax=-advice define=DAC128S_SPIB_N --define=CPUTIME_ENABLE_N --define=test_enable_N --define=SFRA_ENABLE_N --define=step_RP_EN_N ---define=CMD_POT_EN_ DBG-FW-PWR /opt/ti/ti-cgt-c2000_22.6.2.LTS/lib /opt/atlassian/pipelines/agent/build/MotorControlSDK/libraries/FlashAPI/lib /opt/atlassian/pipelines/agent/build/workspace/MotorControlSDK/libraries/sfra /opt/atlassian/pipelines/agent/build/MotorControlSDK/libraries/observers/est_lib /opt/ti/ti-cgt-c2000_22.6.2.LTS/include rom_model -o "src-v1.22.out" DBG-FW-PWR ../sys_main.obj "/libraries/observers/isbldc/isbldc.obj /libraries/observers/ssipd/ssipd.obj /libraries/transforms/iclarke/iclarke.obj /libraries/transforms/svgen/svgen.obj /libraries/utilities/angle_gen/angle_gen.obj /libraries/utilities/mod6cnt/mod6cnt.obj /libraries/utilities/traj/traj.obj """/libraries/filter/filter_fo/filter_fo.obj /libraries/observers/hall/hall.obj /libraries/observers/speedfr/speedfr.obj /libraries/transforms/clarke/clarke.obj /libraries/transforms/park/park.obj /libraries/transforms/volts/volt_recons.obj /libraries/utilities/datalog/datalogIF.obj /libraries/utilities/step_response/step_response.obj "/libraries/observers/encoder/encoder.obj "".src"/libraries/control/mtpa/mtpa.obj ".src"/libraries/control/pi/pi.obj ".src_v1.22.out"".src"/libraries/control/dclink_ss/dclink_ss.obj ".src_main""."./libraries/utilities/rimpulse/rimpulse.obj "/src_drive"/libraries/utilities/cpu_time/cpu_time.obj ".html"/libraries/transforms/svgen/svgen_current.obj "/src_control ""/libraries/transforms/ipark/ipark.obj "/src_obj"。/libraries/sfra/sfra_gui_scicomms_driverlib.obj "/src.bc.org"//libraries/observers/speedcalc/speedcalc.obj "/src.da"。/libraries/observers/esmo/esmo.obj "/src/line"/libraries/control/vs_freq/vs_freq.obj ".obj"/src_control ".obj"/libraries/control/fwc/fwc.obj ".b" hic。 "/opt/atlassian/pipelines/agent/build/MotorControlSDK/libraries/FlashAPI/lib/FAPI_F28003x_EABI_v1.58.10.lib """/opt/atlassian/pipelines/agent/build/MotorControlSDK/libraries/observers/est_lib/fast_full_lib_eabi.lib "/opt/atlassian/pipelines/agent/build/MotorControlSDK/libraries/observers/est_lib/fast_pmsm_lib.lib "/opt/atlassian/pipelines/agent/build/MotorControlSDK/libraries/observers/est_lib/fast_pmsm_lib_eabi.lib "/opt/atlassian/pipelines/agent/build/MotorControlSDK/libraries/observers/est_lib/fast_simple_lib.lib "/opt/atlassian/pipelines/agent/build/MotorControlSDK/libraries/observers/est_lib/fast_simple_lib_eabi.lib "/opt/atlassian/pipelines/agent/build/MotorControlSDK/libraries/observers/est_lib/fast_full_lib.lib "/opt/atlassian/pipelines/agent/build/MotorControlSDK/libraries/sfra/sfra_f32_tmu_eabi.lib "/opt/atlassian/pipelines/agent/build/MotorControlSDK/src_device/f28003x_headers_nonbios.cmd -lfast_full_lib.lib -lsfra_F32_tmu_eabi.lib -llibc.a

错误#10008-D:找不到文件"sfra_F32_tmu_eabi.lib"
错误#10010:链接过程中遇到错误;未生成 DBG-FW-PWR v1.1.2.22.out"

但该文件位于通过验证的指定位置 查找 构建前的命令:

查找$Bitbucket_clone_DIR -type f -name sfra_f32_tmu_eabi.lib
/opt/atlassian/pipelines/agent/build/MotorControlSDK/libraries/sfra/sfra_f32_tmu_eabi.lib

感谢您的帮助、

Jeremy

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

    下面隔离链接器命令中的 SFRA 相关条目...

    -i"/opt/atlassian/pipelines/agent/build/workspace/MotorControlSDK/libraries/sfra"
    "/opt/atlassian/pipelines/agent/build/MotorControlSDK/libraries/sfra/sfra_f32_tmu_eabi.lib"
    -lsfra_f32_tmu_eabi.lib

    看来是这样 中的第一个条目应被删除。

    下一部分是相关的,但不同...我不明白为什么你指定的库  sfra_F32_tmu_eabi.lib 两次。  一次就足够了。

    谢谢。此致、

    -乔治

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

    抱歉、我想我看到自己的错误-传递给链接器的路径中有"workspace"、不应存在。  我看了几下,才发现这是我的错。

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

    是的、工作区不正确、由于.cproject 文件使用反斜杠而不是正斜杠、这会在 Ubuntu 流水线上造成问题。  让它开始工作、感谢您对此进行研究。