[Discuss-gnuradio] Some problems with library path when running test and proposed fix

2014-01-26 Thread Volker Schroer
In brief: Depending on the settings make test does not always test what 
should test.


In detail:
The following is based on gnuradio v3.7.2.1-159-g3fa56a46 though the 
problems already exist with older versions.


If I run make test on a fresh build ( but not installed! ) version of 
gnuradio I get a lot of errors.


Mainly symbol not found.

This depends on my special ( but I think not really unusual ) setup.

I work with multiple version of gnuradio all installed in /usr/local, 
for example:


drwxr-xr-x 9 root root 88 21. Jan 17:27 /usr/local/gnuradio-3.7.1
drwxr-xr-x 9 root root 88 13. Sep 12:13 /usr/local/gnuradio-3.7-debug

The installation to use is selected by an symbolic link:

lrwxrwxrwx 1 root root 14 26. Jan 12:30 /usr/local/gnuradio -> 
gnuradio-3.7.1


The gnuradio-libs a referenced by:
LD_LIBRARY_PATH=/usr/local/gnuradio/lib

and

PYTHONPATH=/usr/local/gnuradio/lib64/python2.7/site-packages/

Switching between versions is easy, I've just change the symbolic link. 
This works very well.


Installing a new(er) version of gnuradio is as follow.

Clone the repository.
Run cmake in the build- directory defining a new installation directory
and run

make test.

Only if the test are O.K. I'd really like to install the new version.

No the problems arise:
As LD_LIBRARY_PATH is set, the volk test uses the wrong library:

 ldd lib/test_all
linux-vdso.so.1 (0x7fff45bff000)
	libvolk.so.0.0.0 => /usr/local/gnuradio/lib/libvolk.so.0.0.0 
(0x7eff7c501000)
	libboost_filesystem.so.1.55.0 => 
/usr/lib64/libboost_filesystem.so.1.55.0 (0x7eff7c2e9000)
	libboost_system.so.1.55.0 => /usr/lib64/libboost_system.so.1.55.0 
(0x7eff7c0e5000)
	libboost_unit_test_framework.so.1.55.0 => 
/usr/lib64/libboost_unit_test_framework.so.1.55.0 (0x7eff7be39000)
	libboost_program_options.so.1.55.0 => 
/usr/lib64/libboost_program_options.so.1.55.0 (0x7eff7bbc6000)

libdl.so.2 => /lib64/libdl.so.2 (0x7eff7b9c2000)
liborc-0.4.so.0 => /usr/lib64/liborc-0.4.so.0 (0x7eff7b73b000)
	libstdc++.so.6 => /usr/lib/gcc/x86_64-pc-linux-gnu/4.8.2/libstdc++.so.6 
(0x7eff7b433000)

libm.so.6 => /lib64/libm.so.6 (0x7eff7b133000)
	libgcc_s.so.1 => /usr/lib/gcc/x86_64-pc-linux-gnu/4.8.2/libgcc_s.so.1 
(0x7eff7af1c000)

libc.so.6 => /lib64/libc.so.6 (0x7eff7ab6c000)
librt.so.1 => /lib64/librt.so.1 (0x7eff7a964000)
libpthread.so.0 => /lib64/libpthread.so.0 (0x7eff7a747000)
/lib64/ld-linux-x86-64.so.2 (0x7eff7c81b000)

So the test results in:

lib/test_all: symbol lookup error: lib/test_all: undefined symbol: 
volk_32f_invsqrt_32f_get_func_desc

This can be avoided be adding . to the LD_LIBRARY_PATH in the test script.

Similar problems arise in many tests that depend on the volk library. 
For example the analog/qa_agc.py test results in

undefined symbol: volk_malloc

If you have a look into the test script you'll find

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH
export 
PYTHONPATH=/home/schroer/gnuradiocomponents/gnuradio/build-master/gnuradio-runtime/python:$PYTHONPATH


The setting of the LD_LIBRARY_PATH makes no real sense. It should be 
prefixed with the path to the newly compiled volk library in the build 
directory, similarly like the PYTHONPATH is set.


For example:

export 
LD_LIBRARY_PATH=/home/schroer/gnuradiocomponents/gnuradio/build-master/volk/lib:$LD_LIBRARY_PATH



There are some other tests affected.

