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.

[参考译文] 编译器/TMS320C6678:链接DWARF信息中的编译器版本和选项

Guru**** 2595805 points


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

https://e2e.ti.com/support/tools/code-composer-studio-group/ccs/f/code-composer-studio-forum/625239/compiler-tms320c6678-compiler-version-and-option-in-linked-dwarf-information

部件号:TMS320C6678

工具/软件:TI C/C++编译器

您好,

有一种方法可以像GCC那样将编译选项存储在dwarf编译单元属性中?

在.obj中只有编译器版本,而在可执行文件中,C66链接程序将DW_AT_Producer替换为链接程序版本。

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

    我很高兴为您提交增强功能请求。  但在此之前,我需要更好地了解您需要解决的问题。

    例如,生成属性位于对象文件中。 它们不包含每个构建选项。  但关键在那里。  查看它们的一种方法是使用ofd6x实用程序...

    在".c6xabi.attributes"中构建属性
    
    格式版本:'A'
    
    供应商名称:"TI"(德州仪器(TI))
    
    标记文件:
    属性:
    标记生成方名称 汇编程序
    Tag_Producer_VMajor 9. (生产商主要版本+1)
    Tag_Producer_VMinor 二 (生产商次版本+1)
    Tag_Producer_VPatch 3. (生成方修补程序版本+1)
    Tag_Isa 10. (C6600)
    标记_ABI 二 (EABI)
    Tag_Long_Precision_Bits 2. (32位长型)
    Tag_Bitfield_layout 二 (与任何位域布局兼容)
    tag_abI_enum大小 3. (不使用影响目标文件兼容性的枚举)
    Tag_Trams_Use_SOC 1. (允许在蹦床中使用寄存器B30,B31)
    
    1>供应商名称:“c6xabi”(德州仪器(TI) C6000架构的ABI)
    
    标记文件:
    属性:
    Tag_Isa 10 (C6600)
    tag_abI_wchar_t 1 (wchar_t大小为2) 

    为什么这还不够呢?  您还需要什么?您为什么需要它?

    谢谢,此致,

    -George

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

    我碰巧链接到具有不同编译器(次要)版本的库构建,或者忘记重置为测试目的临时修改的编译选项。

    因此,我认为有一种方法来检查exe的CGT版本一致性,并有可用的编译选项是很好的。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Alberto Chessa 说:
    所以我认为有一种方法来检查exe [/QUOT]的CGT版本一致性会很好

    构建属性中显示的信息是否足够用于此目的?

    Alberto Chessa 说:
    并且还具有可用的编译选项。[/QUOT]

    我可以提出一个增强请求,要求以某种方式将所有生成选项存储在目标文件中。  我会让专家决定最佳的方法。  这听起来怎么样?

    谢谢,此致,

    -George

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

    您好,

    c6xabi.attributes与dwarf dw_tag_compile单元/Dw_AT_Producer一起似乎足以检查CGT一致性。

    [引述用户="George mock"]

    我可以提出一个增强请求,要求以某种方式将所有生成选项存储在目标文件中。  我会让专家决定最佳的方法。  这听起来怎么样?

    [/引述]

    好的,在标准dwarf DW_tag_compile单元属性中有信息存储将是很好的,因为GCC会这样做,或者可能使用供应商特定的扩展。 作为GCC,仅具有非默认选项就足够了。

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

    我在 SDOWP系统中提交了CodeGen-3709。  这不是一个错误,但要求更改编译器,以便它将版本号和生成选项放在Dwarf信息中,类似于GCC的操作方式。  欢迎您使用我签名中下面的SDOWP链接进行关注。

    谢谢,此致,

    -George