discuss-gnuradio
[Top][All Lists]
Advanced

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

Re: [Discuss-gnuradio] volk build issues on Cygwin, partial success


From: Moeller
Subject: Re: [Discuss-gnuradio] volk build issues on Cygwin, partial success
Date: Mon, 07 Mar 2011 14:34:36 +0100
User-agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2.15) Gecko/20110303 Thunderbird/3.1.9

On 05.03.2011 01:52, Don Ward wrote:
> Due mainly to circumstances beyond my control, it is now possible to build 
> the volk library on Cygwin :-).  Previously, there was no support for C99 
> complex data types in the Cygwin library, but this was fixed by the release 
> of Cygwin 1.7.8-1 this past Tuesday.

Thanks. I updated Cygwin and now the current git/main Gnuradio builds out of 
the box.
(after installing all dependencies with Cygwin, cygport or manually)

The functionality was Ok, examples are working, with synthetic signals
as well as with live audio in/out. GRC is working with the wx widgets.
Waterfall, FFT sinks, constellation plots ... all working.

The git/next branch compiles (incl. volk), but make check fails and
make install fails (after installing most of it), too.

Unfortunately, grc always tells me it's a "v3.3.1git-974-g942e2685" version,
although I removed all traces of previous versions.
Are the GRC version strings updated in the git versions?
According to the "Process Monitor", the "3-4git" DLLs are loaded
(after the partial git/next install, before it was 3-3-2git)

> The remaining issues can be addressed by patches or workarounds:
>  (1) configure fails while testing for -lboost_unit_test_framework because 
> of the presence of  "-Wl,--enable-runtime-pseudo-reloc" in LDFLAGS.  I'm not 
> sure why it is a problem, but I don't think these flags are needed at all in 
> this situation.

I installed boost 1.43 and got no errors this time.
Last time I tried, it stopped at some boost unit test code.

>  (2) C++ libraries are not found because 
> volk/config/gcc_version_workaround.m4 specifies -nostdinc++ without knowing 
> where to find the libraries on Cygwin.  My suggestion is to exempt Cygwin 
> from the action of gcc_version_workaround.m4.
> Changes to fix both of these (for Cygwin, anyway) are in the attached patch 
> file.

I had no problems with this (GCC 4).

>  (3) volk_16i_x4_quad_max_star_16i_a16.h triggers an internal compiler error 
> in the Cygwin gcc 3.4.4-999.  One workaround is to remove "-O2" from the 
> Makefile.  (An obvious suggestion is to use a newer compiler, but the last 
> time I tried it Cygwin gcc 4.x couldn't handle the exceptions generated 
> while looking for a working circular buffer strategy.  I will check again 
> from time to time to see if the latest compiler works.)

The first GCC 4 release came out in 2005. I used GCC 4 very early
for my projects. It's important for OpenMP parallelization.
Unfortunately Cygwin still uses GCC 3 as standard compiler.
But they offer GCC 4 as package in their setup.exe.
In the early years, there were many incompatibilities with GCC 4,
because it's more strict with the standard, and also had bugs.
But now it's very mature. I think, you should just forget about GCC 3.

> The bottom line is that we can now build volk (and the GNU Radio 'next' 
> branch) on Cygwin.

It's great to have a functional Gnuradio on the Windows platform.
UHD did not build, but I don't have UHD compatible devices, anyway.
I'm still looking for alternative (cheap) hardware, that can be made
gnuradio compatible and integrated in the UHD driver.




reply via email to

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