Recent

Author Topic: Installing FPC on RedHat EL 7.9  (Read 3953 times)

DL

  • Newbie
  • Posts: 2
Installing FPC on RedHat EL 7.9
« on: November 18, 2020, 09:38:04 pm »
Hi All, I could really use some help getting fpc installed on a RHEL 7.9 workstation. I'm comfortable running basic Linux commands and using the package manager for most installs, but this one is a bit beyond me.

First, I can't find Lazarus or fpc within RedHat's yum manager, but I imagine it's just not there? No problem yet.

I went ahead and downloaded both the fpc 3.2.0 rpm and src.rpm from here:

ftp://mirror.freemirror.org/pub/fpc/dist/3.2.0/x86_64-linux/

If I try and install the rpm directly using the rpm shell command, I get an error:

> error: Failed dependencies:
>         rpmlib(PayloadIsZstd) <= 5.4.18-1 is needed by fpc-3.2.0-1.x86_64


I've looked around some and it seems like this is a compatibility issue with RedHat 7 and how the rpm was made? Something about using xz instead of zstd for package compression?

https://forum.duplicati.com/t/rpmlib-payloadiszstd-5-4-18-1-is-needed-by-duplicati-noarch-rpm/9232
https://github.com/duplicati/duplicati/issues/4306
https://bugzilla.redhat.com/show_bug.cgi?id=1715799#c58
https://github.com/rpm-software-management/mock/issues/390

I installed zstd but that didn't make a difference.

I loosely followed some of the instructions I found online to install mock using dnf. I then tried using mock to install the fpc rpm. A lot of fun stuff happened while it downloaded some dependencies (I think), but then it failed with a similar message.

I tried installing using the src.rpm. I was able to properly extract it using rpmbuild into its two main folders, SOURCES and SPECS. If I try to build using rpmbuild and the spec file, I get:

error: Failed build dependencies:
        fpc is needed by fpc-3.2.0-1.x86_64


At this point I'm way out of my depth so any advice would be helpful. Hopefully I'm just stupid and there's a simple thing I'm missing! Thanks.


Bart

  • Hero Member
  • *****
  • Posts: 5275
    • Bart en Mariska's Webstek
Re: Installing FPC on RedHat EL 7.9
« Reply #1 on: November 18, 2020, 10:40:30 pm »
You can download the fpc as a tar file that contains an installscript.
Your package manager however will then not be aware of the installation of fpc.

After that download the sources for fpc and the sources for Lazarus (the latter is easiest via svn), best in some subfolder of you home directory.
Then manually build Lazarus.

The advantage of this is that you Lazarus is local to you.
The disadvantage is that you will have to install some devel packages before you can actually build Lazarus, otherwise the linking will fail.
You need devel packages for libc, glibc, gtk2, gdk-pixbuf, cairo and some more.
Installing gcc might take care of some of those.
Also you need binutils installed (make etc.)

I only ever once installed fpc/Lazarus via my packamanager (on Suse 10.0), after that I changed to the above mentioned way of getting the compiler and Lazarus.

Finding out what devel packages you need is the hard part.
However, if linking fails due to a missing lib, it will mention what lib this is (and nee then need the devel package for that).

Bart

DL

  • Newbie
  • Posts: 2
Re: Installing FPC on RedHat EL 7.9
« Reply #2 on: November 18, 2020, 11:18:17 pm »
Thanks, I think I should be able to handle that. I'll give it a shot once I have some free time and will report back.

dbannon

  • Hero Member
  • *****
  • Posts: 2786
    • tomboy-ng, a rewrite of the classic Tomboy
Re: Installing FPC on RedHat EL 7.9
« Reply #3 on: November 19, 2020, 12:27:00 am »

Quite important that you consider installing FPC (and src) as a distinct operation from installing Lazarus

FPC -
https://wiki.lazarus.freepascal.org/Installing_the_Free_Pascal_Compiler#FPC_Tar_Balls
I believe that the only dependencies you need are - binutils, make, gcc. If you find that is not the case, please report !

Then, only after you have confirmed a working FPC, install Lazarus
https://wiki.freepascal.org/Installing_Lazarus_on_Linux#Build_Lazarus_from_Source
Now you will need either GTK2 or Qt5, please read the note on that wiki page about dependencies. Most important !

And let us know if it does not work please !

Davo

Lazarus 3, Linux (and reluctantly Win10/11, OSX Monterey)
My Project - https://github.com/tomboy-notes/tomboy-ng and my github - https://github.com/davidbannon

Zvoni

  • Hero Member
  • *****
  • Posts: 2319
Re: Installing FPC on RedHat EL 7.9
« Reply #4 on: November 19, 2020, 08:23:12 am »
Or you go the "easy" way and use fpcupdeluxe

EDIT: Err....yes...forgot...fpcupdeluxe doesn't solve dependencies, so what the others said is still true
One System to rule them all, One Code to find them,
One IDE to bring them all, and to the Framework bind them,
in the Land of Redmond, where the Windows lie
---------------------------------------------------------------------
Code is like a joke: If you have to explain it, it's bad

alexp

  • Newbie
  • Posts: 1
Re: Installing FPC on RedHat EL 7.9
« Reply #5 on: March 11, 2021, 11:52:00 am »
i have same problem.
I solved the problem simply repack rpm.

rpmrebuild -enp fpc-3.2.0-1.x86_64.rpm

remove dependency rpmlib(PayloadIsZstd)

and add

%define _source_payload w0.gzdio
%define _binary_payload w0.gzdio

to spec

P.S. i did it at centos 8, and after that package successfully installed on centos 7

 

TinyPortal © 2005-2018