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.

[参考译文] CCS/EK-TM4C1294XL:无法构建我的第一个汇编工程

Guru**** 2482105 points
Other Parts Discussed in Thread: EK-TM4C1294XL

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/712946/ccs-ek-tm4c1294xl-cannot-build-my-first-assembly-project

器件型号:EK-TM4C1294XL

工具/软件:Code Composer Studio

你好!

我对 EK-TM4C1294XL 开发套件非常陌生、我想为其编写第一个汇编项目。

我按照 此教程 创建了一个 Code Composer Studio 项目

_main:
添加 R1、R2


这是我尝试构建的代码。 在我构建后、我得到以下错误

****为项目 HelloAssembly 构建配置调试****

/opt/ccstudio/ccsv8/utils/bin/gmake -k -j 4所有-O

构建目标:"HelloAssembly.out"
调用:ARM 链接
器"/opt/ccstudio/ccsv8/tools/compiler/ti-cgt-arm_18.1.1.LTS/bin/armcl -mv7M4 -code_state=16 -float_support=FPv4SPD16 -me -define=ccs="ccs"-define=part_status=16 -float_support=2-gdbat_display-cc=12m_bat_bi-display-m=-m_bat_bi-display-m=-_bloat_bi-display-m=-m=-m=-m12_bat_bag_bi-display-_bat_bi-display-m=-_bag-_ stack_size=0 -i"/opt/ccstudio/ccsv8/tools/compiler/ti-cgt-arm_18.1.1.LTS/lib -i"/opt/ccstudio/ccsv8/tools/compiler/ti-cgt-arm_18.1.1.LTS/include --reread_libs --diag_wrap=off --display_error_number --warn_sections --xml_link_info="HelloAssembly_linkInfo.xml"-o "HelloAssembly.out""./program.obj""/tm4cm_libt9412t_lpt.pdf"


未定义的首次引用
符号 文件中
------ --------
主程序 /opt/ccstudio/ccsv8/tools/compiler/ti-cgt-arm_18.1.1.LTS/lib/rtsv7M4_T_le_v4SPD16_eabi.lib 

错误#10234-D:未解析的符号仍
存在错误#10010:链接期间遇到错误;"HelloAssembly.out"未生成

>>编译失败
gmake[1]:***[HelloAssembly.out]错误1
makefile:140:目标'HelloAssembly.out'的配方失败
gmake:***[All]错误2
**Makefile:136:目标'All

Finished'的配方失败 

是否有人可以向我指出错误的正确方向?

