Forum: GNU Radio macports build failure

35be31668e7fc122bfbe3dafb8d2b20b?d=identicon&s=25 Dan Aldrich (Guest)
on 2013-08-14 21:31
(Received via mailing list)
I just submitted a report on trying to build gnu radio using macports.
Is pyBomb the preferred way to build it now?

Using the default compiler I got:

WARNING: GNU Radio's VOLK component (which handles vector optimized
instructions and routines) compiles best when using GCC.  The selected
compiler is CLANG, which will result in a fully functioning GNU Radio
install but the VOLK component will not utilize the CPU's capabilities.

So, tried to build with command:  sudo port install gnuradio
configure.compiler=macports-gcc-4.7
and that error'ed as well.

Thanks,
-d
C539637020fd56193dd6daec746c4a84?d=identicon&s=25 Tom Rondeau (Guest)
on 2013-08-14 23:54
(Received via mailing list)
On Wed, Aug 14, 2013 at 3:27 PM, Dan Aldrich <daldrich@earthlink.net>
wrote:
> I just submitted a report on trying to build gnu radio using macports. Is pyBomb
the preferred way to build it now?

PyBOMBS hasn't been worked on for OSX, yet. It should be possible to
add macports as a way to handle many of the recipes, but it isn't
right now and has not been tested for all source builds.

> Using the default compiler I got:
>
> WARNING: GNU Radio's VOLK component (which handles vector optimized instructions
and routines) compiles best when using GCC.  The selected compiler is CLANG, 
which
will result in a fully functioning GNU Radio install but the VOLK component will
not utilize the CPU's capabilities.
>
> So, tried to build with command:  sudo port install gnuradio
configure.compiler=macports-gcc-4.7
> and that error'ed as well.
>
> Thanks,
> -d

Hopefully Michael Dickens can help with this.

--
Tom
Visit us at GRCon13 Oct. 1 - 4
http://www.trondeau.com/grcon13
781e96b7bd64e8833d71e3914cb1594a?d=identicon&s=25 Michael Dickens (Guest)
on 2013-08-15 01:28
(Received via mailing list)
Hi Dan - On 10.8, here is what I generally use:

sudo port install gnuradio +full configure.compiler=llvm-gcc-4.2

If you are on 10.7, I think that will still work.  On 10.6, I think you
set the compiler to just "gcc-4.2" but it's been a while.  For a full
list of compiler options, see < http://guide.macports.org > and search
for "configure.compiler".

GNU Radio will not compile when using MacPorts' GCC because the
assembler does not understand the xgetbv instruction.  I think this
issue is on the queue for "sooner or later"; I'll check into it.  I'd
love to be able to compile GNU Radio using MacPorts' GCC 4.8 instead of
being forced to use Apple's compilers. - MLD
35be31668e7fc122bfbe3dafb8d2b20b?d=identicon&s=25 Dan Aldrich (Guest)
on 2013-08-15 03:45
(Received via mailing list)
I'm running OS X 10.8.4, don't know if that matters. Anyway, got
further it just got me deeper down the rat-hole. Looks like there's a
problem w/ py27-wxpython-devel as well.

unknown20c9d0bc732f:~ daldrich$ sudo port install gnuradio +full
configure.compiler=llvm-gcc-4.2
--->  Computing dependencies for gnuradio
--->  Cleaning gnuradio
--->  Scanning binaries for linking errors: 100.0%
--->  Found 204 broken file(s), matching files to ports
--->  Found 1 broken port(s), determining rebuild order
--->  Rebuilding in order
      py27-wxpython-devel @2.9.4.0
--->  Computing dependencies for py27-wxpython-devel
--->  Cleaning py27-wxpython-devel
--->  Scanning binaries for linking errors: 100.0%
--->  Found 204 broken file(s), matching files to ports
--->  Found 1 broken port(s), determining rebuild order
--->  Rebuilding in order
      py27-wxpython-devel @2.9.4.0
