linux 程序在高版本编译后到低版本运行报错:Floating point exception ,解决方法。

现象:

同一个程序在一台高版本Linux上运行时没有问题,而在另一台低版本机器上运行报Floating Point Exception时,那么这极有可能是由高版本gcc链接造成的。

原因:

高版本的gcc在链接时采用了新的哈希技术来提高动态链接的速度,这在低版本中是不支持的。因此会发生这个错误。

解决方案:

在链接的时候添加选项-Wl,--hash-style=sysv

例如 gcc -Wl,--hash-style=sysv  -o test test.c

你可能感兴趣的:(linux,exception,gcc)