工具/软件:Code Composer Studio
受影响的版本:CCSv8 (版本:8.1.0.201805221500内部版本 ID:N201805221500)
摘要:使用外部 makefile "all"之前、"rebuild Project"不会"清理"
重现步骤:
1) 1)在 CCSv8中创建一个新的 CCS 项目(main.c 为空)
2) 2)构建它以生成 makefile 文件
3) 3)在工程属性中、转到"Build"并取消选择"Generate Makefiles automatically"
4) 4)在 Project Explorer 中右键点击工程、然后选择"Rebuild Project"
预期结果:
"C:\\ti\ccsv8\\utils\\bin\\gmake"-k -j 8 clean -O
"C:\\ti\ccsv8\\utils\\bin\\gmake"-k -j 8 all -O
实际结果:
"C:\\ti\\ccsv8\\utils\\bin\\gmake"-k -j 8 all -O
注释:
CCSv8似乎尝试在这里执行一些智能操作、并检测是否确实需要"干净"。
可以通过运行"clean Project"和"Rebuild Project"来自动生成 makefile 的工程来查看该文件。
结果是、重建步骤仅调用"全部"配方、而不调用"清理"。
但是、当我们使用外部 makefile 文件时、它不知道如何检测工程是否已"清理"、因此也不知道
采取错误的不"清理"行为。
我们的团队目前正在运行 CCSv6、并正在考虑升级到 CCSv8。 这种倒退目前正在阻止我们升级
因为它会影响我们的工作流程。 "重建项目"的预期结果是、它应始终首先执行"清理"、
或者至少在跳过它时非常聪明。
解决此问题的另一种方法可能是为用户提供某种方法来向 CCS 指示它实际上是否需要干净、
例如调用脚本以确定这一点。
这在 CCSv6中似乎可以正常工作。 我尚未尝试 CCSv7。