Comments (21)
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
texi2html
now wants-number-footnotes -number-sections
instead 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
python
andpython-config
could 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
epmd
tofs_epmd
. They are identical files. This causes a duplicate hash in/usr/lib/.build-id
. I had to build with%define _build_id_links none
to 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.
from freeswitch.
@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
The copr repository is here: https://copr.fedorainfracloud.org/coprs/beaveryoga/FreeSWITCH-1.10.8/
from freeswitch.
@andywolk what's missing here? I'm happy to help with any work that's left for packaging for CentOS 8 :)
from freeswitch.
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
from freeswitch.
@daniel-lucio could you provide a pointer to the .spec files you're using to build these RPMS?
from freeswitch.
I am on that :)
from freeswitch.
Thanks Daniel @daniel-lucio,
I also created packages for CentOS8.
And created several PR to improve FreeSwitch packaging.
from freeswitch.
True. They are under review now.
from freeswitch.
Bump - is there any update on CentOS 8 packages?
from freeswitch.
All issues already resolved by me.
Need just review and merge my open PR and then I will open next.
from freeswitch.
Hi, any update for centos 8 ?
from freeswitch.
I have an RPM for Centos 8 that works, check my GitHub profile to get to there
from freeswitch.
@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.
from freeswitch.
Any news on Centos 8 Builds?
from freeswitch.
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?
from freeswitch.
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/
from freeswitch.
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!
from freeswitch.
I am working on my own RPMs for Roky9, Rocky8 and Centos 7, bloating almost everything, including the signalwire stuff.
from freeswitch.
@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...).
from freeswitch.
@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 :)
from freeswitch.
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/
from freeswitch.
Related Issues (20)
- switch_load_network_lists This function is called twice
- upgrading from FS1.6 mysql5.1 to FS1.10.11 mysql 8.3. sip_profile loading fails HOT 5
- Strange timestamp wrapping when using timerfd at each talkspurt HOT 1
- Client calls FS2 via FS1. If FS2 rejects, no info is given to the client. And the call stays open on FS1, missing BYE or NOTICE/REASON
- force codec not call the ffmpeg api in av_file_open with ffmpeg5.1
- Max sessions not accurate
- Audio Stream Over Websocket HOT 2
- mod_vlc block channel when it finish playback
- value of CSeq in Options request bigger than 2^31-1 HOT 1
- FS responds 488 to t38 reinvite for some bridge syntax HOT 8
- [mod_unimrcp] Healthcheck from FreeSWITCH to UniMRCP Server HOT 1
- crash on free_header
- Stuck calls HOT 1
- a question about freeswitch memory
- Can not build libv8 in CentOS 7.9 HOT 2
- When using bypass_media_after_bridge, <sip_invite_route_uris> in database are in reverse order for inbound call
- Row size too large error when CREATE TABLE channels and using ODBC driver with MySQL HOT 3
- Error opening unknow file end with codec pcma/pcmu/opus HOT 2
- The recording duration of two channels of a phone call is inconsistent HOT 2
- Compilation failed on mod_amr with gcc 14.0.1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from freeswitch.