kit-cel / gr-radar

GNU Radio Radar Toolbox
GNU General Public License v3.0
238 stars 84 forks source link

make error: "qwt_matrix_raster_data.h: No such file" #23

Closed ziyuanjun closed 7 years ago

ziyuanjun commented 7 years ago

when I run cmake ../, everything seems OK:

-- The CXX compiler identification is GNU 5.4.0 -- The C compiler identification is GNU 5.4.0 -- Check for working CXX compiler: /usr/bin/c++ -- Check for working CXX compiler: /usr/bin/c++ -- works -- Detecting CXX compiler ABI info -- Detecting CXX compiler ABI info - done -- Detecting CXX compile features -- Detecting CXX compile features - done -- Check for working C compiler: /usr/bin/cc -- Check for working C compiler: /usr/bin/cc -- works -- Detecting C compiler ABI info -- Detecting C compiler ABI info - done -- Detecting C compile features -- Detecting C compile features - done -- Build type not specified: defaulting to release. -- Boost version: 1.58.0 -- Found the following Boost libraries: -- filesystem -- system -- Found PkgConfig: /usr/bin/pkg-config (found version "0.29.1") -- Checking for module 'cppunit' -- Found cppunit, version 1.13.2 -- Found CPPUNIT: /usr/lib/x86_64-linux-gnu/libcppunit.so;dl
-- Found Doxygen: /usr/bin/doxygen (found version "1.8.11") -- Checking for module 'fftw3f >= 3.0' -- Found fftw3f , version 3.3.4 -- Found FFTW3F: /usr/lib/x86_64-linux-gnu/libfftw3f.so
-- Looking for Q_WS_X11 -- Looking for Q_WS_X11 - found -- Looking for Q_WS_WIN -- Looking for Q_WS_WIN - not found -- Looking for Q_WS_QWS -- Looking for Q_WS_QWS - not found -- Looking for Q_WS_MAC -- Looking for Q_WS_MAC - not found -- Found Qt4: /usr/bin/qmake (found suitable version "4.8.7", minimum required is "4.2.0") -- QWT Version: 5.2.3 -- Found Qwt: /usr/lib/libqwt-qt4.so (Required is at least version "6.0.0") -- Checking for module 'uhd' -- Found uhd, version 3.11.0.git-128-g379f922d -- Found UHD: /usr/local/lib/libuhd.so
Checking for GNU Radio Module: RUNTIME -- Checking for module 'gnuradio-runtime' -- Found gnuradio-runtime, version 3.7.11.1 * INCLUDES=/usr/local/include * LIBS=/usr/local/lib/libgnuradio-runtime.so;/usr/local/lib/libgnuradio-pmt.so -- Found GNURADIO_RUNTIME: /usr/local/lib/libgnuradio-runtime.so;/usr/local/lib/libgnuradio-pmt.so
GNURADIO_RUNTIME_FOUND = TRUE -- -- Checking for module SWIG -- Found SWIG version 3.0.8. -- Found SWIG: /usr/bin/swig3.0
-- Found PythonLibs: /usr/lib/x86_64-linux-gnu/libpython2.7.so (found suitable version "2.7.12", minimum required is "2") -- Found PythonInterp: /usr/bin/python2 (found suitable version "2.7.12", minimum required is "2") -- Looking for sys/types.h -- Looking for sys/types.h - found -- Looking for stdint.h -- Looking for stdint.h - found -- Looking for stddef.h -- Looking for stddef.h - found -- Check size of size_t -- Check size of size_t - done -- Check size of unsigned int -- Check size of unsigned int - done -- Performing Test HAVE_WNO_UNUSED_BUT_SET_VARIABLE -- Performing Test HAVE_WNO_UNUSED_BUT_SET_VARIABLE - Success -- Configuring done -- Generating done -- Build files have been written to: /home/ziyuan/gr-radar/build

Then I run make, errors come out:

