/usr/bin/ld: /usr/lib/x86_64-linux-gnu/libfontconfig.so: undefined reference to `uuid_parse@UUID_1.0

在opencv4编译的过程中,有时会出现/usr/lib/x86_64-linux-gnu/libapr-1.so.0: undefined reference to `uuid_generate@UUID_1.0’的错误。
/usr/bin/ld: /usr/lib/x86_64-linux-gnu/libfontconfig.so: undefined reference to `uuid_parse@UUID_1.0_第1张图片

查看一下版本: ls   -l   /usr/lib/x86_64-linux-gnu/libuuid.so
进入anaconda:cd anaconda3/lib/
删除原有的:rm libuuid.so.1
按自己版本进行连接:ln -s /usr/lib/x86_64-linux-gnu/libuuid.so.1.3.0   libuuid.so.1

总结
其实这类原因都是由于anaconda的兼容问题引起的,opencv编译出现这种错误均可用该套路解决。

第一步,安装locate( locate 是一个查找系统文件的指令)

sudo apt-get install mlocate

第二步

locate libfontconfig.so

第三步,对比 anaconda3/lib/和 /usr/lib/x86_64-linux-gnu/ 相应得库 是否 版本对应 ,如果不对应,则进行如下修改(我这个地方改完了,才来记录的,大家不要介意哈)
/usr/bin/ld: /usr/lib/x86_64-linux-gnu/libfontconfig.so: undefined reference to `uuid_parse@UUID_1.0_第2张图片

cd anaconda3/lib/
rm libgio-2.0.so.0
ln -s /usr/lib/x86_64-linux-gnu/libgio-2.0.so.0.6400.6  libgio-2.0.so.0

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