[hpsdr] Updated KISS Konsole for Cross-platform Execution
Pat McGrath
ka6tya at arrl.net
Tue Sep 9 14:24:10 PDT 2014
This is what most novice like myself need .
Thanks to all that contributed.
-----Original Message-----
From: Hpsdr [mailto:hpsdr-bounces at lists.openhpsdr.org] On Behalf Of Chris
Smith
Sent: Tuesday, September 09, 2014 10:36 AM
To: <hpsdr at lists.openhpsdr.org> list
Subject: Re: [hpsdr] Updated KISS Konsole for Cross-platform Execution
***** High Performance Software Defined Radio Discussion List *****
John
I am much indebted to you for the steer re 32-bit and OS X. Thanks to that I
have now got KK running under mono on my iMac - OS X 10.8.5 (Mountain Lion).
It wasn't with its problems though, but if everything went smoothly first
time every time life would get quite boring. Though just lately I could have
done with a bit of 'quite boring'!
Here are the steps I had to take to get things working:
I'm assuming you've already installed Mono for OS X ...
I built libfftw3 from sources at http://www.fftw.org This was pretty
straight forward except that 32-bit angle.
Download the source, cd to the source directory and run configure thus:
./configure --enable-threads --enable-shared --disable-fortran --enable-sse2
--enable-float CFLAGS="-arch i386"
make
make install
The standard path for the install is /usr/local/lib
This produces the required library libfftw3.3.dylib with a symlink from
libfftw3.dylib for i386 architecture (not x86_64).
I had to add a stanza to
/Library/Frameworks/Mono.framework/Versions/3.8.0/etc/mono/config
<dllmap dll="libfftw3f.dll" target="libfftw3f.dylib" os="osx"/>
otherwise mono would throw an exception regarding the missing library
libfftw3.dll.
Then things got really messy. The version of svn which is bundled with OS X
(at least the version I'm running) doesn't have a 'patch' option. To get
round this I moved to a Linux system, downloaded a fresh copy of the
KK_Unified from the TAPR svn site: (the following is straight from Sid
Boyce's recent post)
svn co
http://svn.tapr.org/repos_hpsdr_kiss/trunk/StableRelease/KK_Unified/Latest
cd Latest
svn patch <path_to>/kiss.patch
Then I had to make a tar ball of the whole 'Latest' path and transport that
back to my iMac.
Back under OS X the rest of Sid's procedure could be used:
cd Latest/Unified
xbuild "KISS Konsole Unified.sln"
cd bin/Debug
mono KISS\ Konsole.exe
and I was rewarded with the KK GUI.
Your milage may vary according to the version of OS X you're running etc..
Best of luck.
Many thanks to Jae Stutzman K5JAE, Sid Boyce G3VBV & John Laur KF5SABfor all
their input.
73, Chris G4NUX
On 9 Sep 2014, at 15:09, John Laur <johnlaur at gmail.com> wrote:
> Chris,
>
> Yes; I'll keep you posted. The only thing I have done so far is to
> install my macports tree as universal binaries (port install <package>
> +universal) however fftw installs only as x64. When I set build_arch
> to i386 in macports.conf it will not build properly. So I will have to
> build it manually but I imagine that will not be a huge chore. The
> little bit I have read seems to say that building a fat binary for
> fftw is easiest if the 32 bit and 64 bit versions are compiled
> completely independently and the output libraries combined with lipo.
>
> The error that mono gives if it tries to load a 64 bit library is the
> same DllNotFound which isn't super helpful. The file command will tell
> you for certain which architectures are supported in the dylib. You
> can debug the dll loading by setting MONO_LOG_LEVEL="debug" and
> MONO_LOG_MASK="dll"
>
> I think the recent patch will work out of the box on the mac, however
> being able to run in 64 bit would be an advantage for both FFTW itself
> and for the ease of development. It is my understanding that it would
> be easier to accomplish these things using Xamarin.mac (which may now
> have a winforms emulation that works in 64 bit land) but I am unsure
> if that would create a license conflict. The Xamarin framework would
> also potentially enable porting KK to iOS and Android which would be
> admittedly exciting, even though I am not a particular fan of .NET.
>
> 73, John KF5SAB
>
> On Tue, Sep 9, 2014 at 8:13 AM, Chris Smith <chris at vspl.co.uk> wrote:
>> Hi John
>>
>> We need to keep in touch!
>>
>> Thanks for the heads up on the 32-bit angle. I seem to remember that when
I ran ./configure I used a number of options, one of which specified float
rather than double and I thought one specified 32-bit. But I may have been
mistaken.
>>
>> I'll go round that loop again.
>>
>> The impression I got was that mono couldn't find the library rather than
it found one which was the wrong type but as I'm getting nowhere fast any
suggest is helpful.
>>
>> 73, Chris G4NUX
>>
>> On 9 Sep 2014, at 13:03, John Laur <johnlaur at gmail.com> wrote:
>>
>>> I have been working on this too. The good news is that this patch
>>> should work fine on mac also. The problem you are likely having is
>>> that you probably have a 64 bit only fftw library. You can check
>>> with 'file /opt/local/lib/libfftw3f.dylib' or wherever you have it
>>> installed on your system.
>>>
>>> The reason for needing the 32 bit library is that you can compile
>>> and run a 64 bit mono on mac, but MonoMac windows forms won't work
>>> because it still uses carbon. Therefore all of your linked native
>>> libraries have to be 32 bit or universal which is fast becoming the
>>> exception on mac. There are some other implementations of windows
>>> forms for mono that use cocoa, but they may not be enough to work.
>>> Using Xamarin.mac might be a licensing concern also. The alternative
>>> is to develop a second set of ui code using GTK or native mac
>>> widgets which sounds bad and is a lot of work, but is apparently a
>>> relatively clean an common solution to this sort of problem.
>>>
>>> Anyway, I am having trouble getting macports to build an i386 or
>>> universal build of fftw. This is way more of a challenge than I
>>> thought it would have been since everything else in macports builds
>>> universal binaries relatively easily. When I am able to get this
>>> working I assume that KK will then work.
>>>
>>> 73, John KF5SAB
>>>
>>> On Mon, Sep 8, 2014 at 5:38 PM, Chris Smith <chris at vspl.co.uk> wrote:
>>>> ***** High Performance Software Defined Radio Discussion List *****
>>>>
>>>> George
>>>>
>>>> I'm working on the this under OS X 10.8.5 (Mountain Lion) but not
having much luck despite a lot of help from Sid & Jae.
>>>>
>>>> I don't understand the relationship between mono, xbuild and the
>>>> various project files. Plus I have a problem making mono find
>>>> libfftw3f.dylib in /usr/local/lib
>>>>
>>>> Chris G4NUX
>>>>
>>>> On 8 Sep 2014, at 23:28, George Byrkit <ghbyrkit at chartermi.net> wrote:
>>>>
>>>>> ***** High Performance Software Defined Radio Discussion List
>>>>> *****
>>>>>
>>>>> Sid,
>>>>>
>>>>> Thanks for your testing of this stuff! If we can get this working
>>>>> well, it would be something that works, other than using John Melton's
stuff, or making a radio in GNURadio.
>>>>> I wonder if anyone can give it a spin on a Mac using Mono? Or is that
not even possible?
>>>>>
>>>>> George
>>>>>
>>>>> _______________________________________________
>>>>> HPSDR Discussion List
>>>>> To post msg: hpsdr at openhpsdr.org
>>>>> Subscription help:
>>>>> http://lists.openhpsdr.org/listinfo.cgi/hpsdr-openhpsdr.org
>>>>> HPSDR web page: http://openhpsdr.org
>>>>> Archives:
>>>>> http://lists.openhpsdr.org/pipermail/hpsdr-openhpsdr.org/
>>>>
>>>> _______________________________________________
>>>> HPSDR Discussion List
>>>> To post msg: hpsdr at openhpsdr.org
>>>> Subscription help:
>>>> http://lists.openhpsdr.org/listinfo.cgi/hpsdr-openhpsdr.org
>>>> HPSDR web page: http://openhpsdr.org
>>>> Archives: http://lists.openhpsdr.org/pipermail/hpsdr-openhpsdr.org/
>>
_______________________________________________
HPSDR Discussion List
To post msg: hpsdr at openhpsdr.org
Subscription help:
http://lists.openhpsdr.org/listinfo.cgi/hpsdr-openhpsdr.org
HPSDR web page: http://openhpsdr.org
Archives: http://lists.openhpsdr.org/pipermail/hpsdr-openhpsdr.org/
1410297850.0
More information about the Hpsdr
mailing list