[ 1%] Generating moc_spectrogram_plot.cxx [ 3%] Generating moc_scatter_plot.cxx [ 4%] Generating moc_time_plot.cxx Scanning dependencies of target gnuradio-radar [ 6%] Building CXX object lib/CMakeFiles/gnuradio-radar.dir/moc_scatter_plot.cxx.o [ 8%] Building CXX object lib/CMakeFiles/gnuradio-radar.dir/moc_time_plot.cxx.o [ 9%] Building CXX object lib/CMakeFiles/gnuradio-radar.dir/moc_spectrogram_plot.cxx.o In file included from /home/ziyuan/gr-radar/build/lib/moc_spectrogram_plot.cxx:9:0: /home/ziyuan/gr-radar/build/lib/../../lib/spectrogram_plot.h:30:36: fatal error: qwt_matrix_raster_data.h: No such file or directory compilation terminated. lib/CMakeFiles/gnuradio-radar.dir/build.make:125: recipe for target 'lib/CMakeFiles/gnuradio-radar.dir/moc_spectrogram_plot.cxx.o' failed make[2]: [lib/CMakeFiles/gnuradio-radar.dir/moc_spectrogram_plot.cxx.o] Error 1 CMakeFiles/Makefile2:174: recipe for target 'lib/CMakeFiles/gnuradio-radar.dir/all' failed make[1]: [lib/CMakeFiles/gnuradio-radar.dir/all] Error 2 Makefile:138: recipe for target 'all' failed make: *** [all] Error 2

Is there anything my OS missed? I use Ubuntu16.04.

stwunsch commented 7 years ago

This is the typical error for having the wrong qwt version. Tough it's strange because cmake tells you that you have qwt>6.0.0, which should be correct.

stwunsch commented 7 years ago

You could give it a try with libqwt-dev. Probably only the dev version is shipped with the headers? Could make sense. Unfortunately I don't run Ubuntu and can't check by myself easily.

ziyuanjun commented 7 years ago

Strange! After i used the libqwt-dev (sudo apt-get install libqwt-dev), I get error when cmake ../:

-- Build type not specified: defaulting to release. -- Boost version: 1.58.0 -- Found the following Boost libraries: -- filesystem -- system CMake Error at cmake/Modules/FindQwt.cmake:38 (file): file STRINGS file "/usr/include/qwt-qt4/qwt_global.h" cannot be read. Call Stack (most recent call first): CMakeLists.txt:132 (find_package)

CMake Error at cmake/Modules/FindQwt.cmake:42 (string): string sub-command REGEX, mode MATCH needs at least 5 arguments total to command. Call Stack (most recent call first): CMakeLists.txt:132 (find_package)

-- QWT Version: No Version -- QWT Version must be >= 5.2 and <= 6.2.0, Found No Version Checking for GNU Radio Module: RUNTIME * INCLUDES=/usr/local/include * LIBS=/usr/local/lib/libgnuradio-runtime.so;/usr/local/lib/libgnuradio-pmt.so GNURADIO_RUNTIME_FOUND = TRUE -- -- Checking for module SWIG -- Found SWIG version 3.0.8. -- Configuring incomplete, errors occurred! See also "/home/ziyuan/gr-radar/build/CMakeFiles/CMakeOutput.log". See also "/home/ziyuan/gr-radar/build/CMakeFiles/CMakeError.log".

MountainLogic commented 6 years ago

For what its worth, I'm having a similar issue of "qwt_matrix_raster_data.h: No such file or directory" with a OS X install. GR in general seems to have a some conflicts with requiring different versions of Qt and associated libs such as QWT. I have to keep thrashing port and brew installs (different OS X package managers) of different Qt version to build anything in GR. Once I get GR to build the Pothos build breaks, GRC builds and I can't build gr-radar, etc.

@ziyuanjun , as far as I can tell "qwt_matrix_raster_data.h" is in version: qwt/6.1.3_4/lib/qwt.framework/Versions/6/Headers/qwt_matrix_raster_data.h and not in QWT5.2 as your libqwt-dev listing suggests. From the CMake.txt file I'm seeing:

find_package(**Qt4 4.2.0 COMPONENTS QtCore QtGu**i)
find_package(**Qwt 6.0.0**)
find_package(UHD)

# Search for GNU Radio and its components and versions. Add any
# components required to the list of GR_REQUIRED_COMPONENTS (in all
# caps such as FILTER or FFT) and change the version to the minimum
# API compatible version required.
set(GR_REQUIRED_COMPONENTS RUNTIME)
find_package(Gnuradio "3.7.2" REQUIRED)
list(INSERT CMAKE_MODULE_PATH 0 ${CMAKE_SOURCE_DIR}/cmake/Modules)

if(NOT CPPUNIT_FOUND)
    message(FATAL_ERROR "CppUnit required to compile blub")
endif()

# populate the environment with QT variables
include(**GrSetupQt4**)

So I guess that is telling me I need to continue to fight with my qt/qwt versioning to get things pointed to the correct version.