EttusResearch / gr-doa

Direction-of-Arrival (DoA) Demo for GNU Radio (OOT) with the USRP™ X-Series and TwinRX™
GNU General Public License v3.0
102 stars 52 forks source link

Could not find a configuration file for package "Gnuradio" that is compatible with requested version "3.7.2". #7

Open cruisebzk opened 4 years ago

cruisebzk commented 4 years ago

Issue Description

When i install the gr-doa in ubuntu 18.04 in which the gnuradio 3.8.0 has been installed, an error occured during the cmake process. It seems to be the version incompatibility. I want to know whether i have to reload the OS ubuntu 16.04 and gnuradio 3.7.2? Maybe there is a more smart solution.

Setup Details

cd gr-doa mkdir build cd build cmake .. -- Build type not specified: defaulting to release. -- Boost version: 1.65.1 -- Found the following Boost libraries: -- filesystem -- system -- Armadillo found -- Checking for module 'cppunit' -- Found cppunit, version 1.14.0 -- Found CPPUNIT: /usr/lib/x86_64-linux-gnu/libcppunit.so;dl
CMake Error at CMakeLists.txt:121 (find_package): Could not find a configuration file for package "Gnuradio" that is compatible with requested version "3.7.2".

The following configuration files were considered but not accepted:

/usr/local/lib/cmake/gnuradio/GnuradioConfig.cmake, version: 3.8.0.0

-- Configuring incomplete, errors occurred!

Expected Behavior

Actual Behaviour

Steps to reproduce the problem

Additional Information

natetemple commented 4 years ago

gr-doa has not yet been ported to GNU Radio 3.8. It is recommend to use the maint-3.7 branch at this time with it.

cruisebzk commented 4 years ago

thanks except thanks:)

At 2019-11-06 10:48:45, "natetemple" notifications@github.com wrote:

gr-doa has not yet been ported to GNU Radio 3.8. It is recommend to use the maint-3.7 branch at this time with it.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub, or unsubscribe.

cruisebzk commented 4 years ago

I cloned the gnuradio from github as follows. git clone git@github.com:EttusResearch/gnuradio.git cd gnuradio/ git branch

It's clear that only a master branch is provided. How can i checkout the maint 3.7 branch?

Thanks a lot.

At 2019-11-06 10:48:45, "natetemple" notifications@github.com wrote:

gr-doa has not yet been ported to GNU Radio 3.8. It is recommend to use the maint-3.7 branch at this time with it.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub, or unsubscribe.

cruisebzk commented 4 years ago

I cloned the gnuradio from github as follows. git clone git@github.com:EttusResearch/gnuradio.git cd gnuradio/ git branch -a git branch -a * master remotes/origin/HEAD -> origin/master remotes/origin/maint remotes/origin/master remotes/origin/next remotes/origin/rfnoc-devel git checkout -b remotes/origin/maint git branch master

It's clear that only a master branch is provided. How can i checkout the maint 3.7 branch? Is this the maint 3.7 branch? Thanks a lot.

At 2019-11-06 10:48:45, "natetemple" notifications@github.com wrote:

gr-doa has not yet been ported to GNU Radio 3.8. It is recommend to use the maint-3.7 branch at this time with it.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub, or unsubscribe.

natetemple commented 4 years ago

See this application note:

https://kb.ettus.com/Building_and_Installing_the_USRP_Open-Source_Toolchain_(UHD_and_GNU_Radio)_on_Linux#Building_and_installing_GNU_Radio_from_source_code

cruisebzk commented 4 years ago

you are very nice, thank you !!!

在 2019-11-07 11:02:54,"natetemple" notifications@github.com 写道:

See this application note:

https://kb.ettus.com/Building_and_Installing_the_USRP_Open-Source_Toolchain_(UHD_and_GNU_Radio)_on_Linux#Building_and_installing_GNU_Radio_from_source_code

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub, or unsubscribe.

cruisebzk commented 4 years ago

Hello: I installed gnuradio maint-3.7 branch and it runs, also the cmake process in installing gr-doa is passed. but when i run the make process, there is still an error and can't pass the make test. make ...... [100%] Generating documentation with doxygen warning: Tag XML_SCHEMA' at line 1511 of file/home/cruise/mygnuradio/gr-doa/build/docs/doxygen/Doxyfile' has become obsolete. To avoid this warning please remove this line from your configuration file or upgrade it using "doxygen -u" warning: Tag XML_DTD' at line 1517 of file/home/cruise/mygnuradio/gr-doa/build/docs/doxygen/Doxyfile' has become obsolete. To avoid this warning please remove this line from your configuration file or upgrade it using "doxygen -u" sh: 1: latex: not found error: Problems running latex. Check your installation or look for typos in _formulas.tex and check _formulas.log! sh: 1: dvips: not found error: Problems running dvips. Check your installation! [100%] Built target doxygen_target

make test ...... 0% tests passed, 5 tests failed out of 5

Total Test time (real) = 1.08 sec

The following tests FAILED: 1 - qa_autocorrelate (Failed) 2 - qa_MUSIC_lin_array (Failed) 3 - qa_rootMUSIC_linear_array (Failed) 4 - qa_find_local_max (Failed) 5 - qa_calibrate_lin_array (Failed) Errors while running CTest Makefile:85: recipe for target 'test' failed make: *** [test] Error 8

在 2019-11-07 11:02:54,"natetemple" notifications@github.com 写道:

See this application note:

