On Mon, 24 Oct 2022 11:14:46 -0000
"Martin Gansser" <[email protected]> wrote:
> Hi,
> when compiling QMPlay2-22.10.23 [1] on f35 and f36 i get this error message:
>
> [38/321] /usr/bin/g++ -DDBUS_SUSPEND -DNOTIFIES_FREEDESKTOP
> -DQMPLAY2SHAREDLIB_LIBRARY -DQMPLAY2_LIBASS -DQT_CORE_LIB -DQT_DBUS_LIB
> -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_QML_LIB -DQT_SVG_LIB
> -DQT_USE_FAST_OPERATOR_PLUS -DQT_WIDGETS_LIB -DUSE_OPENGL -DUSE_QML
> -DUSE_YOUTUBEDL -D__STDC_CONSTANT_MACROS -D__STDC_LIMIT_MACROS
> -Dlibqmplay2_EXPORTS
> -I/home/martin/rpmbuild/BUILD/QMPlay2-22.10.23/redhat-linux-build/src/qmplay2
> -I/home/martin/rpmbuild/BUILD/QMPlay2-22.10.23/src/qmplay2
> -I/home/martin/rpmbuild/BUILD/QMPlay2-22.10.23/redhat-linux-build/src/qmplay2/libqmplay2_autogen/include
> -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz
> -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include
> -I/usr/include/sysprof-4 -I/usr/include/libxml2 -I/usr/include/fribidi
> -I/usr/include/ffmpeg -isystem /usr/include/qt5 -isystem
> /usr/include/qt5/QtCore -isystem /usr/lib64/qt5/mkspecs/linux-g++ -isystem
> /usr/include/qt5/QtGui -isystem /usr/include/qt5/QtWidgets -isystem /usr/inc
lude/qt5/Q
> tSvg -isystem /usr/include/qt5/QtDBus -isystem /usr/include/qt5/QtQml
> -isystem /usr/include/qt5/QtNetwork -Wall -O2 -flto=auto -ffat-lto-objects
> -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security
> -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS
> -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong
> -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic
> -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -g
> -fPIC -fPIC -std=gnu++14 -MD -MT
> src/qmplay2/CMakeFiles/libqmplay2.dir/QMPlay2OSD.cpp.o -MF
> src/qmplay2/CMakeFiles/libqmplay2.dir/QMPlay2OSD.cpp.o.d -o
> src/qmplay2/CMakeFiles/libqmplay2.dir/QMPlay2OSD.cpp.o -c
> /home/martin/rpmbuild/BUILD/QMPlay2-22.10.23/src/qmplay2/QMPlay2OSD.cpp
> FAILED: src/qmplay2/CMakeFiles/libqmplay2.dir/QMPlay2OSD.cpp.o
> /usr/bin/g++ -DDBUS_SUSPEND -DNOTIFIES_FREEDESKTOP -DQMPLAY2SHAREDLIB_LIBRARY
> -DQMPLAY2_LIBASS -DQT_CORE_LIB -DQT_DBUS_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB
> -DQT_QML_LIB -DQT_SVG_LIB -DQT_USE_FAST_OPERATOR_PLUS -DQT_WIDGETS_LIB
> -DUSE_OPENGL -DUSE_QML -DUSE_YOUTUBEDL -D__STDC_CONSTANT_MACROS
> -D__STDC_LIMIT_MACROS -Dlibqmplay2_EXPORTS
> -I/home/martin/rpmbuild/BUILD/QMPlay2-22.10.23/redhat-linux-build/src/qmplay2
> -I/home/martin/rpmbuild/BUILD/QMPlay2-22.10.23/src/qmplay2
> -I/home/martin/rpmbuild/BUILD/QMPlay2-22.10.23/redhat-linux-build/src/qmplay2/libqmplay2_autogen/include
> -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz
> -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include
> -I/usr/include/sysprof-4 -I/usr/include/libxml2 -I/usr/include/fribidi
> -I/usr/include/ffmpeg -isystem /usr/include/qt5 -isystem
> /usr/include/qt5/QtCore -isystem /usr/lib64/qt5/mkspecs/linux-g++ -isystem
> /usr/include/qt5/QtGui -isystem /usr/include/qt5/QtWidgets -isystem
> /usr/include/qt5/
QtSvg -isy
> stem /usr/include/qt5/QtDBus -isystem /usr/include/qt5/QtQml -isystem
> /usr/include/qt5/QtNetwork -Wall -O2 -flto=auto -ffat-lto-objects
> -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security
> -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS
> -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong
> -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic
> -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -g
> -fPIC -fPIC -std=gnu++14 -MD -MT
> src/qmplay2/CMakeFiles/libqmplay2.dir/QMPlay2OSD.cpp.o -MF
> src/qmplay2/CMakeFiles/libqmplay2.dir/QMPlay2OSD.cpp.o.d -o
> src/qmplay2/CMakeFiles/libqmplay2.dir/QMPlay2OSD.cpp.o -c
> /home/martin/rpmbuild/BUILD/QMPlay2-22.10.23/src/qmplay2/QMPlay2OSD.cpp
> In file included from
> /home/martin/rpmbuild/BUILD/QMPlay2-22.10.23/src/qmplay2/QMPlay2OSD.cpp:19:
> /home/martin/rpmbuild/BUILD/QMPlay2-22.10.23/src/qmplay2/QMPlay2OSD.hpp:74:53:
> error: 'std::shared_ptr' has not been declared
> 74 | static std::unique_lock<std::mutex>
> ensure(std::shared_ptr<QMPlay2OSD> &osd);
> | ^~~~~~~~~~
> /home/martin/rpmbuild/BUILD/QMPlay2-22.10.23/src/qmplay2/QMPlay2OSD.hpp:74:63:
> error: expected ',' or '...' before '<' token
> 74 | static std::unique_lock<std::mutex>
> ensure(std::shared_ptr<QMPlay2OSD> &osd);
> | ^
> /home/martin/rpmbuild/BUILD/QMPlay2-22.10.23/src/qmplay2/QMPlay2OSD.hpp:174:37:
> error: 'shared_ptr' is not a member of 'std'
> 174 | using QMPlay2OSDList = QVector<std::shared_ptr<const QMPlay2OSD>>;
> | ^~~~~~~~~~
> /home/martin/rpmbuild/BUILD/QMPlay2-22.10.23/src/qmplay2/QMPlay2OSD.hpp:30:1:
> note: 'std::shared_ptr' is defined in header '<memory>'; did you forget to
> '#include <memory>'?
> 29 | #include <mutex>
> +++ |+#include <memory>
> 30 |
> /home/martin/rpmbuild/BUILD/QMPlay2-22.10.23/src/qmplay2/QMPlay2OSD.hpp:174:37:
> error: 'shared_ptr' is not a member of 'std'
> 174 | using QMPlay2OSDList = QVector<std::shared_ptr<const QMPlay2OSD>>;
> | ^~~~~~~~~~
> /home/martin/rpmbuild/BUILD/QMPlay2-22.10.23/src/qmplay2/QMPlay2OSD.hpp:174:37:
> note: 'std::shared_ptr' is defined in header '<memory>'; did you forget to
> '#include <memory>'?
> /home/martin/rpmbuild/BUILD/QMPlay2-22.10.23/src/qmplay2/QMPlay2OSD.hpp:174:64:
> error: template argument 1 is invalid
> 174 | using QMPlay2OSDList = QVector<std::shared_ptr<const QMPlay2OSD>>;
> | ^~
> /home/martin/rpmbuild/BUILD/QMPlay2-22.10.23/src/qmplay2/QMPlay2OSD.cpp:31:20:
> error: 'std::unique_lock<std::mutex> QMPlay2OSD::ensure' is not a static
> data member of 'class QMPlay2OSD'
> 31 | unique_lock<mutex> QMPlay2OSD::ensure(shared_ptr<QMPlay2OSD> &osd)
> | ^~~~~~~~~~
> /home/martin/rpmbuild/BUILD/QMPlay2-22.10.23/src/qmplay2/QMPlay2OSD.cpp:31:39:
> error: 'shared_ptr' was not declared in this scope
> 31 | unique_lock<mutex> QMPlay2OSD::ensure(shared_ptr<QMPlay2OSD> &osd)
> | ^~~~~~~~~~
> /home/martin/rpmbuild/BUILD/QMPlay2-22.10.23/src/qmplay2/QMPlay2OSD.cpp:20:1:
> note: 'std::shared_ptr' is defined in header '<memory>'; did you forget to
> '#include <memory>'?
> 19 | #include <QMPlay2OSD.hpp>
> +++ |+#include <memory>
> 20 |
> /home/martin/rpmbuild/BUILD/QMPlay2-22.10.23/src/qmplay2/QMPlay2OSD.cpp:31:60:
> error: expected primary-expression before '>' token
> 31 | unique_lock<mutex> QMPlay2OSD::ensure(shared_ptr<QMPlay2OSD> &osd)
> | ^
> /home/martin/rpmbuild/BUILD/QMPlay2-22.10.23/src/qmplay2/QMPlay2OSD.cpp:31:63:
> error: 'osd' was not declared in this scope
> 31 | unique_lock<mutex> QMPlay2OSD::ensure(shared_ptr<QMPlay2OSD> &osd)
> | ^~~
> /home/martin/rpmbuild/BUILD/QMPlay2-22.10.23/src/qmplay2/QMPlay2OSD.cpp:32:1:
> error: expected ',' or ';' before '{' token
>
> [1] https://martinkg.fedorapeople.org/ErrorReports/qmplay2.spec
>
> How can I solve this ?
do what the compiler suggests, add "#include <memory>" into
src/qmplay2/QMPlay2OSD .hpp
Dan
_______________________________________________
devel mailing list -- [email protected]
To unsubscribe send an email to [email protected]
Fedora Code of Conduct:
https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives:
https://lists.fedoraproject.org/archives/list/[email protected]
Do not reply to spam, report it:
https://pagure.io/fedora-infrastructure/new_issue