[Lazarus] version `GLIBC_2.34' not found error when running app on different PC

Bo Berglund bo.berglund at gmail.com
Fri Mar 17 08:07:16 CET 2023

On Fri, 17 Mar 2023 08:53:01 +0300, Mehmet Erol Sanliturk via lazarus
<lazarus at lists.lazarus-ide.org> wrote:

>Some portability is obtained if the libraries are linked as "static" .
>If "dynamic" linking is selected , during execution of the program ,
>the "same" library should be in the executing computer .

How is this accomplished in Lazarus?

Does this change happen randomly or is it connected to the major Ubuntu releases
like going from 20.04 to 22.04 rather than just keeping 20.04 up-to-date?

It implies having to build applications on as old a system as ever possible,
maybe using 16.04 or earlier just for making apps that can run on all systems,
is that really true?

It makes no sense to me...

And from https://wiki.freepascal.org/Lazarus/FPC_Libraries
Static linking

FPC compiles and links a static executable by default. That means it tells the
linker to put all .o files of the project and all packages into one big

        No external dependencies.
        No code is shared between different programs on the same computer.
        You can not load/unload a plugin.

This idea was always why I liked Delphi when it came along in 1995 or so, just
build an executable and it could be run everywhere.
This is also why I liked FreePascal when it appeared because I did not need to
bother with distributing extra files all over the place.

So why has it changed now and how can I get around it?
Developing on an up-to-date system should ensure the output could work
everywhere, but not so now it appears....

I cannot find any setting for this in Lazarus.

Notice: This is a command line utility so it needs no access to any GUI
components at all...

Bo Berglund
Developer in Sweden

More information about the lazarus mailing list