freeswitch
freeswitch copied to clipboard
Create CentOS 8 build
Could you create CentOS 8 build and repos
I am on that :)
Thanks Daniel @daniel-lucio, I also created packages for CentOS8. And created several PR to improve FreeSwitch packaging.
True. They are under review now.
Bump - is there any update on CentOS 8 packages?
@andywolk what's missing here? I'm happy to help with any work that's left for packaging for CentOS 8 :)
While waiting for the resolution of this issue, I just rebuilt the src.rpm of CentOS 7 on CentOS 8 and encountered the following papercuts. I'm sure they will be resolved in any official CentOS 8 builds. Recording them here in case anyone tries to do the same.
Background: Try to do a rpmbuild --rebuild <centos7srcrpm> in CentOS 8.
- Ancillary RPMs, flite, broadvoice, g722_1, libks, signalwire-client-c, ilbc2, silk etc etc are needed. They can all be rebuilt from the CentOS 7 src.rpm but flite requires a change because
texi2htmlnow wants-number-footnotes -number-sectionsinstead of-number. The result of my rebuild of "helper" RPMs is here: https://copr.fedorainfracloud.org/coprs/beaveryoga/broadvoice/
Note: I have split libks into libks and libks-devel, and the same for signalwire-client-c. This is to be more idiomatic with the RHEL/CentOS eco-system. There is a bug in my CentOS 8 spec file which does not reflect this split yet.
-
Python packaging: needed to create artificial links python2 -> python, python2-config -> python-config in ~/bin so that
pythonandpython-configcould be found. -
-Werror: propagated to all sub Makefiles, many C/C++ files would not build. -Werror comes from apr, but by adding it to SWITCH_AM_CFLAGS it went into all Makefiles causing failing builds. I had to purge -Werror from many Makefiles.
-
Build id link clash: One build step copies the Erlang
epmdtofs_epmd. They are identical files. This causes a duplicate hash in/usr/lib/.build-id. I had to build with%define _build_id_links noneto workaround this.
The results of the build are here:
https://copr.fedorainfracloud.org/coprs/beaveryoga/FreeSWITCH/.
The build is based on the newly released CentOS 8.2.2004 and completes successfully after the above workarounds. It uses the CentOS 8 repos, EPEL-8, and FreeSWITCH ancillary RPMs.
All issues already resolved by me. Need just review and merge my open PR and then I will open next.
Hi, any update for centos 8 ?
I have an RPM for Centos 8 that works, check my GitHub profile to get to there
@daniel-lucio can you please send me the link. I went to this https://github.com/daniel-lucio/freeswitch url but did not get the rpm link.
Any news on Centos 8 Builds?
Following on from a successful build based on the specs extracted from beaveryoga repo linked by @space88man i'm now looking at EL9 and running into issues that appear related to crypto/OpenSSL changes.
Is anyone else out there had any luck with EL9 builds?
Following on from a successful build based on the specs extracted from beaveryoga repo linked by @space88man i'm now looking at EL9 and running into issues that appear related to crypto/OpenSSL changes.
Is anyone else out there had any luck with EL9 builds?
I am looking at this now...
BTW - I have added 1.10.8 on RHEL8 to Copr: https://copr.fedorainfracloud.org/coprs/beaveryoga/FreeSWITCH-1.10.8/
@spacetourist - the spec file for rebuilding on EL9 is here: https://download.copr.fedorainfracloud.org/results/beaveryoga/FreeSWITCH-1.10.8/epel-9-x86_64/04956289-freeswitch/freeswitch.spec
- you will need to find Erlang from somewhere
- here https://packagecloud.io/rabbitmq/erlang/el/8/$basearch (yes it is EL8 on EL9)
- or here https://github.com/rabbitmq/erlang-rpm/releases/download/v25.1.1/erlang-25.1.1-1.el9.x86_64.rpm
The copr repository is here: https://copr.fedorainfracloud.org/coprs/beaveryoga/FreeSWITCH-1.10.8/
Hey @space88man - thanks for your work here, I had made a start only yesterday on the 1.10.8 conversion but I've produced a much cleaner build file using your spec as a base.
The only modifications are a couple of unique patches we apply, a purge of signalwire client and an extra location in PKG_CONFIG_PATH to support mock as a build environment.
Next step is to install and test on our Alma 9 servers!
I am working on my own RPMs for Roky9, Rocky8 and Centos 7, bloating almost everything, including the signalwire stuff.
Rocky9 RPMS are ready, Details are here https://inside-out.xyz/technology/freeswitch-1-10-8-rpm-for-centos-7-rocky-8-9.html
The repo can be installed using this RPM http://repo.okay.com.mx/centos/9/x86_64/release/okay-release-1-6.el9.noarch.rpm
@daniel-lucio could you provide a pointer to the .spec files you're using to build these RPMS?
@space88man Nice job for providing builds of 1.10.8 for el8 and el9. I tried using your .spec to build on a centos 8 Stream but could not manage to make it work though.
Are you planning to work on a new .spec for building 1.10.9? I saw that there were a few changes to Freeswitch on the build side (dynamic libs, dependencies removed...).
@daniel-lucio could you provide a pointer to the .spec files you're using to build these RPMS?
We would be very interested in this spec file too :)
Basic spec files for 1.10.10 (as close as possible to CentOS 7 builds):
Dependencies spec (libks2, signalwire-client-c2) if you use FS Signalwire module:
- libks2: https://copr.fedorainfracloud.org/coprs/beaveryoga/broadvoice/build/6310951/
- signalwire-client-c2: https://copr.fedorainfracloud.org/coprs/beaveryoga/broadvoice/build/6314309/
RHEL 8/9: https://copr.fedorainfracloud.org/coprs/beaveryoga/FreeSWITCH-1.10.10/
CentOS Stream 8/9: https://copr.fedorainfracloud.org/coprs/beaveryoga/FreeSWITCH-1.10.10-Stream/