Я пробую проект qt, использующий libdash из этой ссылки .Когда я пытаюсь скомпилировать, он выдает ошибку:
фатальная ошибка: QtMultimedia / qaudioformat.h: нет такого файла или каталога
#include "QtMultimedia/qaudioformat.h"
Этот проект используетcmake.
Я пытался,
1
sudo apt-get install qtmultimedia5-dev
2
#include "QtMultimedia/QAudioformat.h"
Простой #include "QtMultimedia"
также дает мне ошибку.
Когда я дал locate qt, он дал мне несколько строк, которые включают в себя:
/ usr / include / x86_64-linux-gnu /qt5 / QtMultimedia / qaudioformat.h .Таким образом, кажется, что файл, к которому я пытаюсь получить доступ, присутствует в системе, но к нему нет доступа, этот проект использует cmake;
Ниже приведен мой скрипт cmake:
cmake_minimum_required(VERSION 2.8.8)
project(mpd)
set(CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_MODULE_PATH})
set(CMAKE_CXX_FLAGS "-D__STDC_CONSTANT_MACROS -D__STDC_LIMIT_MACROS")
set(CMAKE_INCLUDE_CURRENT_DIR ON)
# Instruct CMake to run moc automatically when needed.
set(CMAKE_AUTOMOC ON)
set(CMAKE_POSITION_INDEPENDENT_CODE ON)
set(CMAKE_CXX_FLAGS "-fPIC")
# Find the required Qt5 libraries
find_package(Qt5Widgets)
find_package(Qt5Core)
find_package(Qt5Gui)
find_package(Qt5Multimedia REQUIRED)
find_package(Qt5MultimediaWidgets REQUIRED)
find_package(Qt5OpenGL)
# Find libavcodec
find_package(LibAV REQUIRED)
find_library( AVCODEC_LIBRARY libavcodec.so )
find_library( AVUTIL_LIBRARY libavutil.so )
find_library( AVFORMAT_LIBRARY libavformat.so )
find_library( AVDEVICE_LIBRARY libavdevice.so )
set(INCLUDE_DIRS "/usr/local/include/")
set(LIBDASH_LIBRARIES "../build/bin/" CACHE PATH "Path to libdash.so")
set(LIBDASH_INCLUDES "../libdash/include/" CACHE PATH "Path to libdash includes")
set(INCLUDE_DIRS "/usr/include/")
set(CMAKE_INSTALL_RPATH_USE_LINK_PATH TRUE)
include_directories(${LIBDASH_INCLUDES})
link_directories(${LIBDASH_LIBRARIES})
file(GLOB qtplayer_SOURCE RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} Decoder/*.cpp libdashframework/MPD/*.cpp libdashframework/Adaptation/*.cpp libdashframework/Buffer/*.cpp libdashframework/Input/*.cpp libdashframework/Portable/*.cpp Managers/*.cpp Renderer/*.cpp UI/*.cpp UI/IDASHPlayerGuiObserver.h main.cpp)
qt5_wrap_ui(qtsampleplayer_FORMS_HEADERS qtsampleplayer.ui)
qt5_add_resources(qtsampleplayer_RESOURCES_RCC qtsampleplayer.qrc)
# Tell CMake to create the helloworld executable
add_executable(qtsampleplayer ${qtplayer_SOURCE} ${qtsampleplayer_FORMS_HEADERS} ${qtsampleplayer_RESOURCES_RCC})
# Use the required module from Qt5.
target_link_libraries(${mpd} qtsampleplayer Qt5::Core Qt5::Widgets Qt5::Multimedia Qt5::MultimediaWidgets Qt5::Gui Qt5::OpenGL)
# For the linker
target_link_libraries(qtsampleplayer dash ${QT_LIBRARIES} ${LIBAV_LIBRARIES} -lpthread)
Любые предложения / предложения будут действительно полезны !! Заранее спасибо.