为什么在 Ubuntu 14.04 上构建的 WebP 实用程序不起作用并显示库错误?

Nav*_*bel 4 shared-library compiling software-installation 14.04 webp

我已经按照WebP官方网站上的这些说明在 Ubuntu 14.04 上构建了WebP 实用程序。由于我已经成功地完成了所有工作,我的系统应该让我分别使用cwebpdwebp实用程序来压缩和解压缩图像。但是,每当我尝试压缩/解压缩任何图像时,系统都会给我以下错误,

cwebp: error while loading shared libraries: libwebp.so.6: cannot open shared object file: No such file or directory
Run Code Online (Sandbox Code Playgroud)

我想,该页面还描述了我的问题和解决方案,如下所示,

“该库通常安装在 /usr/local/lib/ 目录下。为避免运行时错误,请确保您的 LD_LIBRARY_PATH 环境变量包含此位置。”

我试图以这种方式添加/usr/local/lib到我的LD_LIBRARY_PATH环境变量中。但它仍然给我那个错误。

我现在该怎么办?

但是,我也从这里下载了预构建的二进制文件。这个二进制文件正在运行。但是,为了运行这些二进制文件,我必须转到该二进制文件的目录,或者path/to/the/binaries/./cwebp每次都必须写入。如果我知道如何在 Ubuntu 上安装这些预构建的二进制文件,我也会得到帮助。

Nav*_*bel 10

Full Circle Magazine官方Telegram群的一些成员的帮助下,我成功解决了这个问题。

我遇到过这个问题,因为我的LD_LIBRARY_PATH环境变量没有包含/usr/local/lib. 要添加/usr/local/libLD_LIBRARY_PATH环境变量,请运行以下命令,

$ export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib
Run Code Online (Sandbox Code Playgroud)

这会将位置添加/usr/local/lib到您的LD_LIBRARY_PATH环境变量中。要检查您是否已成功完成此操作,请运行此命令,

$ echo $LD_LIBRARY_PATH
Run Code Online (Sandbox Code Playgroud)

此命令应显示此结果, :/usr/local/lib

注意:每次开始新的终端会话后,您都必须执行此操作。如果您不想一次又一次地执行此操作,请运行以下命令,

$ echo "export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib" >> ~/.bashrc
Run Code Online (Sandbox Code Playgroud)

这将添加包含新行export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib.bashrc主目录中的文件。