New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
3.8 Packaging: Test buildability and inform Distro maintainers #2534
Comments
|
I recently worked with a customer recently getting GR to build on CentOS ... we did eventually, once all of the correct dependencies were installed. I don't know if chatting with this person would be useful ... but, if you think so I'm happy to do introductions. |
|
ah, @ZeroChaos-, this might be a thing you're interested in |
|
I can already build from any branch you like, and I'm happy to help the upstream project set up the same if desired. I'm on irc basically all the time, so feel free to reach out whenever and I can help by testing or getting an environment set up for you. |
|
@yarda I'm afraid we'll have a big chunk of things coming up for you. The two of us should cooperate in modfying the Fedora .spec to suit Py3 / Qt5 / gobject…/. |
|
@marcusmueller that's great, I am looking forward to 3.8 and py3 switch for some time :) We are phasing out py2 in Fedora and I have now quite a hard time adding and maintaining new 3rd party gr packages in Fedora. |
|
awesome! As you might know, I'm using fedora as my dev system myself, and I used to have a not-very-up-to-fedora-standards spec, but it broke a year ago or so. Reworking the current spec might be harder than writing it from scratch for 3.8. Would that be an option? |
|
The spec is quite short and not too complex (in comparison with other packages :) But no problem for rewrite from the scratch. I will be happy to be compat with upstream - this is our goal in Fedora - to stay the most close upstream as possible. One more thing for consideration, are you also going to fix the library sonames in 3.8? E.g.: |
|
I'd have to double-check, but I think we did that on master already, like this: |
|
That's great. |
|
we now use a stricter versioning scheme (see the VERSIONING file) that uses MAJOR.API.ABI.PATCH (and the |
|
BTW for the CentOS / RHEL we have the EPEL repository [1]. In the EPEL-7 the gnuradio package isn't so old (gnuradio-3.7.11-7.el7). EPEL-8 is not yet ready, but we could start with the 3.8 there. |
|
The 3.8.0.0-rc1 release candidate is out. |
|
@marcusmueller I tried to build the 3.8.0.0-rc1 on Fedora Rawhide (f31), but I wasn't successful to get over the configure phase. |
|
Despite the errors there are the following packages installed: |
|
@yarda I'll look into it, thanks! |
|
all: I've merged a patch that fixes the fact that we broke python/native/swig .so installation paths on multiple platforms, including Ubuntu, shortly before I did RC1. I can't do a RC2 today or tomorrow, but dedicate to doing RC2 on Saturday. |
|
@yarda hm, this looks like a successfull CMake run, and is if the gsl detection fails (we only use either MPIR or GMP, if I'm not 100% mistaken; MPIR is the replacement we have to use on windows) |
|
@noc0lour can you have a look at the CMake log above? we have a modern CMake target gsl::gsl finding problem. |
|
@yarda My Dockerfile, which I forgot to add I build that with haven't quite gotten qtgui and gtk to work straight out of the box (this is a modified fedora29 py2 & py3 buildbot dockerfile by @noc0lour). It seems to |
|
I've submitted a patch to update the FreeBSD comms/gnuradio port to RC1 since it was already on a tech preview release: |
|
all: The 3.8.0.0-rc2 release candidate is out. |
|
@marcusmueller I successfully built 3.8.0.0-rc2 on Fedora Rawhide . |
|
|
|
@englishm thanks! |
|
@yarda that is pretty awesome; I think that means I can't really help you write a SPEC file for https://src.fedoraproject.org/rpms/gnuradio/ ? |
|
@marcusmueller I successfully built it, but I have trouble to install it: I guess on Fedora 64 bit this should be: I.e. This is the specfile I used https://paste.fedoraproject.org/paste/54YW8zgObKUEcy4pa2Rrrw |
|
This is the build log for reference: |
|
@yarda Well at least all of the Python parts are installed into the same directory now (which is different than with rc1). even if it's not what you want! You'll need to tweak the |
|
@michaelld OK, I will workaround it downstream, but I think it should autodetect the correct paths similarly how it was done in GR 3.7 rather than hardcoding Debian defaults. |
|
@yarda I was guessing you/"we" figure out what's going on & fix it in GR itself. In MacPorts, I externally set the |
|
I'd agree this should work. I really expected this to work with rc2! It's interesting that it works for me with a CMAKE_INSTALL_PREFIX. hmm. |
|
@michaelld maybe https://github.com/Kitware/CMake/blob/master/Modules/GNUInstallDirs.cmake is the solution? |
|
@marcusmueller do you know how this setting was implemented in GR37? I honestly don't ... lemme look at your link ... (I dishonestly might know LOL) |
I quickly check it and it seems it resolves the lib/lib64 problem. But I think it needs more work:
Interestingly from the build log, the volk stuff seems to install to correct location: So some detection code is already there. Now I am a bit confused :) |
Could you consolidate it to behave the same way for all installed files? Preferably the way how it is handled in volk. |
|
FYI Fedora downstream bug for the gnuradio rebase to 3.8: |
|
FYI: We released VOLK 2.0.0, which will still be in-tree source code for GNU Radio 3.8 by default, but will be an external library only in 3.9 and later. Hence, packaging VOLK separately soon would be worth a consideration – GNU Radio releases will ALWAYS ONLY depend on VOLK released versions, so that GNU Radio can use VOLK as a proper external dependency. Regarding VOLK: it's our Vector Optimized Library of Kernels, which is a spin-off from GNU Radio, containing the hand-optimized code / intrinsics and assembler implementations of single-instruction, much data DSP. I know of a few users outside of GNU Radio, so I'm optimistic libvolk would be a useful package to a larger swath of software. It has a stable C API. |
|
@yarda re: implement GR install like VOLK: sorry, can't. GR is way harder to install due to generated Python in the loads of submodules. But I'll be honest: I think we're trying too hard to be smart in the cmake path detection stuff. |
Release 3.8.0.0 is outAnd we've also uploaded the tarballs to |
|
FreeBSD
|
|
Thanks, @englishm! |
We'll need to verify that the current build specifications for
can and will be adapted to 3.8.
@noc0lour did deb builds, I think, and we have Maitland, who is generally pretty awesome.
I have specs that have become dated from the
nextmerge period.For Gentoo, we need to reach out to the maintainer, whom we know (whose IRC handle I just can't remember right now).
For Arch: we need to figure out.
The text was updated successfully, but these errors were encountered: