RISC-V MCU中文社区

RISC-V GCC编译:如何添加math.h头文件?

发表于 开源蜂鸟E203 2020-04-12 14:19:47
5
7614
1

在使用一些数学函数(例如exp)时,需要添加math.h头文件

risc-v embedded gcc在添加math.h函数时,会到riscv-none-embed/lib里寻找链接库文件库libm.a,但编译显示失败:undefined exp();

喜欢1
用户评论 (5)
  • 栖梧

    2020-04-17 21:50:15 栖梧 1#

    领主文

    工具链好像自带一个库,可以试一下只加-lm编译选项,不要加-L的路径试一下。

    只用-lm也不行,应该是riscv-none-embed的库没有带这些数学运算库

  • 领主文

    2020-04-13 11:39:15 领主文 2#

    工具链好像自带一个库,可以试一下只加-lm编译选项,不要加-L的路径试一下。

  • JD

    2020-04-12 22:35:31 JD 3#

    赞!暂时还没开始做到这个功能,先记下来等看有没更好的解决方法

  • 栖梧

    2020-04-12 14:23:45 栖梧 4#

    目前使用的方法是自己写一个exp()函数来调用,但编译显示Warning重复定义。虽然不影响编译结果,但毕竟不是好的解决方案。不知道是否有链接到这些库的方法?

  • 栖梧

    2020-04-12 14:19:58 栖梧 5#

    尝试过的解决方案:预计可能是gcc-riscv-none-embed不支持math.h的链接。在Linux直接调用gcc编译时,使用gcc -lm -L/usr/lib可寻找到libm.a库。于是更改common.mk脚本,将${CC}改为$(CC)-lm -L/usr/lib试图加入该库,但编译仍显示undefined exp();

栖梧

栖梧 实名认证

懒的都不写签名

积分
问答
粉丝
关注
  • RV-STAR 开发板
  • RISC-V处理器设计系列课程
  • 培养RISC-V大学土壤 共建RISC-V教育生态
RV-STAR 开发板