The attached patch adresses these problems and the patch for 
FindQwt.cmake solves a problem on gentoo that the wrong qwt library is 
used. The original FindQwt.cmake finds the include file of qwt6 but the 
lib of qwt5.


-- Volker
>From 3c614ce18ec863eaff3a304c0f1c94c3c730477f Mon Sep 17 00:00:00 2001
From: dl1ksv 
Date: Sun, 26 Jan 2014 12:19:31 +0100
Subject: [PATCH] Fixing problems with library path

---
 cmake/Modules/FindQwt.cmake| 4 ++--
 gr-analog/python/analog/CMakeLists.txt | 2 +-
 gr-atsc/python/atsc/CMakeLists.txt | 2 +-
 gr-channels/python/channels/CMakeLists.txt | 2 +-
 gr-digital/python/digital/CMakeLists.txt   | 2 +-
 gr-filter/python/filter/CMakeLists.txt | 3 ++-
 gr-pager/python/pager/CMakeLists.txt   | 2 +-
 gr-qtgui/python/qtgui/CMakeLists.txt   | 3 ++-
 gr-trellis/python/trellis/CMakeLists.txt   | 2 +-
 gr-vocoder/python/vocoder/CMakeLists.txt   | 2 +-
 gr-wavelet/python/wavelet/CMakeLists.txt   | 2 +-
 volk/lib/CMakeLists.txt| 3 ++-
 12 files changed, 16 insertions(+), 13 deletions(-)

