discuss-gnuradio
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Discuss-gnuradio] GNU Radio distribution and build from source.


From: Sid Boyce
Subject: Re: [Discuss-gnuradio] GNU Radio distribution and build from source.
Date: Wed, 28 May 2014 00:52:08 +0100
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:24.0) Gecko/20100101 Thunderbird/24.5.0

On 27/05/14 15:21, Tom Rondeau wrote:
On Tue, May 27, 2014 at 10:12 AM, Marcus Leech <address@hidden> wrote:
Ideally, end-users should never have to build from source--their distrib-of-choice should simply have the latest Gnu Radio release in
  their repositories.  The reality, however, is much different.  The Gnu Radio project has *very little* influence over the policy and
  decisions with respect to which versions are carried in the repos for which Linux distributions.
 
So, there are two "easy build from source" options:
 
  o build-gnuradio
  o pybombs
 
But, well, here's the thing.  There's no such thing as "The Linux Operating System".  Instead there are a couple of dozen different
 distribs each with their own way of doing things.   Both "pybombs" and "build-gnuradio" try to encapsulate those differences for
 *some* of the "top" distributions "out there", but can't possibly cover all of them--not without serious amounts of maint activity,
  which means many, many, many person-hours of dedicated time.  We all do this for free, in our spare time.
 
Gnu Radio, like many modern pieces of software has a metric tonne of dependencies.  This is pretty normal.  The only way to
  get away from that is to have the user population agree to a sudden and massive loss in functionality, and a release schedule
  that is measured in decades, as the Gnu Radio crew try to re-build all that functionality from "bare metal".  Modern software
  does a *lot* of "standing on the shoulders of giants".  That isn't ever likely to change.   When you install from the "packages"
  offered by your favourite distrib, all of that pain has been undertaken by the packagers, so all you have to do is "install".
  But you may end up with older Gnu Radio--sometimes, *much* older.
 
Gnu Radio uses modern build tools, like Cmake, which actually do a *LOT* of work to configure things so that the source builds.
  Sometimes, on some systems, that doesn't always work right.  Remember the *massive* diversity-of-Linux thing I talked about
  above?  Well, the folks who write our Cmake files cannot, as a matter of practicality, always get it right for every version of
  every Linux disttribution out there, so, bug reports come in from the field, and the Cmake files become, over time, more
  "encompassing".
 
So, short of the Gnu Radio project inventing their own, yet-another-build-system, and ditching all the dependencies and writing
  from "bare metal", I'm not sure that the path forward would be any different than what we have now.


And I agree that it /should/ be easy. But the thing is, I think that it /is/ easy. However... One issue is that the project has evolved a lot over its lifetime and a lot even in the past year. So that means that a) there's a lot of bad information out there about working with older releases and b) people want the latest and greatest. So they try one thing, and it only gives them an older version, like 3.6, so they want to update. Without properly removing everything from their system, they try and build from scratch or use on of the build tools Marcus mention, which then causes conflicts. Many of the installation questions are really related to Linux and it just happens to be GNU Radio that's causing them to run into these OS problems.

Tom

 
 
on May 27, 2014, Mike Harpe <address@hidden> wrote:
I think the distribution and build system needs some improvement.

I say that because a disproportionate amount of traffic on this list seems to pertain to building the software from source. It shouldn't be this hard given the tools that are available.
 
Mike Harpe, N4PLE



_______________________________________________
Discuss-gnuradio mailing list
address@hidden
https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
Ubuntu supplies 3.7.2 for 14.04, Fedora 20 and openSUSE supply 3.7.3 but I prefer to build my own.

I use SDR apps such as quisk, qsdr and ghpsdr3-alex which have quite a number of dependencies that help to reduce the number needed by gnuradio. I needed only about 4 to build the latest git on Fedora 20.

Once I have built those apps, especially ghpsdr3-alex which details a number of pre-reqs to be installed, it makes light work of building gnuradio.
 
I use 3 cmake scripts, one for x86_64, one for Ubuntu x86_64 and one for Ubuntu ARM.

x86_64 openSUSE and Fedora which use /usr/lib64
==============================
#!/bin/sh
cmake -DPYTHON_EXECUTABLE=/usr/bin/python2.7 -DPYTHON_INCLUDE_DIR=/usr/include/python2.7 -DPYTHON_LIBRARY=/usr/lib64/libpython2.7.so -DCMAKE_INSTALL_PREFIX=/usr .

Ubuntu x86_64 which uses /usr/lib
=====================
#!/bin/sh
cmake -DPYTHON_EXECUTABLE=/usr/bin/python2.7 -DPYTHON_INCLUDE_DIR=/usr/include/python2.7 -DPYTHON_LIBRARY=/usr/lib/libpython2.7.so -DCMAKE_INSTALL_PREFIX=/usr .

ARM Ubuntu on Pandaboard, ODROID-X and Parallella-16.
===================================
#!/bin/sh
cmake -DPYTHON_EXECUTABLE=/usr/bin/python2.7 -DPYTHON_INCLUDE_DIR=/usr/include/python2.7 -DPYTHON_LIBRARY=/usr/lib/libpython2.7.so -DCMAKE_INSTALL_PREFIX=/usr  -DENABLE_PYTHON=ON -DENABLE_VOLK=ON  -DENABLE_GRC=ON  ..
 
73 ... Sid.
-- 
Sid Boyce ... Hamradio License G3VBV, Licensed Private Pilot
Emeritus IBM/Amdahl Mainframes and Sun/Fujitsu Servers Tech Support
Senior Staff Specialist, Cricket Coach
Microsoft Windows Free Zone - Linux used for all Computing Tasks

reply via email to

[Prev in Thread] Current Thread [Next in Thread]