帮助中心 >  技术知识库 >  云服务器 >  服务器教程 >  linux下解决Unixbench安装报错信息的问题

linux下解决Unixbench安装报错信息的问题

2019-11-28 16:56:33 3569

运行环境:


Ubuntu 16.04.3 x86_64


在Ubuntu下安装运行Unixbench时,提示报错信息如下


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,而需要由用户来一一指定。


提交成功!非常感谢您的反馈,我们会继续努力做到更好!

这条文档是否有帮助解决问题?

非常抱歉未能帮助到您。为了给您提供更好的服务,我们很需要您进一步的反馈信息:

在文档使用中是否遇到以下问题: