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.

[参考译文] CC3235MODASF:输出二进制文件中的绝对文件名

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

https://e2e.ti.com/support/wireless-connectivity/wi-fi-group/wifi/f/wi-fi-forum/1196671/cc3235modasf-absolute-filename-in-the-output-binary

器件型号:CC3235MODASF

大家好、


我已迁移到另一台包含 TI 工具链的计算机。 在编译一些现有工程时、我注意到创建的二进制映像并不相同。
原因是对文件 D:/ti/simplelink_cc32xx_sdk_6_10_00_05/source/ti/posix/tirtos/pthread_mutex.c.的绝对引用
它似乎是我映像中对绝对文件的唯一引用。

字符串 output.bin | grep simple
D:/ti/simplelink_cc32xx_sdk_6_10_00_05/source/ti/posix/tirtos/pthread_mutex.c

$字符串 output.bin | grep FD:/ti
FD:/ti/simplelink_cc32xx_sdk_6_10_00_05/source/ti/posix/tirtos/pthread_mutex.c

如果除了驱动器号之外还更改了路径的字符数、可以理解的是、这会导致二进制文件中发生数百次更改。

到目前为止、我尚未找到包含此文件名的原因。

如何防止包含此文件名?

已使用以下配置进行测试:
TI CCS 11 12.2.0.00009和版本:11.1.0.00011
SDK 版本:11.1.0.00011和 simplelink_cc32xx_sdk_5_30_00_08

此致、
罗马

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

    您好、Roman、  

    我不确定我是否完全理解了这个问题。 我注意到您提到了 SDK 5.30.0.8、但您也描述了不同的操作系统。  

    如果您要比较 SDK 版本之间的映像大小、则它们可能会有所不同。 如果您只是比较不同操作系统上的图像大小、我们必须进一步了解。 如果工具链相同、我不确定图像尺寸为何会不同。  

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

    您好、Sabeeh、

    感谢您的回答。

    我使用 SDK 5.30和6.10检查了它、并在我的大脑中混合了命令行输出和我的语句。 很抱歉。

    我的问题是、在二进制映像中有一个指向 SDK 安装路径的绝对链接。 在我的案例中、thje 字符串"d:/ti/simplelink_...
    这就是我希望通过 grep 命令行输出显示的内容。

    如果 SDK 的安装路径不同、例如在本地编译器和自动编译系统上、我无法比较生成的二进制文件。

    我的问题是:如何将该链接从我的二进制映像中移出。

    最棒的地方
    罗马

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

    您好、Roman、  

    我认为唯一的方法是创建您自己的 makefile 并以这种方式构建它。 这是一项艰巨的任务、但我不确定是否可以排除该特定文件。 请注意、它是 一个用于互斥量的文件、并且在 TIRTOS 内。 您可能还必须重建 TIRTOS。  

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

    您好、Sabeeh、

    感谢您的回答。 我还认为这不是一两个小时的工作;)

    在创建即将推出的 ServicePack 并从 SDK 中删除绝对引用字符串时、TI 的某些人可能会阅读并记下此内容。 根据座右铭:仅传递必要的信息。 在我看来、能够在不同的开发环境中创建相同的二进制文件是有益的、也可能是必要的。

    非常感谢、
    罗马