解决Unixbench安装报错信息的问题
运行环境:
Ubuntu 16.04.3 x86_64
在Ubuntu下安装运行Unixbench时,提示报错信息如下
1
2
3
4
5
6
|
gcc -o ./pgms/ubgears -DTIME -Wall -pedantic -ansi -O2 -fomit-frame-pointer -fforce-addr -ffast-math -Wall ./src/ubgears.c -lGL -lXext -lX11
/usr/bin/ld: /tmp/ccnTgDEZ.o: undefined reference to symbol 'sincos@@GLIBC_2.2.5'
//lib/x86_64-linux-gnu/libm.so.6: error adding symbols: DSO missing from command line
collect2: error: ld returned 1 exit status
Makefile:240: recipe for target 'pgms/ubgears' failed
make: *** [pgms/ubgears] Error 1
|
通过查阅资料,由于ubgears.c中会用到数学函数,而实际运行时找不到对应的数学函数,只需要在显示调用函数函数库即可,在Makefile中GL_LIBS 后添加-lm
使用ld -v查看ld工具版本
从binutils2.22开始,ld开始把–no-copy-dt-needed-entries默认打开,这样一来,ld不会再自动递归地解析链接的lib,而需要由用户来一一指定。
以上这篇解决Unixbench安装报错信息的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。
原文链接:http://blog.csdn.net/five0918/article/details/78903242
本文由主机测评网发布,不代表主机测评网立场,转载联系作者并注明出处:https://zhuji.jb51.net/linux/5340.html