discuss-gnuradio
[Top][All Lists]
Advanced

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

[Discuss-gnuradio] USRP on NetBSD, partly/mostly working now


From: Greg Troxel
Subject: [Discuss-gnuradio] USRP on NetBSD, partly/mostly working now
Date: 16 Dec 2005 15:59:39 -0500
User-agent: Gnus/5.09 (Gnus v5.9.0) Emacs/21.4

I have been building GNU Radio from CVS on NetBSD, with all the
prereqs installed via pkgsrc.  I had a few minor problems which I'll
list here in case they are useful to others.

I made a wiki node: http://comsec.com/wiki?NetBSD


1) buildit assumes that everything is in /usr, or perhaps that
   everything is in the compiler's default paths.  This isn't true on
   NetBSD.  I added

   LDFLAGS="-R/usr/pkg/lib -L/usr/pkg/lib" CPPFLAGS="-I/usr/pkg/include"

   to resolve this, but obviously that's not portable.  One could
   argue that such flags for the prefix should be added automatically,
   but it also might be that GNU Radio is being put in /usr/gnuradio
   while boost, swig, etc. are in the standard place.

   So, adding --use-prefix=FOO that adds flags for it (with -R on
   systems that use -R) could be useful, or perhaps even doing this by
   default per OS - buildit is meant to be maximally helpful, not a
   paragon of virtue.

2) GNU make is required in some cases.  We could fix the makefiles to
   work with BSD make also, or far easier just make buildit switch on
   platform to invoke GNU make (gmake on BSD, and surely present on
   systems that have a hope of compiling the prereqs).
        
3) Some files are checked in that are written during the build.  I use
   CVSREAD=t so that files in CVS are readonly, and then use ^X^Q to
   edit them, which does cvs edit, saves a local copy of the repo
   version, and often allows others to see who is editing what files.
   So, I wonder if these files should not be checked in.  If that's
   too difficult it would be nice for the build should chmod +w them.

   gnuradio-core/src/lib/filter/Makefile.gen

     After looking at this one, I see that it's difficult.  The
     Makefile is missing a dependency for Makefile.gen on
     generate_all.py, so removing Makefile.gen has no way to rebuild
     it, plus make chokes on the missing unconditional include.  Also,
     Makefile.gen is unconditionally included.  Perhaps creating
     Makefile.gen from src/lib before descending might avoid this.

     It would be nice if the generated file had the date and hostname
     of generation as well as RCD Ids of the generator code.

   gnuradio-core/src/lib/general/Makefile.gen

     Same issue I think.

   src/lib/swig/gnuradio_swig_bug_workaround.h

     If this is deleted, make regenerates it with no issues.  So
     perhaps this can simply  be deleted from CVS.


With that, and calling buildit with --prefix=/usr/gnuradio, I was able
to build

 usrp gnuradio-core gr-usrp gr-audio-oss gr-wxgui

and am able to run the USB benchmark (4 MB/s via an NEC cardbus ehci,
as good as has been reported on NetBSD), the oscope and fft.

I could run usrp_nbfm_rcv after making a symlink from /dev/dsp to /dev/sound,
and commenting out the following line

  self.fmrx.squelch.set_threshold(threshold_in_db)

The audio doesn't sound right, I think due to USB lossage, but I do
hear quieting.

I have the EHCI spec on my reading pile...

-- 
        Greg Troxel <address@hidden>




reply via email to

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