UHD with Cygwin?

I managed to compile most of the Gnuradio for Cygwin, including the grc.
Only the USRP2 driver was incompatible with Windows, because
the raw-socket concepts are totally different (even in with Cygwin).
Now with UHD the chances for Cygwin support are much better, right?
If the UHD is using UDP datagrams, this should be realistic in Cygwin
with standard sockets. The UHD build instructions for Windows only deal
with the MSVC.
However, Cygwin better suits the Gnuradio, because all the other GNU
stuff is
available too: Python, toolchain, gcc compilers, math and signal
processing libraries etc.

On 08/18/2010 03:25 PM, Moeller wrote:

I managed to compile most of the Gnuradio for Cygwin, including the grc.
Only the USRP2 driver was incompatible with Windows, because
the raw-socket concepts are totally different (even in with Cygwin).
Now with UHD the chances for Cygwin support are much better, right?
If the UHD is using UDP datagrams, this should be realistic in Cygwin
with standard sockets. The UHD build instructions for Windows only deal with the MSVC.

I believe that cmake will work under cygwin. The unix instructions are
the most applicable.

However, Cygwin better suits the Gnuradio, because all the other GNU stuff is
available too: Python, toolchain, gcc compilers, math and signal processing libraries etc.

Perhaps you can build the UHD with MSVC and link the dll in cygwin.
Maybe?

-Josh

On 19.08.2010 00:45, Josh B. wrote:

Now with UHD the chances for Cygwin support are much better, right?
If the UHD is using UDP datagrams, this should be realistic in Cygwin
with standard sockets. The UHD build instructions for Windows only deal with the MSVC.

I believe that cmake will work under cygwin. The unix instructions are the most applicable.
Yes, in Cygwin you usually configure a project for a real Unix target.
Sometimes you set some flags that this it “not win32” to avoid
MS-specific non-Posix settings.
I think, UHD should be Cygwin-compatible in principle (when it’s not
using raw sockets).
I could compile it but some binaries crashed with a core dump. Sorry, I
deleted
the directory later, so I can’t provide you a crash report now. Perhaps
later for a next try.
In general I think Cygwin should be a supported platform for UHD,
because it’s a GNU
“operating system”, without GNU kernel, but with almost all the rest of
GNU.

However, Cygwin better suits the Gnuradio, because all the other GNU stuff is
available too: Python, toolchain, gcc compilers, math and signal processing libraries etc.
Perhaps you can build the UHD with MSVC and link the dll in cygwin. Maybe?
I had much of this mixing experience in Matlab. It’s a horror. You can’t
really connect
these two worlds, because the Cygwin gcc uses a different exception
handling system
as Windows programs. The runtimes are not compatible. Trying to connect
binary code
via DLL, especially external MEX-functions in MATLAB, will lead to
mysterious crashes.
I’m using gcc to compile Mex-code (linked to lots of other libs), but I
have to call the
mingw-gcc with a windows-compatible runtime library.

The clean way is to keep a complete POSIX parallel world inside your
windows box.
That’s why my X-Server is constantly running (in seamless windows mode).
You feel “at home” there, don’t need to deal with the strange MSVC
compiler options,
code and autoconf build systems are mostly compatible …
There is lots of open source software, math and signal processing
libraries that
run in Cygwin without modifications, but not with MSVC.

wxWindows, wxPython etc. were difficult to configure, but it works.
Some of the packages you will find in the alternative “cygwin ports”
repository.
http://sourceware.org/cygwinports/