sdrangel
sdrangel copied to clipboard
Build fails with `datvideorender.cpp:282:46: error: ‘AVCodecContext’ {aka ‘struct AVCodecContext’} has no member named ‘channels’`; and warning `AutoUic: /var/cache/makepkg/build/sdrangel-git/src/sdrangel/plugins/channelrx/demodft8/ft8demodgui.ui: Warning: The name 'verticalLayout_2' (QVBoxLayout) is already in use, defaulting to 'verticalLayout_21'`.
I build the latest state from this git repository according to this recipe on Artix GNU/Linux, GCC version: 14.1.1.
Build fails for me with datvideorender.cpp:282:46: error: ‘AVCodecContext’ {aka ‘struct AVCodecContext’} has no member named ‘channels’
:
[...]
[ 40%] Automatic MOC and UIC for target demoddatv
[ 40%] Built target demoddatv_autogen
[ 40%] Building CXX object plugins/channelrx/demoddatv/CMakeFiles/demoddatv.dir/demoddatv_autogen/mocs_compilation.cpp.o
[ 40%] Building CXX object plugins/channelrx/demoddatv/CMakeFiles/demoddatv.dir/datvdemod.cpp.o
[ 40%] Building CXX object plugins/channelrx/demoddatv/CMakeFiles/demoddatv.dir/datvdemodgui.cpp.o
[ 40%] Building CXX object plugins/channelrx/demoddatv/CMakeFiles/demoddatv.dir/datvdemodplugin.cpp.o
[ 40%] Building CXX object plugins/channelrx/demoddatv/CMakeFiles/demoddatv.dir/datvdemodsettings.cpp.o
[ 40%] Building CXX object plugins/channelrx/demoddatv/CMakeFiles/demoddatv.dir/datvdemodwebapiadapter.cpp.o
[ 40%] Building CXX object plugins/channelrx/demoddatv/CMakeFiles/demoddatv.dir/datvideostream.cpp.o
[ 40%] Building CXX object plugins/channelrx/demoddatv/CMakeFiles/demoddatv.dir/datvudpstream.cpp.o
[ 40%] Building CXX object plugins/channelrx/demoddatv/CMakeFiles/demoddatv.dir/datvideorender.cpp.o
/var/cache/makepkg/build/sdrangel-git/src/sdrangel/plugins/channelrx/demoddatv/datvideorender.cpp: In member function ‘bool DATVideoRender::preprocessStream()’:
/var/cache/makepkg/build/sdrangel-git/src/sdrangel/plugins/channelrx/demoddatv/datvideorender.cpp:282:46: error: ‘AVCodecContext’ {aka ‘struct AVCodecContext’} has no member named ‘channels’
282 | m_metaData.Channels = m_videoDecoderCtx->channels;
| ^~~~~~~~
/var/cache/makepkg/build/sdrangel-git/src/sdrangel/plugins/channelrx/demoddatv/datvideorender.cpp:308:48: error: ‘AVCodecContext’ {aka ‘struct AVCodecContext’} has no member named ‘channels’
308 | << " channels: " << m_audioDecoderCtx->channels
| ^~~~~~~~
/var/cache/makepkg/build/sdrangel-git/src/sdrangel/plugins/channelrx/demoddatv/datvideorender.cpp:309:54: error: ‘AVCodecContext’ {aka ‘struct AVCodecContext’} has no member named ‘channel_layout’; did you mean ‘ch_layout’?
309 | << " channel_layout: " << m_audioDecoderCtx->channel_layout
| ^~~~~~~~~~~~~~
| ch_layout
/var/cache/makepkg/build/sdrangel-git/src/sdrangel/plugins/channelrx/demoddatv/datvideorender.cpp: In member function ‘void DATVideoRender::setResampler()’:
/var/cache/makepkg/build/sdrangel-git/src/sdrangel/plugins/channelrx/demoddatv/datvideorender.cpp:628:72: error: ‘AVCodecContext’ {aka ‘struct AVCodecContext’} has no member named ‘channels’
628 | av_opt_set_int(m_audioSWR, "in_channel_count", m_audioDecoderCtx->channels, 0);
| ^~~~~~~~
/var/cache/makepkg/build/sdrangel-git/src/sdrangel/plugins/channelrx/demoddatv/datvideorender.cpp:630:73: error: ‘AVCodecContext’ {aka ‘struct AVCodecContext’} has no member named ‘channel_layout’; did you mean ‘ch_layout’?
630 | av_opt_set_int(m_audioSWR, "in_channel_layout", m_audioDecoderCtx->channel_layout, 0);
| ^~~~~~~~~~~~~~
| ch_layout
/var/cache/makepkg/build/sdrangel-git/src/sdrangel/plugins/channelrx/demoddatv/datvideorender.cpp:640:57: error: ‘AVCodecContext’ {aka ‘struct AVCodecContext’} has no member named ‘channels’
640 | << " in_channel_count: " << m_audioDecoderCtx->channels
| ^~~~~~~~
/var/cache/makepkg/build/sdrangel-git/src/sdrangel/plugins/channelrx/demoddatv/datvideorender.cpp:642:58: error: ‘AVCodecContext’ {aka ‘struct AVCodecContext’} has no member named ‘channel_layout’; did you mean ‘ch_layout’?
642 | << " in_channel_layout: " << m_audioDecoderCtx->channel_layout
| ^~~~~~~~~~~~~~
| ch_layout
At global scope:
cc1plus: note: unrecognized command-line option ‘-Wno-inconsistent-missing-override’ may have been intended to silence earlier diagnostics
make[2]: *** [plugins/channelrx/demoddatv/CMakeFiles/demoddatv.dir/build.make:195: plugins/channelrx/demoddatv/CMakeFiles/demoddatv.dir/datvideorender.cpp.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:11471: plugins/channelrx/demoddatv/CMakeFiles/demoddatv.dir/all] Error 2
make: *** [Makefile:156: all] Error 2
make: Leaving directory '/var/cache/makepkg/build/sdrangel-git/src/build'
The $CXXFLAGS
in use are
-march=native -mtune=native -O3 -pipe -fno-plt -fexceptions -Wp,-D_FORTIFY_SOURCE=2 -fstack-clash-protection -fcf-protection -w -Wp,-D_GLIBCXX_ASSERTIONS -fpermissive
.
Output of the cmake
call (cmake
command line arguments: -Wno-dev -DARCH_OPT="" -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr -DLIBDSDCC_INCLUDE_DIR=/usr/include/dsdcc -DCM256CC_INCLUDE_DIR=/usr/include/cm256cc
):
-- The C compiler identification is GNU 14.1.1
-- The CXX compiler identification is GNU 14.1.1
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /usr/bin/cc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Found Git: /usr/bin/git (found version "2.45.2")
-- Using ccache /usr/bin/ccache
-- SDRangel Version: 7.21.4-7-g7c9c6ea44
-- Build type set to: Release
-- Compiling for 24 bit Rx DSP chain
-- Looking for __x86_64__
-- Looking for __x86_64__ - found
-- Target architecture: x86_64-
-- Performing Test FLAG_SUPPORTED
-- Performing Test FLAG_SUPPORTED - Success
-- Looking for __ARM_NEON
-- Looking for __ARM_NEON - not found
-- Looking for __AVX512F__
-- Looking for __AVX512F__ - found
-- Looking for __AVX2__ - forced found
-- Looking for __AVX__ - forced found
-- Looking for __SSE4_2__ - forced found
-- Looking for __SSE4_1__ - forced found
-- Looking for __SSSE3__ - forced found
-- Looking for __SSE3__ - forced found
-- Looking for __SSE2__ - forced found
-- Interprocedural optimization enabled
-- Found OpenGL: /usr/lib/libOpenGL.so
-- Found PkgConfig: /usr/bin/pkg-config (found version "2.1.1")
-- Found Boost: /usr/lib/cmake/Boost-1.83.0/BoostConfig.cmake (found version "1.83.0")
-- Checking for module 'fftw3f >= 3.0'
-- Found fftw3f, version 3.3.10
-- Found FFTW3F: /lib/libfftw3f.so
-- Found FFTW3F: /usr/include, /lib/libfftw3f.so, /lib/libfftw3f_threads.so
-- Checking for module 'libusb-1.0'
-- Found libusb-1.0, version 1.0.27
-- Found libusb-1.0: /usr/include/libusb-1.0, /usr/lib/libusb-1.0.so
-- Found OpenCV: /usr (found version "4.10.0") found components: core highgui imgproc imgcodecs videoio
-- Checking for module 'libsigmf'
-- Package 'libsigmf', required by 'virtual:world', not found
-- libsigmf not found.
-- Found ZLIB: /usr/lib/libz.so (found version "1.3.1")
-- Checking for module 'faad2'
-- Found faad2, version 2.11.1
-- FAAD LIBRARY /lib/libfaad.so
-- FAAD INCLUDE DIRS /usr/include
-- Found FAAD: /lib/libfaad.so
-- Checking for module 'codec2'
-- Found codec2, version 1.2.0
-- Found Codec2: /usr/include, /lib/libcodec2.so
-- Found CODEC2: /lib/libcodec2.so
-- Checking for module 'libcm256cc'
-- Found libcm256cc, version 1.1.0
-- Found CM256cc: /usr/include/cm256cc, /lib/libcm256cc.so
-- Found CM256CC: /lib/libcm256cc.so
-- Found LibMbe: /usr/include,
-- Found libserialdv: /usr/include/serialdv, /lib/libserialdv.so
-- Checking for module 'libdsdcc'
-- Found libdsdcc, version 1.9.0
-- Found libdsdcc: /usr/include/dsdcc, /lib/libdsdcc.so
-- Checking for module 'sgp4'
-- Package 'sgp4', required by 'virtual:world', not found
-- SGP4 LIBRARIES /lib/libsgp4s.so
-- SGP4 INCLUDE DIRS /usr/include/libsgp4
-- Found SGP4: /lib/libsgp4s.so
-- Checking for module 'apt'
-- Package 'apt', required by 'virtual:world', not found
-- APT LIBRARIES /lib/libapt.so
-- APT INCLUDE DIRS /usr/include/apt
-- Found APT: /lib/libapt.so
-- Checking for module 'libdab'
-- Package 'libdab', required by 'virtual:world', not found
-- Found libdab: /usr/include/dab_lib, /lib/libdab_lib.so
-- Found HIDAPI: /usr/include/hidapi found components: any
-- Checking for module 'libavcodec'
-- Found libavcodec, version 61.3.100
-- Checking for module 'libavformat'
-- Found libavformat, version 61.1.100
-- Checking for module 'libavdevice'
-- Found libavdevice, version 61.1.100
-- Checking for module 'libavutil'
-- Found libavutil, version 59.8.100
-- Checking for module 'libavfilter'
-- Found libavfilter, version 10.1.100
-- Checking for module 'libswscale'
-- Found libswscale, version 8.1.100
-- Checking for module 'libpostproc'
-- Found libpostproc, version 58.1.100
-- Checking for module 'libswresample'
-- Found libswresample, version 5.1.100
-- Found FFmpeg: /usr/lib/libavcodec.so;/usr/lib/libavformat.so;/usr/lib/libavutil.so;/usr/lib/libswscale.so
-- Checking for module 'libggmorse'
-- Package 'libggmorse', required by 'virtual:world', not found
-- GGMorse not found
-- Could NOT find GGMORSE (missing: GGMORSE_LIBRARIES GGMORSE_INCLUDE_DIR)
-- Checking for module 'libairspy'
-- Found libairspy, version 1.0
-- Found libairspy: /usr/include, /lib/libairspy.so
-- Checking for module 'libairspyhf'
-- Found libairspyhf, version 1.8
-- Found libairspyhf: /usr/include, /lib/libairspyhf.so
-- Checking for module 'libbladeRF>=2.0'
-- Found libbladeRF, version 2.5.0-git
-- Found libbladerf: /usr/include, /lib/libbladeRF.so
-- Checking for module 'libhackrf'
-- Found libhackrf, version 0.9
-- Found libhackrf: /usr/include, /lib/libhackrf.so
-- Found Lime Suite: /usr/include, /lib/libLimeSuite.so
-- Checking for module 'libiio>=0.7'
-- Found libiio, version 0.25
-- Found libiio: /usr/include, /lib/libiio.so
-- Checking for module 'libmirisdr'
-- Found libmirisdr, version fd04
-- Found libmirisdr: /usr/include, /lib/libmirisdr.so
-- Checking for module 'libperseus'
-- Package 'libperseus', required by 'virtual:world', not found
-- Found libperseus: /usr/include, /lib/libperseus-sdr.so
-- Checking for module 'librtlsdr'
-- Found librtlsdr, version 2.0.1
-- Found librtlsdr: /usr/include, /lib/librtlsdr.so
-- Checking for one of the modules 'SoapySDR>=0.4.0'
-- Found SoapySDR: version 0.8.1, /usr/lib, /usr/include, /usr/lib/libSoapySDR.so
-- Checking for module 'uhd'
-- Found uhd, version 4.6.0.0-0-unknown
-- UHD LIBRARIES /lib/libuhd.so
-- UHD INCLUDE DIRS /usr/include
-- Found UHD: /lib/libuhd.so
-- SDRPLAY LIBRARIES /usr/lib/libsdrplay_api.so
-- SDRPLAY INCLUDE DIRS /usr/include
-- Found SDRPLAY: /usr/lib/libsdrplay_api.so
-- Checking for module 'libxtrx'
-- Found libxtrx, version
-- Found libxtrx: /usr/include, /lib/libxtrx.so
-- Found Opus: /usr/include
CUDA_TOOLKIT_ROOT_DIR not found or specified
-- Could NOT find CUDA (missing: CUDA_TOOLKIT_ROOT_DIR CUDA_NVCC_EXECUTABLE CUDA_INCLUDE_DIRS CUDA_CUDART_LIBRARY) (Required is at least version "9.0")
-- Not building sigmffilesink (ENABLE_CHANNELRX_SIGMFFILESINK=ON LIBSIGMF_FOUND=FALSE)
-- Include demoddatv
-- Not building morsedecoder (ENABLE_FEATURE_MORSEDECODER=ON GGMODSE_FOUND=FALSE)
-- Checking for module 'hamlib'
-- Found hamlib, version 4.5.5
-- Found Hamlib: /usr/include, /lib/libhamlib.so
-- Found HAMLIB: /lib/libhamlib.so
-- Not building sigmffileinput (LIBSIGMF_FOUND=FALSE)
-- Not building sigmffilesink (ENABLE_CHANNELRX_SIGMFFILESINK=ON LIBSIGMF_FOUND=FALSE)
-- Not building jogdialcontroller (ENABLE_FEATURE_JOGDIALCONTROLLER=ON SERVER_MODE=ON)
-- Not building morsedecoder (ENABLE_FEATURE_MORSEDECODER=ON GGMODSE_FOUND=FALSE)
-- Not building sigmffileinput (LIBSIGMF_FOUND=FALSE)
-- Found Doxygen: /usr/bin/doxygen (found version "1.11.0") found components: doxygen dot
-- added optional 'make dev_docs' for developer documentation generation
-- Found Dot: /usr/bin/dot
-- Check for case-sensitive file systems
-- File system is case-sensitive
-- Asking qmake for QT_PLUGINS_DIR and got /usr/lib/qt/plugins
-- Asking qmake for QT_IMPORTS_DIR and got /usr/lib/qt/imports
-- Asking qmake for QT_QML_DIR and got /usr/lib/qt/qml
-- Asking qmake for QT_LIBS_DIR and got /usr/lib
-- CPack generators:
-- Configuring done (2.6s)
-- Generating done (0.9s)
-- Build files have been written to: /var/cache/makepkg/build/sdrangel-git/src/build
Also note that I get the following warning during the build process:
[...]
[ 38%] Built target demodft8_autogen_timestamp_deps
[ 38%] Automatic MOC and UIC for target demodft8
AutoUic: /var/cache/makepkg/build/sdrangel-git/src/sdrangel/plugins/channelrx/demodft8/ft8demodgui.ui: Warning: The name 'verticalLayout_2' (QVBoxLayout) is already in use, defaulting to 'verticalLayout_21'.
[...]
Regards!