--->  Computing dependencies for py27-wxpython-devel
--->  Fetching distfiles for py27-wxpython-devel
--->  Verifying checksums for py27-wxpython-devel
--->  Extracting py27-wxpython-devel
--->  Applying patches to py27-wxpython-devel
--->  Configuring py27-wxpython-devel
--->  Building py27-wxpython-devel
Error: org.macports.build for port py27-wxpython-devel returned:
command execution failed
Please see the log file for port py27-wxpython-devel for details:
     /opt/local/var/macports/logs/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_python_py27-wxpython-devel/py27-wxpython-devel/main.log
Error: Unable to upgrade port: 1
Error rebuilding py27-wxpython-devel
     while executing
"error "Error rebuilding $portname""
     (procedure "revupgrade_scanandrebuild" line 382)
     invoked from within
"revupgrade_scanandrebuild broken_port_counts $opts"
     (procedure "macports::revupgrade" line 5)
     invoked from within
"macports::revupgrade $opts"
     (procedure "action_revupgrade" line 2)
     invoked from within
"action_revupgrade $action $portlist $opts"
     (procedure "action_target" line 96)
     invoked from within
"$action_proc $action $portlist [array get global_options]"
     (procedure "process_cmd" line 93)
     invoked from within
"process_cmd $remaining_args"
     invoked from within
