[Hackrf-dev] PyBombs Install

West, Nathan natw at ostatemail.okstate.edu
Thu Sep 11 23:49:59 EDT 2014


On Thu, Sep 11, 2014 at 12:43 PM, Rich Sanders <richnsanders at gmail.com> wrote:
> Apologies if I sent this out twice.
>
> If anyone feels like giving PyBOMBS a go.  Reportedly, the gnurdio-install
> script is going to lose support in favor of PyBOMBS.
>
> Installing Pybombs
>
> The general disclaimer…..This technique/approach has worked for me various
> times, it is the method I prefer, it may not work for you.  You might prefer
> other steps.  I assume no liability.
>
> Pybombs is not perfect, some recipes do not work.

Can you report these as bugs to either pybombs or module author as appropriate?

>
> I always start with a fresh Ubuntu load, this one is based on Ubuntu 14.
>
> After install, perform the typical:
>
> apt-get update
> apt-get dist-upgrade
>
> Pybombs will by default try to install all dependencies, but I have found
> the install goes much smoother if I install some packages in advance:
>
> type sudo apt-get -y install git-core cmake g++ python-dev swig pkg-config
> libfftw3-dev libcppunit-dev libgsl0-dev libusb-dev libsdl1.2-dev
> python-wxgtk2.8 python-numpy python-cheetah python-lxml doxygen libxi-dev
> python-sip libqt4-opengl-dev libqwt-dev libfontconfig1-dev libxrender-dev
> python-qwt5-qt4 python-sip python-sip-dev cmake xorg-dev libglu1-mesa-dev
>
> reboot
>
> terminal into your home directory
>
> type    git clone git://github.com/pybombs/pybombs
> type cd pybombs
> type   ./pybombs config
>
> In the configuration setup you can press enter for every option, I changed
> the install prefix location because this helps prevent errors when I
> manually install non pybombs packages later on, if you are only going to use
> pybombs “recipes” leave the default location.  If you change to "/usr/local"
> you'll have to run "sudo ./pybombs config" after the config files run
>
> Output of  ./pybombs config
>
> Initializing config file...
> Username for GIT access
> gituser [user]:
> Install Prefix prefix [/home/user/target]:/usr/local/
> Order in which to attempt installations when available, options are: src,
> rpm, deb satisfy_order [deb,src]:
> Comma seperated list of package names to assume are already installed
> forcepkgs []:
> Time the monitor thread waits (in seconds) before retrying downloads timeout
> [30]:
> CMAKE_BUILD_TYPE args to pass to cmake projects, options are: Debug,
> Release, RelWithDebInfo, MinSizeRel, cmakebuildtype [RelWithDebInfo]:
> Build doxygen while compiling packages? options are: ON, OFF builddocs
> [OFF]:
> C Compiler Executable [gcc, clang, icc, etc] cc [gcc]:
> C++ Compiler Executable [g++, clang++, icpc, etc] cxx [g++]:
> Concurrent make threads [1,2,4,8...] makewidth [4]:
> done
> Settled on prefix: /usr/local
>
> [Errno 13] Permission denied: '/usr/local/lib64'
> Error! Configured install prefix requires root privileges. Please re-run as
> sudo!
>
> This error is normal if you ran sudo ./pybombs config, rerun the config
> typing  sudo ./pybombs config
>
> Output of ./pybombs config
>
> Settled on prefix: /usr/local
> Initializing environmental variables...
> /usr/local//python/:/usr/local//lib/python2.6/site-packages/:/usr/local//lib64/python2.6/site-packages/:/usr/local//lib/python2.6/dist-packages/:/usr/local//lib64/python2.6/dist-packages/:/usr/local//lib/python2.7/site-packages/:/usr/local//lib64/python2.7/site-packages/:/usr/local//lib/python2.7/dist-packages/:/usr/local//lib64/python2.7/dist-packages/:/usr/local//python/:/usr/local//lib/python2.6/site-packages/:/usr/local//lib64/python2.6/site-packages/:/usr/local//lib/python2.6/dist-packages/:/usr/local//lib64/python2.6/dist-packages/:/usr/local//lib/python2.7/site-packages/:/usr/local//lib64/python2.7/site-packages/:/usr/local//lib/python2.7/dist-packages/:/usr/local//lib64/python2.7/dist-packages/
> no existing inventory found, creating an empty one...
> ---------- loading recipes -------------------
> Loading recipes ...
> Loading recipes ... done
> ---------- loading recipes finished ----------
>
> gituser = user
> prefix = /usr/local/
> satisfy_order = deb,src
> forcepkgs =
> timeout = 30
> cmakebuildtype = RelWithDebInfo
> builddocs = OFF
> cc = gcc
> cxx = g++
> makewidth = 4
>
> from this point forward, you only need "sudo" if you installed into a custom
> directory instead of the default /home/user/target
>
> type  sudo ./pybombs install gnuradio
>
> THIS WILL TAKE A WHILE
>
> When it is done type sudo ./app_store.py
>
> Click on the packages you want to install, you can only install one at a
> time.  The app_store may go dark.  You can monitor the progress in the
> terminal window that you launched app_store in.  If everything installs
> correctly, the app_store will brighten and your terminal window will display
> "installation ok via: src"  if it errored out, the app_store will close and
> your terminal window will have some information.
>
> I suggest starting with gr-osmosdr (<--- this will install many of your
> app_store blocks such as hackrf and osmosdr) and gr-pyqt
>
> By default, the Ettus block will load, however, some minor configuration is
> required to get the B200 and B210 running correctly, if there is interest, I
> will update this to include.
>
> Click the "X" to exit the app_store.
>
> type  sudo ./pybombs env
>
> Using the Ubuntu file manager, navigate to the location listed after running
> ./pybombs env.  Open setup_env.sh and copy everything below the following
> line:
>
> # WARNING: This file is auto-generated by pybombs, any manual changes to it
> may be overwritten!
>
> It should look similar to:
>
> export
> PATH="/usr/local//bin/:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/lib64/qt4/bin/"
> export
> PYTHONPATH="/usr/local//python/:/usr/local//lib/python2.6/site-packages/:/usr/local//lib64/python2.6/site-packages/:/usr/local//lib/python2.6/dist-packages/:/usr/local//lib64/python2.6/dist-packages/:/usr/local//lib/python2.7/site-packages/:/usr/local//lib64/python2.7/site-packages/:/usr/local//lib/python2.7/dist-packages/:/usr/local//lib64/python2.7/dist-packages/:/usr/local//python/:/usr/local//lib/python2.6/site-packages/:/usr/local//lib64/python2.6/site-packages/:/usr/local//lib/python2.6/dist-packages/:/usr/local//lib64/python2.6/dist-packages/:/usr/local//lib/python2.7/site-packages/:/usr/local//lib64/python2.7/site-packages/:/usr/local//lib/python2.7/dist-packages/:/usr/local//lib64/python2.7/dist-packages/"
> export LD_LIBRARY_PATH="/usr/local//lib/:/usr/local//lib64/:"
> export
> PKG_CONFIG_PATH="/usr/local//lib/pkgconfig/:/usr/local//lib64/pkgconfig/:"
>
> In the termianl window, CD to your home directory
>
> type  sudo nano .bashrc (the SUDO is needed here or the file will not save)
>
> scroll to the bottom and paste the copied lines, then Ctrl X, Yes, Enter
>
> After adding new recipes, you need to re-run the ./pybombs env command and
> update your .bashrc
>
> type  git clone https://github.com/mossmann/hackrf.git
>
> type cd hackrf/host/libhackrf/
>
> type mkdir build
>
> type cd build
>
> type cmake ..
>
> type make
>
> type sudo make install
>
> type sudo ldconfig
>
> copy /home/hackrf/host/libhackrf/53-hackrf.rules to /etc/udev/rules.d
>
> type sudo udevadm control --reload-rules
>
> reboot
>
> type hackrf_info
>
> You should see something SIMILAR to:
>
> Found HackRF board.
> Board ID Number: 2 (HackRF One)
> Firmware Version: git-44df9d1
> Part ID Number: 0xa000cb3c 0x004d4f3f
> Serial Number: 0x00000000 0x00000000 0x457863c8 0x2f1b511f
>
> type gnuradio-companion
>
> Gnu-radio should open
>
> If you need to update the firmware, follow Mike's directions at:
>
> https://github.com/mossmann/hackrf/wiki/Updating-Firmware
>
> You should be good to go!
>
> _______________________________________________
> HackRF-dev mailing list
> HackRF-dev at greatscottgadgets.com
> http://nine.pairlist.net/mailman/listinfo/hackrf-dev
>


More information about the HackRF-dev mailing list