RF Monitoring in the Ohio Valley

Archive for December, 2014 undefined reference to `volk_64u_popcnt_a_sse4_2′

leave a comment

A friend was attempting to build gnuradio on Linux Mint 17.1 32-bit. I run 64-bit Linux Mint and did not have this issue since it is specific to 32-bit builds.

If you’re attempting to build gnuradio on a 32-bit system system, whether it be Ubuntu or Mint or something else, you might not be able to build gnuradio without issues. This applies only to the latest gnuradio available as of 12/26/2014. The issue will probably be fixed in future versions.

To resolve this issue so that you can rebuild gnuradio, scroll to the bottom.

[ 22%] Built target gnuradio-pmt
[ 22%] Built target _pmt_swig_swig_tag
../lib/ undefined reference to `volk_64u_popcnt_a_sse4_2′
collect2: error: ld returned 1 exit status
make[2]: *** [volk/apps/volk-config-info] Error 1
make[1]: *** [volk/apps/CMakeFiles/volk-config-info.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs….
[ 22%] Built target _blocks_swig0_swig_tag
../lib/ undefined reference to `volk_64u_popcnt_a_sse4_2′
collect2: error: ld returned 1 exit status
make[2]: *** [volk/apps/volk_profile] Error 1
make[1]: *** [volk/apps/CMakeFiles/volk_profile.dir/all] Error 2 undefined reference to `volk_64u_popcnt_a_sse4_2′
collect2: error: ld returned 1 exit status
make[2]: *** [volk/lib/test_all] Error 1
make[1]: *** [volk/lib/CMakeFiles/test_all.dir/all] Error 2
make: *** [all] Error 2
Build failed. See output above for error messages.
billybob@billybob-ThinkCentre-XXXX ~/pybombs $

Solution (which I found here):

A fix for this is to change line 39 in volk/kernels/volk/volk_64u_popcntpuppet_64u.h


#ifdef LV_HAVE_SSE4_2


#if LV_HAVE_SSE4_2 && LV_HAVE_64

Written by awadmin

December 29th, 2014 at 10:17 am

Posted in gnuradio,Linux Mint

Tagged with , ,

Installing Linux Mint 17.1 64-bit on a VMWare Workstation VM

leave a comment

Installation Platform: Dell Inspiron 17R laptop, 3rd-gen Intel i7-3612QM @ 2.1 Ghz, 8 GB of RAM and a 256 GB Crucial SSD with Windows 7 Professional as the host.

I decided I’d install a trial version of VMWare Workstation 11. It’s a 30-day trial, and I’m sure I’ll buy it before the trial period is up simply because it’s a great product.

In order to install a 64-bit guest OS on VMWare Workstation, the host machine itself has to be running a 64-bit processor that supports virtualization and has that support enabled. When initially installing VMWare Workstation, it does not ask you to boot afterwards. But if you attempt to create a 64-bit guest OS VM, it won’t let you. I ended up rebooting my machine, and then I was able to to create a 64-bit guest OS (I specified that Ubuntu 64-bit was going to be installed). I specified a guest host with 2 GB of RAM and usage of 1 CPU core, although I’m likely to up those figures later on.

I then put in the Linux Mint 17.1 CD, booted up the VM into the LiveCD of Linux Mint, and started the installation. Installation of Mint took about 22 minutes. Next step was updating the Update Manager and then updating existing software for which the Update Manager indicated there were updates available. This part of the process is quick on my machine, but for the fact that the Mint update server that I was connect to was slow as molasses during the updates. Incidentally, there were 350 MB worth of updates. The download / installation of the updates took 13 minutes.

So in total, it took me about 40 minutes to set up the VM, install and update Linux Mint.

Now on to installing the things I’m interested in, such as git, pybombs, gnuradio, gqrx, and gr-OP25.

UPDATE 01-01-2015: Happy New Year! I gave up on using VMWare Workstation for the job. Technically, there was no issue. But VMWare Workstation takes over your whole machine, with a gazillion resource-hogging services running even when you don’t have VMW open. I don’t like that. I run a fast machine with SSD drives because I like the system to be responsive. VMWare Workstation is totally counterproductive to that. After having uninstalled the whole VMWare Workstation suite of shit, it’s onward and upward to VirtualBox + Linux Mint 17 64-bit.

Written by awadmin

December 25th, 2014 at 2:23 pm

Posted in Linux Mint

Tagged with ,

Error when installing gqrx on Linux Mint 17.1

leave a comment

I’m running Linux Mint 17.1 and had already installed git, pybombs, gnuradio, and OP25 per instructions kingly given by PiccoIntegra in throughout this thread on the RadioReference forums.

I decided I wanted to install gqrx.   Should be simple.   Switch to your ~/pybombs directory and type in:

./pybombs install gqrx

However, for me it wasn’t quite so easy.   After doing this, the installation failed with the following information below.

mike@LinuxMint ~/pybombs $ ./pybombs install gqrx
Settled on prefix: /home/mike/target
Loading recipes …
Installing packages:
* gqrx
Installing from source: gqrx
Configuring: (100%) [==========================================================]
Building:    (100%) [==========================================================]
Build failed. Re-trying with reduced makewidth and higher verbosity.
g++ -m64 -Wl,-O1 -o gqrx main.o mainwindow.o receiver.o remote_control.o remote_control_settings.o cafsk12.o costabf.o agc_impl.o correct_iq_cc.o lpf.o resampler_xx.o rx_demod_am.o rx_demod_fm.o rx_fft.o rx_filter.o rx_meter.o rx_agc_xx.o rx_noise_blanker_cc.o sniffer_f.o stereo_demod.o udp_sink_f.o afsk1200win.o agc_options.o audio_options.o bookmarks.o bookmarkstablemodel.o bookmarkstaglist.o demod_options.o dockaudio.o dockbookmarks.o dockinputctl.o dockfft.o dockrxopt.o freqctrl.o ioconfig.o iq_tool.o meter.o nb_options.o plotter.o qtcolorpicker.o nbrx.o receiver_base.o wfmrx.o pa_device_list.o pa_sink.o pa_source.o moc_mainwindow.o moc_remote_control.o moc_remote_control_settings.o moc_cafsk12.o moc_afsk1200win.o moc_agc_options.o moc_audio_options.o moc_bookmarks.o moc_bookmarkstablemodel.o moc_bookmarkstaglist.o moc_demod_options.o moc_dockaudio.o moc_dockbookmarks.o moc_dockfft.o moc_dockinputctl.o moc_dockrxopt.o moc_freqctrl.o moc_ioconfig.o moc_iq_tool.o moc_meter.o moc_nb_options.o moc_plotter.o moc_qtcolorpicker.o qrc_icons.o qrc_textfiles.o    -L/usr/lib/x86_64-linux-gnu -lboost_system-mt -lboost_program_options-mt -lrt -lpulse-simple -lpulse -L/home/mike/target/lib -lgnuradio-analog -lgnuradio-filter -lgnuradio-fft -lgnuradio-osmosdr -lgnuradio-blocks -lgnuradio-runtime -lgnuradio-pmt -lQtGui -lQtNetwork -lQtCore -lpthread
/usr/bin/ld: cannot find -lboost_system-mt
/usr/bin/ld: cannot find -lboost_program_options-mt
collect2: error: ld returned 1 exit status
make: *** [gqrx] Error 1
Build failed. See output above for error messages.

So, I did some searching on the internet and found out that unless you compiled libboost stuff from source, the -mt is no longer needed.

To fix this issue:

  1. Edit ~/pybombs/recipes/gqrx.lwr, make the following change, and then save:
  2. Change:   qmake BOOST_SUFFIX=-mt

    To:   qmake BOOST_SUFFIX=

  3. Change back to your pybombs directory
  4. mike@LinxMinut ~ $ cd ~/pybombs

  5. clean the previous build data for gqrx and then rebuild gqrx
  6. mike@LinuxMint ~/pybombs $ ./pybombs clean gqrx
    Settled on prefix: /home/mike/target
    Loading recipes …
    cleaned local gqrx
    mike@LinuxMint ~/pybombs $ ./pybombs rb gqrx
    Settled on prefix: /home/mike/target
    Loading recipes …
    Installing packages:
    * gqrx
    Installing from source: gqrx
    Cloning into ‘gqrx’…
    remote: Counting objects: 5243, done.
    remote: Total 5243 (delta 0), reused 0 (delta 0)
    Receiving objects: 100% (5243/5243), 4.19 MiB | 896.00 KiB/s, done.
    Resolving deltas: 100% (2802/2802), done.
    Checking connectivity… done.
    Configuring: (100%) [==========================================================]
    Building:    (100%) [==========================================================]
    Installing: (100%) [===========================================================]
    installation ok via: src

  7. Run gqrx and have fun

mike@LinuxMint ~ $ gqrx


Written by awadmin

December 25th, 2014 at 12:40 am

Posted in gqrx

Tagged with , , ,