标题: MPLAB X IDE 5.45 XC16编译器汇编和C语言混合编程问题 [打印本页]

作者: hz_dyg    时间: 2023-12-25 21:56
标题: MPLAB X IDE 5.45 XC16编译器汇编和C语言混合编程问题
MPLAB X IDE 5.45  XC16编译器 ,现在有个问题,汇编和C混合汇编, 汇编为主,c为辅助,c里面有个函数要用到软件浮点数乘法,链接时候找不到浮点数数库。应该在哪里设置,如何设置下?希望有做过的大神帮助解答下,感谢!
作者: Hephaestus    时间: 2023-12-26 13:22
你在编译器的lib子目录下面找,一定有。
作者: edisonon901001    时间: 2023-12-26 16:51
在MPLAB X IDE 5.45和XC16编译器中,如果在汇编代码中使用了软件浮点数乘法,而链接时找不到浮点数库,可以通过以下步骤进行设置:

1. 首先,确保已经包含了所需的浮点数库。在XC16编译器中,通常使用`libm`库来支持软件浮点运算。

2. 接下来,需要在MPLAB X IDE中的项目设置中指定链接器可以找到这些库。这通常涉及到在项目属性或链接器设置中添加库的路径和名称。

3. 在MPLAB X IDE中,您可以通过以下步骤找到链接器设置:
   - 选择项目菜单下的“属性”选项。
   - 在弹出的窗口中,选择“XC16 Linker”选项。
   - 在该选项卡中,您可以找到“库搜索路径”和“库”选项,您可以在这里添加所需的浮点数库路径和名称。

通过上述步骤,您可以在MPLAB X IDE中的项目设置中指定链接器可以找到所需的浮点数库,从而解决链接时找不到浮点数库的问题。

作者: hz_dyg    时间: 2023-12-28 16:26
edisonon901001 发表于 2023-12-26 16:51
在MPLAB X IDE 5.45和XC16编译器中,如果在汇编代码中使用了软件浮点数乘法,而链接时找不到浮点数库,可以 ...

谢谢你的解答!我按照你的办法,添加了libc99-pic30-elf,就可以了。 但我最后还是放弃了浮点数的乘法,在汇编里写了个子函数,用整数乘法和除法,来实现这个。因为是在原来的汇编里面增加程序,添加了c库后,会影响程序中常量的链接地址,所以放弃这个办法。




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1