"if { [llength $remaining_args] > 0 } {

     # If there are remaining arguments, process those as a command
     set exit_status [process_cmd $remaining..."
     (file "/opt/local/bin/port" line 4857)
unknown20c9d0bc732f:~ daldrich$

-d
781e96b7bd64e8833d71e3914cb1594a?d=identicon&s=25 Michael Dickens (Guest)
on 2013-08-15 15:03
(Received via mailing list)
I wish I could better control the whole WX debacle within MacPorts, but
those are not my ports; I'm helping out as much as my time allows, in
hopes that these fixes are put in place sooner rather than later.

On Aug 14, 2013, at 9:43 PM, Dan Aldrich <daldrich@earthlink.net> wrote:
> I'm running OS X 10.8.4, don't know if that matters. Anyway, got further it just
got me deeper down the rat-hole. Looks like there's a problem w/
py27-wxpython-devel as well.
>
> unknown20c9d0bc732f:~ daldrich$ sudo port install gnuradio +full
configure.compiler=llvm-gcc-4.2

Try instead:
{{{
sudo port install gnuradio
+docs+grc+jack+orc+portaudio+python27+qtgui+sdl+swig+uhd+wavelet
configure.compiler=llvm-gcc-4.2
}}}

And, assuming wxWidgets-devel is @2.9.5, then the output from this
command should read something like the following, which is normal and
OK.  GNU Radio should be installed, just without the wxgui component.
gnuradio-companion should work as before, but nothing WX will execute
correctly; Qt stuff should still work.  If this does not work, please
email me off-list and I'll work with you to get it going.

{{{
--->  Configuring gnuradio
--->  Building gnuradio
--->  Staging gnuradio into destroot
--->  Installing gnuradio
@3.7.0_2+docs+grc+jack+orc+portaudio+python27+qtgui+sdl+swig+uhd+wavelet
--->  Activating gnuradio
@3.7.0_2+docs+grc+jack+orc+portaudio+python27+qtgui+sdl+swig+uhd+wavelet
--->  Cleaning gnuradio
--->  Updating database of binaries: 100.0%
--->  Scanning binaries for linking errors: 100.0%
--->  Found XXX broken file(s), matching files to ports
--->  Found 1 broken port(s), determining rebuild order
--->  Rebuilding in order
     py27-wxpython-devel @2.9.4.0
--->  Computing dependencies for py27-wxpython-devel
--->  Cleaning py27-wxpython-devel
--->  Scanning binaries for linking errors: 100.0%
--->  Found XXX broken file(s), matching files to ports
--->  Found 1 broken port(s), determining rebuild order
--->  Rebuilding in order
     py27-wxpython-devel @2.9.4.0
--->  Computing dependencies for py27-wxpython-devel
--->  Fetching distfiles for py27-wxpython-devel
--->  Verifying checksums for py27-wxpython-devel
--->  Extracting py27-wxpython-devel
--->  Applying patches to py27-wxpython-devel
--->  Configuring py27-wxpython-devel
--->  Building py27-wxpython-devel
Error: org.macports.build for port py27-wxpython-devel returned: command
execution failed
Please see the log file for port py27-wxpython-devel for details:
    /opt/local/var/macports/logs/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_python_py27-wxpython-devel/py27-wxpython-devel/main.log
Error: Unable to upgrade port: 1
}}}
781e96b7bd64e8833d71e3914cb1594a?d=identicon&s=25 Michael Dickens (Guest)
on 2013-08-15 15:18
(Received via mailing list)
For folks with the MacPorts wxPython-devel build issue, if you try the
alternative build command and do see:
{{{
-->  Installing gnuradio
@3.7.0_2+docs+grc+jack+orc+portaudio+python27+qtgui+sdl+swig+uhd+wavelet
--->  Activating gnuradio
@3.7.0_2+docs+grc+jack+orc+portaudio+python27+qtgui+sdl+swig+uhd+wavelet
--->  Cleaning gnuradio
--->  Updating database of binaries: 100.0%
--->  Scanning binaries for linking errors: 100.0%
--->  Found XXX broken file(s), matching files to ports
--->  Found 1 broken port(s), determining rebuild order
--->  Rebuilding in order
    py27-wxpython-devel @2.9.4.0
--->  Computing dependencies for py27-wxpython-devel
}}}
then this is normal and expected.  Until the wx stuff is fixed within
MacPorts, you should be able to temporarily fix the "Found XXX broken
file" issue -if- you still have the older wxWidgets-devel installed.
You can see this via:
{{{
port installed | grep wxWidgets
}}}
You should see one that says something like "@2.9.5_X", where "X" might
be 0, 1, or 2.  You might also see another that says something like
"@2.9.4_Y".  If you do not see the "@2.9.4_Y" version, then you'll just
have to wait until WX is fixed in MacPorts.  If you do see that string,
you should be able to temporarily resolve the WX issue by deactivating
the current active wxWidgets-devel port via:
{{{
sudo port -f deactivate `port installed | grep wxWidgets | grep active |
sed -e "s@(active)@@g"`
}}}
and then activating (one of) the @2.9.4 wxWidgets-devel port(s) via
(e.g., selecting the last one as listed by "port installed"):
{{{
sudo port activate `port installed | grep wxWidgets | grep "2.9.4" |
tail -1`
}}}
or you can choose some other @2.9.4 version to activate -- you'll need
to specify the whole @2.9.4_.... string as provided by "port installed".
The key is to keep the py*-wxPython and wxWidgets version numbers the
same.

If anyone tries the above, let me know if it works.  Good luck! - MLD
781e96b7bd64e8833d71e3914cb1594a?d=identicon&s=25 Michael Dickens (Guest)
on 2013-08-15 16:40
(Received via mailing list)
On Aug 15, 2013, at 9:02 AM, Michael Dickens <mlk@alum.mit.edu> wrote:
> Try instead:
> {{{
> sudo port install gnuradio
+docs+grc+jack+orc+portaudio+python27+qtgui+sdl+swig+uhd+wavelet
configure.compiler=llvm-gcc-4.2
> }}}

I just pushed a change to the gnuradio port that forces the use of an
Apple-provided GCC compiler < https://trac.macports.org/changeset/109428
>.  It should be live by now (takes about 30 minutes from commit to
being live).  Anyone wanting it should do:
{{{
sudo port selfupdate
}}}
to update both "port" and the ports list, or just
{{{
sudo port sync
}}}
to update just the ports list.  After that, when installing any gnuradio
port a VOLK-friendly compiler will be selected. - MLD
Please log in before posting. Registration is free and takes only a minute.
Existing account

NEW: Do you have a Google/GoogleMail, Yahoo or Facebook account? No registration required!
Log in with Google account | Log in with Yahoo account | Log in with Facebook account
No account? Register here.