有时在CentOS上编译进程,拿到其他centos上去跑,系统给出了下面一行错误信息:
Floating Point Exception
1、高版本GCC编译的程序在低版本GCC的环境下运行会出现这个错误;
由于使用高版本的gcc glibc 编译后在低版本的glibc上运行导致.
gcc现在在link的时候会采用--hash-style=gnu这个hash方式,据说可以提升动态链接50%的效率。然而, 旧的glibc版本并不支持, 所以想要在旧的glibc版本上跑的话, link的时记得加上-Wl, --hash-style=sysv
例如:
gcc -Wl,--hash-type=sysv -o test test.c
2、程序中出现除0的情况,这种情况可用GDB调试找到问题代码,这里就不赘述了;
检查一下代码中是否有除零:var/0 var%0 这种情况
本文发布于:2024-01-31 12:48:07,感谢您对本站的认可!
本文链接:https://www.4u4v.net/it/170667649028627.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
留言与评论(共有 0 条评论) |