gpt4 book ai didi

c - MPLAB 无法合并 .s 和 .c 文件

转载 作者:太空宇宙 更新时间:2023-11-04 06:14:38 25 4
gpt4 key购买 nike

我在我的 Mac 上使用 MPLAB v4.0.5,带有 XC16 v1.33 编译器。我有两个文件,thom5409_disc2_main_v001.s 和 thom5409_disc2_main_v001.c。

提供以下代码是为了帮助我们入门,我类的其他学生能够获得完全相同的代码来构建而无需更改,因此我认为这是我的 MPLAB 版本或编译器的问题。

基本上,我的汇编代码如下所示: AssemblyCode

我的 C 代码看起来像这样 enter image description here

当我尝试构建它时,出现以下错误:

'_counter' 的多个定义“_myAsmFunc”的多重定义

当我删除汇编文件中的行时.global _myAsmFunc.global_counter

我得到以下错误:对“_main”的 undefined reference 对“_myGlobalVar”的 undefined reference

我试过调试并找出解决方案,但我似乎无法弄清楚。如前所述,其他使用不同机器和版本的 MPLAB 和 XC 编译器的同学都能够让它工作,所以我不认为这是代码问题,但也许我必须稍微更改代码MPLAB 还是编译器?

最佳答案

这两个文件都将编译为 thom5409_disc2_main_v001.o。您应该做的是重命名其中一个文件,以便将 .c 和 .s 文件编译为不同的目标文件。

关于c - MPLAB 无法合并 .s 和 .c 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48603135/

25 4 0
文章推荐: css - 使用css在li之间添加连接线
文章推荐: html - 悬停内部元素时如何隐藏容器 div 标题?
文章推荐: html - 如何将工具提示集成到我的
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com