Airwaves

RF Monitoring in the Ohio Valley

Archive for the ‘gnuradio’ tag

libvolk.so.0.0.0: 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/libvolk.so.0.0.0: 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/libvolk.so.0.0.0: 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
libvolk.so.0.0.0: 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

from

#ifdef LV_HAVE_SSE4_2

to

#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 , ,

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 , , ,