diff --git a/cmake/Modules/FindQwt.cmake b/cmake/Modules/FindQwt.cmake
index a940558..0e2c135 100644
--- a/cmake/Modules/FindQwt.cmake
+++ b/cmake/Modules/FindQwt.cmake
@@ -21,7 +21,7 @@ find_path(QWT_INCLUDE_DIRS
 )
 
 find_library (QWT_LIBRARIES
-  NAMES qwt qwt6 qwt-qt4
+  NAMES qwt6 qwt qwt-qt4
   HINTS
   ${CMAKE_INSTALL_PREFIX}/lib
   ${CMAKE_INSTALL_PREFIX}/lib64
@@ -56,4 +56,4 @@ if(QWT_FOUND)
   include ( FindPackageHandleStandardArgs )
   find_pac

[Discuss-gnuradio] how to program selector block

2014-01-26 Thread Maheshkumar Pandit
Hello every buddy


  i am working on cognitive radio spectrum sensing . i need
a selector block of 1024 fft size  fft output . but GRc sector block can be
visible up 29 port only . so, how can be make it possible through
programming a block to select all 1024 fft   and make one out put to find
massage 2 of that .


please gide me the possible way or logic to program and the steps for
signla processing block  programming.


thanking you

-- 
*Thanks and regard:*


*MR.Maheshkumar Pandit*

*call @ 9662784649*
___
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
https://lists.gnu.org/mailman/listinfo/discuss-gnuradio


Re: [Discuss-gnuradio] Some problems with library path when running test and proposed fix

2014-01-26 Thread Michael Dickens
On Jan 26, 2014, at 11:23 AM, Volker Schroer  wrote:
> In brief: Depending on the settings make test does not always test what 
> should test.


Hi Volker - If GNU Radio is already installed into the PREFIX provided to cmake 
during configuration, then during "make test" some of the already-installed 
libraries will be found and used instead of those just build.  This condition 
can lead to some interesting "make test" errors!

I can say with confidence that the -built- libraries are all OK (I've checked 
both the CMakeLists.txt files as well as used ldd or otool to see what linkage 
is actually there; it's all good), it's just those found for -testing- which 
can get mixed up.

This is a known problem for a while now (to me), and in my queue to work on 
sooner or later.  I believe that the issue is more extensive than just adding 
VOLK to the library dependency list for each component.  I encounter this in 
MacPorts because, generally, the GNU Radio port is already installed when an 
update comes along.  The nice part is that it's trivial to replicate in 
MacPorts, and thus easy to see what needs to be fixed; and, the "how" part 
isn't too difficult either, just takes perseverance and time.

Thanks for the information and patch! - MLD


___
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
https://lists.gnu.org/mailman/listinfo/discuss-gnuradio


Re: [Discuss-gnuradio] (no subject)

2014-01-26 Thread Marcus Müller

Hi Maheshkumar,

you are missing the Python ZMQ bindings.
Please install these, they should usually be available from your linux 
distribution package repository.

Greetings,
Marcus

On 01/26/2014 07:45 AM, Maheshkumar Pandit wrote:


hello sir


  here , i try to install air modes but i face this kind of 
error

mahesh@HP:~/gr-air-modes/build$ cmake ..
-- Build type not specified: defaulting to release.
Checking for GNU Radio Module: RUNTIME
 * INCLUDES=/usr/local/include
 * LIBS=/usr/local/lib/libgnuradio-runtime.so
GNURADIO_RUNTIME_FOUND = TRUE
--
-- Python checking for PyZMQ
-- Python checking for PyZMQ - not found
CMake Error at CMakeLists.txt:87 (message):
  Python ZMQ bindings not found.


please guide me if you face such kind of error


thank you
--
*Thanks and regard:*
*
*
*
MR.Maheshkumar Pandit
**
*
*call @ 9662784649
*


___
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
https://lists.gnu.org/mailman/listinfo/discuss-gnuradio


___
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
https://lists.gnu.org/mailman/listinfo/discuss-gnuradio


Re: [Discuss-gnuradio] how to program selector block

2014-01-26 Thread Marcus Müller

Hi Maheshkumar,

I don't quite understand you completely.
What is your input? Is it vectors of size 1024?
Do you need to select complete vectors, or do you need to select elements of 
these vectors?
What has this to do with messages? What messages of 2?

Greetings,
Marcus

On 01/26/2014 06:54 PM, Maheshkumar Pandit wrote:

Hello every buddy


  i am working on cognitive radio spectrum sensing . i need a 
selector block of 1024 fft size  fft output . but GRc sector block can be 
visible up 29 port only . so, how can be make it possible through programming a 
block to select all 1024 fft   and make one out put to find massage 2 of that .


please gide me the possible way or logic to program and the steps for signla 
processing block  programming.


thanking you

--
*Thanks and regard:*
*
*
*
MR.Maheshkumar Pandit
**
*
*call @ 9662784649
*


___
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
https://lists.gnu.org/mailman/listinfo/discuss-gnuradio


___
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
https://lists.gnu.org/mailman/listinfo/discuss-gnuradio


Re: [Discuss-gnuradio] Need an "indicator" on the GUI display

2014-01-26 Thread Marcus Müller

Hi Jim,

you can easily code your own GUI ;). Actually, I find that streaming values via 
UDP or TCP to a remote python application works rather nicely.
And I find that gygtk and pycairo are rather powerful toolsets.
Also I fiddled around with different python web frameworks, taking data from a socket, 
and "rendering" it by updating a browser page using ajax, but I kind of lost 
interest on the way... But maybe this might be of interest to your application case.

Greetings,
Marcus

On 01/25/2014 09:34 PM, j...@moudy.com wrote:

I've written an application for my client. The application works great (monitoring 
multiple channels for radio traffic and recording the demod FM stream). The client would 
like to see a couple of lights that show activity on the channel rather than a FFT GUI 
plot, which I like. Does anyone know of a "indicator" (on off light) that I can 
put on a GUI? Alternatively, maybe a VU meter widget?

The Indicator would show when a squelch is active or a threshold has been 
crossed.

Thanks for any ideas.



___
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
https://lists.gnu.org/mailman/listinfo/discuss-gnuradio


___
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
https://lists.gnu.org/mailman/listinfo/discuss-gnuradio


Re: [Discuss-gnuradio] Need an "indicator" on the GUI display

2014-01-26 Thread Marcus D. Leech

On 01/26/2014 05:34 PM, Marcus Müller wrote:

Hi Jim,

you can easily code your own GUI ;). Actually, I find that streaming 
values via UDP or TCP to a remote python application works rather nicely.

And I find that gygtk and pycairo are rather powerful toolsets.
Also I fiddled around with different python web frameworks, taking 
data from a socket, and "rendering" it by updating a browser page 
using ajax, but I kind of lost interest on the way... But maybe this 
might be of interest to your application case.


Greetings,
Marcus

O
YOu can stick a PROBE in the path, and have a static-text box take the 
output of a variable that tells you whether threshold exceeded or not.

  It's not a "lamp", but it does the job.





___
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
https://lists.gnu.org/mailman/listinfo/discuss-gnuradio



--
Marcus Leech
Principal Investigator
Shirleys Bay Radio Astronomy Consortium
http://www.sbrac.org

___
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
https://lists.gnu.org/mailman/listinfo/discuss-gnuradio