https://kb.ettus.com/Building_and_Installing_the_USRP_Open-Source_Toolchain_(UHD_and_GNU_Radio)_on_Linux#Building_and_installing_GNU_Radio_from_source_code

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub, or unsubscribe.

tfcollins commented 4 years ago

Have you installed all the dependencies for the tests? Check the README.

-Travis

cruisebzk commented 4 years ago

@tfcollins I have installed all the dependencies required in README. 2 tests passed, 3 tests still failed. As follows: make test Running tests... Test project /home/cruise/mygnuradio/gr-doa/build Start 1: qa_autocorrelate 1/5 Test #1: qa_autocorrelate .................Failed 0.01 sec Start 2: qa_MUSIC_lin_array 2/5 Test #2: qa_MUSIC_lin_array ............... Passed 18.33 sec Start 3: qa_rootMUSIC_linear_array 3/5 Test #3: qa_rootMUSIC_linear_array ........ Passed 7.83 sec Start 4: qa_find_local_max 4/5 Test #4: qa_find_local_max ................Failed 2.20 sec Start 5: qa_calibrate_lin_array 5/5 Test #5: qa_calibrate_lin_array ...........***Failed 27.99 sec

40% tests passed, 3 tests failed out of 5

Total Test time (real) = 56.36 sec

The following tests FAILED: 1 - qa_autocorrelate (Failed) 4 - qa_find_local_max (Failed) 5 - qa_calibrate_lin_array (Failed)

what can i do?

tfcollins commented 4 years ago

Try using ctest verbose to show what the actual errors are.

-Travis

michaelld commented 4 years ago

Meaning, for example: ctest -V -R qa_calibrate_lin_array ... repeat for different test & hopefully the more verbose info will be useful.

cruisebzk commented 4 years ago

@michaelld @tfcollins Hello: I have made a test according to your message. The results are as follows: ctest -V -R qa_calibrate_lin_array ........ 5: After antenna calibration, the array coefficients are: 5: 1.2589 + 0.0000i 5: 1.2589 - 0.0000i 5: 1.2589 - 0.0000i 5: 1.2589 + 0.0000i 5: ....... 5: 5: E 5: ====================================================================== 5: ERROR: test_001_t (main.qa_calibrate_lin_array) 5: ---------------------------------------------------------------------- 5: Traceback (most recent call last): 5: File "/home/cruise/mygnuradio/gr-doa/python/qa_calibrate_lin_array.py", line 59, in test_001_t 5: S_x, S_x_uncalibrated, ant_pert_vec = oc.doa_testbench_create('music_test_input_gen', len_ss, overlap_size, num_ant_ele, FB, 'linear', num_ant_ele, norm_spacing, PERTURB, pilot_doa) 5: ValueError: too many values to unpack 5: 5: ====================================================================== 5: ERROR: test_002_t (main.qa_calibrate_lin_array) 5: ---------------------------------------------------------------------- 5: Traceback (most recent call last): 5: File "/home/cruise/mygnuradio/gr-doa/python/qa_calibrate_lin_array.py", line 114, in test_002_t 5: S_x, S_x_uncalibrated, ant_pert_vec = oc.doa_testbench_create('music_test_input_gen', len_ss, overlap_size, num_ant_ele, FB, 'linear', num_ant_ele, norm_spacing, PERTURB, pilot_doa) 5: ValueError: too many values to unpack 5: 5: ====================================================================== 5: ERROR: test_003_t (main.qa_calibrate_lin_array) 5: ---------------------------------------------------------------------- 5: Traceback (most recent call last): 5: File "/home/cruise/mygnuradio/gr-doa/python/qa_calibrate_lin_array.py", line 169, in test_003_t 5: _S_x, S_x_uncalibrated, ant_pert_vec = oc.doa_testbench_create('music_test_input_gen', len_ss, overlap_size, num_ant_ele, FB, 'linear', num_ant_ele, norm_spacing, PERTURB, pilotdoa) 5: ValueError: too many values to unpack 5: 5: ----------------------------------------------------------------------

Conclusion: Also, I made other tests using 'ctest' respectively on the qa_autocorrelate, qa_find_local_max . The errors also occur at the location of 'oc.doa_testbench_create()' function, the left value of the statement have multiple variables. And i view the code of the qa_MUSIC_lin_array and qa_rootMUSIC_linear_array which have passed the test, the left value of the oc.doa_testbench_create() statement has only one variable. Maybe this is the problem. but i don't know how to solve it. what can i do?

thanks

tfcollins commented 4 years ago

Try downgrading oct2py to the tested version (pip install oct2py==3.5.9). It looks like oct2py has changed a lot since this code was written and may not accept a variable number of inputs to certain functions.

-Travis

tfcollins commented 4 years ago

I would direct this last question to the main gnuradio community (mailing list or slack). This is more of a general question that doesn't apply to gr-doa. They will provide a more robust answer.

-Travis

michaelld commented 4 years ago

Agreed: the multi-GR install is best for the GR list, not here.

michaelld commented 4 years ago

@cruisebzk what do you do to fix "make test" to work? If it's a change to gr-doa, we'd love to know so that we can fix the code! But we'd love to know either way ... :)

cruisebzk commented 4 years ago

@michaelld It is the version problem of oct2py i installed, not the code bug. As @tfcollins mentioned before, I installed the oct2py by using "pip install oct2py", not specify the version as "pip install oct2py==3.5.9". The latest version of oct2py maybe have some changes that is incompatible with gr-doa. thank you very much

michaelld commented 4 years ago

@cruisebzk OK thanks for that info. I'll check out the differences between oct2py & see how difficult it will be to fix this issue to work with both versions.