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.

[参考译文] TMS320F28388D:CCS 中的错误12.8.1:退出/重新启动 CCS 时、排除文件/文件夹会重置

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1510226/tms320f28388d-bug-in-ccs-12-8-1-exclude-file-folders-is-reset-sometime-when-quit-restart-ccs

器件型号:TMS320F28388D
主题:C2000WARE 中讨论的其他器件

工具/软件:

有时、当我退出 CCS 并重新启动它时、.cproject 文件会在此处更改 diff

$ git diff        
diff --git a/cpu1/.cproject b/cpu1/.cproject
index c0548ee..e3be162 100644
--- a/cpu1/.cproject
+++ b/cpu1/.cproject
@@ -145,7 +145,7 @@
    <sourceEntries>
-       <entry excluding="build|tests|lib/driverlib/ccs|lib/driverlib/pmbus.c|shared/od.cpp|cmd/ram.cmd|lib/fatfs/utils|lib/fatfs/ffsystem.c" flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name=""/>
+       <entry excluding="build|tests|shared/od.cpp|cmd/ram.cmd" flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name=""/>
    </sourceEntries>

解决方法是关闭 CCS、git checkout head .cproject、祈祷并重新启动 CCS。  

在.project 文件中、lib 文件夹是一个虚拟文件夹:

		<link>
			<name>lib</name>
			<type>2</type>
			<locationURI>virtual:/virtual</locationURI>
		</link>
		<link>
			<name>shared</name>
			<type>2</type>
			<locationURI>PARENT-1-PROJECT_LOC/shared</locationURI>
		</link>
		<link>
			<name>lib/IQmath_fpu32_eabi.lib</name>
			<type>1</type>
			<locationURI>COM_TI_C2000WARE_INSTALL_DIR/libraries/math/IQmath/c28/lib/IQmath_fpu32_eabi.lib</locationURI>
		</link>
		<link>
			<name>lib/SFO_v8_fpu_lib_build_c28_driverlib_eabi.lib</name>
			<type>1</type>
			<locationURI>COM_TI_C2000WARE_INSTALL_DIR/libraries/calibration/hrpwm/f2838x/lib/SFO_v8_fpu_lib_build_c28_driverlib_eabi.lib</locationURI>
		</link>
		<link>
			<name>lib/driverlib</name>
			<type>2</type>
			<locationURI>COM_TI_C2000WARE_INSTALL_DIR/driverlib/f2838x/driverlib</locationURI>
		</link>
		<link>
			<name>lib/fatfs</name>
			<type>2</type>
			<locationURI>COM_TI_C2000WARE_INSTALL_DIR/libraries/fatfs/fatfs</locationURI>
		</link>
		<link>
			<name>lib/sdspi</name>
			<type>2</type>
			<locationURI>COM_TI_C2000WARE_INSTALL_DIR/libraries/fatfs/sdspi</locationURI>
		</link>

这是一个错误吗? 是否有任何权变措施?

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

    这不是一个答案、只是对我的工作流的评论、其中涉及临时或动态生成的文件夹。

    当我删除一个文件夹(在本例中是临时编译目录)、然后关闭并重新启动 Code Composer Studio (CCS)时、相应的路径会自动从<entry excluding="...">.cproject文件中的元素中删除。 即使排除是有意和手动配置的、也会发生这种情况。

    根据我所能说的、CCS (或 Eclipse CDT)似乎在启动时验证排除的路径、并删除指向不存在位置的任何条目。 虽然这可能是一个清理功能、但在某些设置中build(例如、)只在外部构建期间创建(在我的情况下、通过 VSCode 或外部脚本)时、它会引起严重问题。

    结果是、一旦重新创建文件夹、它就不会再从构建过程中排除、从而导致无意中包含目标文件、源工件或其他不需要的内容、进而干扰 CCS 构建系统。

    IMO、无论在任何给定时间是否存在相应的文件夹、排除条目都应持续存在。 IDE 不应假定不存在的路径对于排除无效、尤其是因为许多项目涉及临时目录或带外构建系统。

    作为参考、此问题似乎已在之前的主题(2017)中提出:
    https://e2e.ti.com/support/tools/code-composer-studio-group/ccs/f/code-composer-studio-forum/636045/ccs-codecomposer-cannot-remove-source-location-filter

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

    您好:

    您能否提供所使用的 CCS 的确切版本?

    谢谢

    Ki

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

    当然、12.8.1

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

    抱歉、标题中有版本权限。 我将尝试在12.8.1上重现问题。