汇编是一件很困难的事情、Code Composer Studio 的资源非常有限、很遗憾。

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

    我们不支持 TM4C 的仅汇编工程。 如果您希望获得应用支持、请下载 TivaWare 并使用我们的 TivaWare driverlib。

    虽然此请求不会与 DRM 编码一起直接发出、但符合我们官方论坛指南第4点: e2e.ti.com/.../695568
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    因此、如果用户想要在汇编级进行编程、则需要使用另一个 IDE?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好 Jan、

    它与 IDE 无关。简单地说、作为 TM4C MCU 的支持团队、我们将不支持 MCU 的汇编代码。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    嗯、您将如何解释 这篇文章 、介绍如何为 TM4C MCU 编写汇编代码? 他正在使用 Keil、似乎有可能吗?

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

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

    我的坏人     ,应该起作用。

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

    如果我作为一名"长期在这里"的外部人员、请注意"两侧"、并提供有效积分!

    虽然我"感受 到了 ASM 所遭受的痛苦"、"海报画给 ASM " -我也是如此、"感受到这家供应商的感受"。   

    明白我和我的公司都没有“在这场战斗中”。   (虽然有几只狗——还有“嗅探”的斗——在这里大怒!)  

    我们的海报必须(尝试)理解并接受- "虽然部署和试验 ASM 的愿望很高(为他而设计)" -这种愿望和目标远远不是普遍的!   'C code ' -最令人信服-最强烈地提到了 ASM/其他-当然在这里(以及大多数其他 ARM MCU 站点!)   作为一家通用的 ARM 技术咨询公司(以及重点制造商)-采用来自四家不同 ARM 供应商的 ARM MCU -我们知道这是真的!

    此论坛是- imho -提供技术熟练且持续的技术支持的"最佳"论坛。   (请注意、我也在其他 ARM 论坛上发表过意见、但始终处于不同的"ID"下、以便我们可以"最佳跟踪"技术联系人的来源。)   那么——这么坚定——“爬到山顶吧?”   显然、必须有重点、这必须涉及"满足最大数量的客户-用户需求"、解决他们的"主要问题"。    高技能/训练有素且专业的供应商代理执行"解决 用户问题和问题"这一"无止境"任务。   供应商代理"数量有限"-因此、"为了最好地为大众服务"是自然的-某些"限制必须被嵌入和强制执行"。   我们的海报可能会询问-如果此论坛收到"大量 ASM 请求"、会产生什么结果?   相当可预测- 大多数论坛用户(内容为'C')将受到负面影响。    “最棒的” 对于我来说、"最重要的数字"-似乎是最合理的目标!

    此外、请注意、现代 C 编译器极大地降低 了'ASM'相对于'C'的优势。  因此、'ASM'的部署必须限制为'执行时间'和最小内存占用空间的实例、这证明是特别重要的。   如果'ASM'被更具扩展性地使用-那么代码开发、测试和完成的时间-已经被证明 将(至少)增加'数量级!'   而"尽早进入"""热市场"的"可获得利润"也会被牺牲。   因此、"另一个钉子"帮助密封了" asm coffin "。

    如果-尽管如此- ASM 仍然很感兴趣-我建议您选择"PRO IDE"(如海报中提到的 IAR 或 Keil)。   这些产品在该供应商的 IDE 推出之前很久、即接受大多数 ARM MCU、在我公司(以及我们的许多客户)的意见中、证明其优于(任何)单一供应商的 IDE 产品。

    不包含(偶数) IAR 的"免费"(即 Kickstarter 版本)(用于 ARM)-出现代码指导和示例-针对 asm。   此外-如果没有直接关注 ASM、则提供手册-提供大量示例-并"处理案例"-以了解 ASM 的最佳部署时间/地点。   我(多次)注意到: Joseph Yiu 的著作 《ARM Cortex M3/M4的最终指南》、它提供了坚实的基础。   (两者均用于一般的 ARM MCU 开发/理解-以及"使用 ASM"。

    双方都在这里"已登记积分"-我曾尝试"弥补任何差距"。    (可能)

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

    这不是一个可能的问题。 我不是说您不能在汇编语言中进行编码。

    我说 TI 应用的立场是、我们不支持/帮助编写汇编语言。 您可以这么做。 使用 Google、了解 ARM 汇编等、但我们不支持它、因为它超出了我们在 E2E 上提供帮助的范围。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    问题是 GNU/Linux OS 不支持 IAR 和 Keil。 我可以使用 Mono 和 Wine、但我的操作系统上不允许使用这些软件中的任何一个。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    当然、这些"新限制"(GNU/Linux OS 不支持)在前面都没有提到。
    您不能-至少暂时-以  这种方式-使用'PC'和'IAR 或 Keil'-并通过代码研究和练习-'回答您的许多与 ASM 相关的问题'?   之后-(然后)武装起来取得一些成功-您可能会恢复到(非常独特的)系统和约束。

    在"更成熟(更强大- imho)的 IDE"和多个 Glances @ Joseph Yiu 的精美书下、您应该能够"分享"进一步的见解、这可能会导致您(最快/最简单)通过 ASM 取得成功。

    您是否可以根据我之前(详细)的书面(严格代表您)揭示您为什么选择"O Prior"(使用和仅使用) ASM?   事实证明很难保持动机--当这种关键事实仍然(令人惊讶)无法解释/不存在!

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    在嵌入式场景中、为非常具体的应用程序编写汇编代码是正常的、或者在其中必须确切知道在特定情况下会运行什么以及将发生什么(并获得最差的执行时间、例如系统时钟)。

    这可以通过完全检查编译器生成的汇编代码来实现、但并非始终满足要求。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    感谢您在嵌入式场景中描述"正常情况"。   我过去曾共同创立公司、然后将一家技术公司公之于众、但我可能会有这样的知识。  (它偏离了"您的观点"。)   您可能会注意到、我之前的写文章详细介绍了(正确) ASM 的时间/位置-但这种 ASM 使用的是" pales" -与效率更高的"C"进行对比时。

    过度使用 ASM -尤其是在这样强大的"C 编译器无处不在"的情况下-已"证明"项目开发"、从而使"尽早进入"热销市场"的任何机会成为可能!    如此及时的到达- Tech Biz 的所有者/投资者都希望如此-因为它 可以"抓住"、 "短而 高的盈利  窗口"以及"抓住机会"(即使是一家小公司)!  (因此保持!)   这很关键-您是否同意?

    祝您一切顺利-任何风险投资公司都很清楚地注意到、"一款可接受的手工制品-提前到达-远远超过"精心制作"-迟到(必然)!"   很明显-巨型技术公司(即 该供应商)完全同意!   (因此、他们的努力-正确地-集中在'C!'上)