Hugo Extended 0.112.7 for / CentOS 7

To create I use Hugo. And for webspace I use For example, when I write a new article, I create a commit for it, which I upload to a Mercurial repository on the webspace. Each new commit then triggers the execution of a script that rebuilds the page.

The script uses the compiled version of Hugo provided by the developers which is stored on the webspace. Due to recent changes to the website I now need the so called extended version of Hugo. But unfortunately it doesn’t work at, because they currently use CentOS 7, so some needed packages are too stable. Or in other words too outdated. Hugo therefore aborts with the following error message.

/home/laythos/bin/hugo: /lib64/ version `GLIBCXX_3.4.20' not found (required by /home/laythos/bin/hugo)
/home/laythos/bin/hugo: /lib64/ version `CXXABI_1.3.8' not found (required by /home/laythos/bin/hugo)
/home/laythos/bin/hugo: /lib64/ version `GLIBCXX_3.4.21' not found (required by /home/laythos/bin/hugo)

The problem is known to the developers (, but for understandable reasons no ready compiled versions are offered for old distributions.

So in this case there are two possibilities. One creates the web page locally each time and loads it for example with rsync on the web space. Or you compile a version of Hugo that supports CentOS 7. I decided for the latter.

Compiling directly on an Uberspace should not be tried though. Because there you can use a maximum of 1.5 GB RAM. Anything that needs more will be terminated automatically. Which is the case with Hugo.

So I downloaded a virtual environment of CentOS 7 from and started it with VirtualBox. Then I installed golang as well as gcc-c++. The former via detours, since Go is apparently not available in the official package sources.

After that I proceeded as follows.

cd hugo-0.97.3
CGO_ENABLED=1 go install --tags extended

The first command downloads the source code of the current version. The second command unpacks it. The third command changes to the directory where the files were unpacked. And the last command compiles the extended version of Hugo.

When the last command has been successfully executed, which can take a few minutes depending on your hardware, you should find the file hugo in the directory ~/go/bin/. You simply copy this file to your Uberspace. With this the creation of the website should work without error messages.

At I uploaded the current version of Hugo that works at If you want (and trust me), you can use it.

Last updated on June 2, 2023.
Version 0.112.7 of Hugo for Uberspcae / CentOS 7 created and uploaded.
Sha256sum: 4408f67a38b886a1b40d86c426c677c21af7aee6353eb4cb1af476e2d221d449

These articles could also be interesting:
I reserve the right not to activate comments. The activation of comments can also take several days.