🔍 搜索帖子 / 资讯 / 芯片型号…
论坛/开源蜂鸟E203/RISC-V GCC编译:如何添加math.h头文件?
RISC-V GCC编译:如何添加math.h头文件?
开源蜂鸟E203 作者 栖梧 发布于 2020-04-12 14:19(2371 天前) 11213 浏览

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

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

全部回复 5
栖梧
栖梧2366 天前 · 1 楼
回复 领主文:

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

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

领主文
领主文2370 天前 · 2 楼

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

JD
JD2371 天前 · 3 楼

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

栖梧
栖梧2371 天前 · 4 楼

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

栖梧
栖梧2371 天前 · 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();

💡 请 登录 后参与讨论(微信扫码即登录/注册)