C++开发中使用库libuv,编译时提示“not find -llibuv”。错误描述如下:
/opt/rh/devtoolset-8/root/usr/libexec/gcc/x86_64-redhat-linux/8/ld: cannot find -llibuv collect2: error: ld returned 1 exit status
但我已经是从libuv的网站下载程序,网址:http://libuv.org/ 。查看目录/usr/local/lib下已经有libuv.so文件,使用的操作系统Centos7。翻阅一些资料后才弄明白,安装的libuv,文件名“libuv.so”中"lib"后的“uv”才是程序中引入的组件名称。而程序代码中引入的组件名称是“libuv”,换成“uv”编译的问题解决。也可以把/usr/local/lib下的libuv.so文件的名称修改成“liblibuv.so文件”。
注意:libuv.so不一定在目录/usr/local/lib下。根据安装路径找libuv.so文件。