您好!
我使用 TI 18.12.2.LTS C/C++编译 器来构建.asm 文件、该文件具有混合的汇编和 C/C++环境、可在 C 和汇编代码之间共享包含声明和原型的 C 头文件。
我在 下面的文档中找到了.asm 文件中混合汇编和 C/C++环境使用的.cdecls 指令和示例、并将代码设置为:
第1行。 .cdecls C、NOLIST
第2行。 %{
第3行。 #define ASMTEST 1.
第4行。 %}
第5行。 .cdecls C、NOLIST
第6行。 %{
第7行。 #ifndef ASMTEST
第8行。 #warn "ASMTEST 未定义!" /*将发布*/
第9行。 #endif
第10行。 %}
当我尝试构建上述代码时,收到 以下 消息的分段错误:
(asm) src/OS/ThreadX/TX_thread_schedule.asm
内部错误:/build_server/compiler/ti-cgt-arm_18.12.2.LTS / bin/armasm 遇到分段错误
处理.text 段文件 src/OS/ThreadX/TX_thread_schedule.asm 行时
这是由 TI 汇编器中的缺陷引起的。
TI 客户支持可能会建议解决方法来避免这种情况。
升级到编译器的最新版本可能会解决此问题。
在 E2E 支持论坛中联系 TI、网址 为 http://e2e.ti.com 、位于
"开发工具"、"TI C/C++编译器"。 请参阅标题为的链接
"提交问题"。
我们需要看到整个错误消息以及完整、可重现的消息
包括所有命令行选项的测试用例。
>>编译失败
请您提供一些有关混合汇编和 C/C++环境使用的解决方案、以共享 C 头文件、其中包含 C 和汇编代码之间的声明和原型。
此致、
Salim Mulla