Re: [Discuss-gnuradio] Some problems with library path when running test and proposed fix

2014-01-26 Thread Volker Schroer

Hi Michael,

just for clarification:

My CMAKE_INSTALL_PREFIX points to a non existing directory at build and 
test time. The libraries used depend on the LD_LIBRARY_PATH settings 
that point to an existing installation.


In my case, I can avoid the problems by unsetting the LD_LIBRARY_PATH. 
It seems that in such a case the libs in the build directory are found. 
 But I suppose that this could not be a general solution as in some 
cases other important libraries like boost may be found be means of the 
LD_LIBRARY_PATH.


I agree that my patch is not a general solution for this problem, but 
only a starting point.
A general solution could be to prepend the required test libraries to 
the LD_LIBRARY_PATH as I did it in my patch for the volk lib.


-- Volker

Am 26.01.2014 23:15, schrieb Michael Dickens:

On Jan 26, 2014, at 11:23 AM, Volker Schroer  wrote:

In brief: Depending on the settings make test does not always test what should 
test.



Hi Volker - If GNU Radio is already installed into the PREFIX provided to cmake during 
configuration, then during "make test" some of the already-installed libraries will be 
found and used instead of those just build.  This condition can lead to some interesting "make 
test" errors!

I can say with confidence that the -built- libraries are all OK (I've checked 
both the CMakeLists.txt files as well as used ldd or otool to see what linkage 
is actually there; it's all good), it's just those found for -testing- which 
can get mixed up.

This is a known problem for a while now (to me), and in my queue to work on sooner or 
later.  I believe that the issue is more extensive than just adding VOLK to the library 
dependency list for each component.  I encounter this in MacPorts because, generally, the 
GNU Radio port is already installed when an update comes along.  The nice part is that 
it's trivial to replicate in MacPorts, and thus easy to see what needs to be fixed; and, 
the "how" part isn't too difficult either, just takes perseverance and time.

Thanks for the information and patch! - MLD





___
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
https://lists.gnu.org/mailman/listinfo/discuss-gnuradio


[Discuss-gnuradio] Help about using gr-air-modes

2014-01-26 Thread Cheng Chi
Hi,

I am using gr-air-modes for decoding the air plane signal with USRP. I've
successfully used the "modes_rx" and "modes_gui" for decoding the mode-S
packets.

However, it seems that the modes_rx or modes_gui can't provide the
timestamp of the mode-S packets being decoded. Is there any option that I
can set to timestamp the mode-S packet? The reason I want this timestamp
function is that I want to know the decoded packet data correspond to which
part of the raw data (complex baseband data samples).

Thank you for any help you can provide in this situation.

I found that there's a file called "air_modes_preamble.cc" seems to provide
the timestamp function. Does anyone know how to use this file separately?

Best regards,
Cheng Chi
___
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
https://lists.gnu.org/mailman/listinfo/discuss-gnuradio


Re: [Discuss-gnuradio] Help about using gr-air-modes

2014-01-26 Thread Nick Foster
On Sun, Jan 26, 2014 at 11:48 PM, Cheng Chi  wrote:

> Hi,
>
> I am using gr-air-modes for decoding the air plane signal with USRP. I've
> successfully used the "modes_rx" and "modes_gui" for decoding the mode-S
> packets.
>
> However, it seems that the modes_rx or modes_gui can't provide the
> timestamp of the mode-S packets being decoded. Is there any option that I
> can set to timestamp the mode-S packet? The reason I want this timestamp
> function is that I want to know the decoded packet data correspond to which
> part of the raw data (complex baseband data samples).
>

If you're using a USRP, you should be getting a timestamp. It's the second
number printed, as in the following:
(-14 *1.29258827811*) Type 0 (short A-A surveillance) from ab2984 at 3000ft

If you are using a GPSDO with your USRP, the printed time will be in UTC
seconds. Otherwise, it will be in seconds since the application started
running.

--n



>
> Thank you for any help you can provide in this situation.
>
> I found that there's a file called "air_modes_preamble.cc" seems to
> provide the timestamp function. Does anyone know how to use this file
> separately?
>
> Best regards,
> Cheng Chi
>
> ___
> Discuss-gnuradio mailing list
> Discuss-gnuradio@gnu.org
> https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
>
>
___
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
https://lists.gnu.org/mailman/listinfo/discuss-gnuradio