1. 正在先生首页
  2. 技术开发

ubuntu bitnami msgfmt libgettextsrc error

正在学习怎么可以给自己的 WordPress 主题做多语言支持。
没什么头绪,就先从别人的模板开始做分析了。
分析的第一步涉及到要从明文的 po 文件生成二进制的 mo 文件。这里开始就出错了。
同时引出 bitmani 服务器的配置问题。

按照基本的套路,要在服务器上进行语言文件的生成,就得安装 gettext

apt-get install gettext

一般的服务器就直接可以用了

# po 文件到 mo 文件
msgfmt messages.po -o messages.mo
# mo 文件到 po 文件
msgunfmt messages.mo -o messages.po

但由于我的 ubuntu 服务器是默认按照 bitmani 配置的,所以就出错了

msgunfmt: error while loading shared libraries: libgettextsrc-0.19.8.1.so: cannot open shared object file: No such file or directory

当然进行常规的排查啊,尝试安装 libgettextsrc 无果啊,然后想到要看看 msgunfmt 被安装在哪里了

$ ls -la $(which msgfmt)
-rwxr-xr-x 1 root root 79104 Jul 13 09:14 /opt/bitnami/common/bin/msgfmt

恩,应该是在 /usr/bin 才对,所以更改一下 PATH ,把 /usr/bin 加进去

export PATH=/usr/bin

同时发现 sudo 的msgfmt依然不管用。然后再把 libgettextsrc-0.19.8.1.so 所在的 lib 路径告知sudo。如下

sudo ldconfig /opt/bitnami/common/lib/

搞定收工

原创文章,作者:Y.Y,如若转载,请注明出处:https://84361749.com/post/ubuntu-bitnami-msgfmt-libgettextsrc-error.html

发表评论

电子邮件地址不会被公开。 必填项已用*标注