tifig
tifig copied to clipboard
Fedora 34 make error
Made sure to install them ffmpeg libraries, particularly avcodec and vips.
sudo dnf install vips vips-devel vips-doc vips-magick vips-openslide vips-poppler vips-tools texlive-dvips texlive-tree-dvips rubygem-image_processing texlive-breakurl texlive-purifyeps texlive-thumbpdf ffmpeg ffmpeg-devel ffmpeg-libs pkgconf-pkg-config alsa-plugins-freeworld-* ffmpegthumbs python3-ffmpeg-normalize compat-ffmpeg28 qwinff videomorph libtiff* libpng* libspng* libexif* openjpeg* openjpeg2* mjpegtools* exif gd streameye wavextract libjpeg-turbo-devel libjpeg-turbo libjpeg-turbo-utils glib2* pulseaudio-libs-glib2 rubygem-glib2* gkeyfile-sharp spice-glib*
Still, I get these deprecation warnings and then this error:
[USER@fedora build]$ make
Consolidate compiler generated dependencies of target h265parser
[ 2%] Built target h265parser
Consolidate compiler generated dependencies of target avcparser
[ 4%] Built target avcparser
Consolidate compiler generated dependencies of target common
[ 89%] Built target common
Consolidate compiler generated dependencies of target heifreader
[ 90%] Building CXX object lib/heif/Srcs/reader/CMakeFiles/heifreader.dir/hevcimagefilereader.cpp.o
[ 91%] Linking CXX static library libheifreader.a
/usr/bin/ar qc libheifreader.a CMakeFiles/heifreader.dir/hevcimagefilereader.cpp.o CMakeFiles/heifreader.dir/imagefilereaderfactory.cpp.o
/usr/bin/ranlib libheifreader.a
[ 92%] Built target heifreader
Consolidate compiler generated dependencies of target tifig
[ 94%] Building CXX object CMakeFiles/tifig.dir/src/main.cpp.o
En el fichero incluido desde /home/USER/git/tifig/src/main.cpp:1:
/home/USER/git/tifig/lib/cxxopts/include/cxxopts.hpp: En la función miembro ‘void cxxopts::values::detail::SignedCheck<T, true>::operator()(bool, U, const string&)’:
/home/USER/git/tifig/lib/cxxopts/include/cxxopts.hpp:451:42: error: ‘numeric_limits’ no es un miembro de ‘std’
451 | if (u > static_cast<U>(-std::numeric_limits<T>::min()))
| ^~~~~~~~~~~~~~
/home/USER/git/tifig/lib/cxxopts/include/cxxopts.hpp:451:58: error: expected primary-expression before ‘>’ token
451 | if (u > static_cast<U>(-std::numeric_limits<T>::min()))
| ^
/home/USER/git/tifig/lib/cxxopts/include/cxxopts.hpp:451:61: error: ‘::min’ has not been declared; did you mean ‘std::min’?
451 | if (u > static_cast<U>(-std::numeric_limits<T>::min()))
| ^~~
| std::min
En el fichero incluido desde /usr/include/c++/11/algorithm:62,
desde /usr/include/c++/11/regex:38,
desde /home/USER/git/tifig/lib/cxxopts/include/cxxopts.hpp:39,
desde /home/USER/git/tifig/src/main.cpp:1:
/usr/include/c++/11/bits/stl_algo.h:3455:5: nota: ‘std::min’ declared here
3455 | min(initializer_list<_Tp> __l, _Compare __comp)
| ^~~
En el fichero incluido desde /home/USER/git/tifig/src/main.cpp:1:
/home/USER/git/tifig/lib/cxxopts/include/cxxopts.hpp:458:41: error: ‘numeric_limits’ no es un miembro de ‘std’
458 | if (u > static_cast<U>(std::numeric_limits<T>::max()))
| ^~~~~~~~~~~~~~
/home/USER/git/tifig/lib/cxxopts/include/cxxopts.hpp:458:57: error: expected primary-expression before ‘>’ token
458 | if (u > static_cast<U>(std::numeric_limits<T>::max()))
| ^
/home/USER/git/tifig/lib/cxxopts/include/cxxopts.hpp:458:60: error: ‘::max’ has not been declared; did you mean ‘std::max’?
458 | if (u > static_cast<U>(std::numeric_limits<T>::max()))
| ^~~
| std::max
En el fichero incluido desde /usr/include/c++/11/algorithm:62,
desde /usr/include/c++/11/regex:38,
desde /home/USER/git/tifig/lib/cxxopts/include/cxxopts.hpp:39,
desde /home/USER/git/tifig/src/main.cpp:1:
/usr/include/c++/11/bits/stl_algo.h:3467:5: nota: ‘std::max’ declared here
3467 | max(initializer_list<_Tp> __l, _Compare __comp)
| ^~~
En el fichero incluido desde /home/USER/git/tifig/src/main.cpp:1:
/home/USER/git/tifig/lib/cxxopts/include/cxxopts.hpp: En la función ‘void cxxopts::values::detail::check_signed_range(bool, U, const string&)’:
/home/USER/git/tifig/lib/cxxopts/include/cxxopts.hpp:478:29: error: ‘numeric_limits’ no es un miembro de ‘std’
478 | SignedCheck<T, std::numeric_limits<T>::is_signed>()(negative, value, text);
| ^~~~~~~~~~~~~~
/home/USER/git/tifig/lib/cxxopts/include/cxxopts.hpp:478:29: error: ‘numeric_limits’ no es un miembro de ‘std’
/home/USER/git/tifig/lib/cxxopts/include/cxxopts.hpp:478:45: error: el argumento de plantilla 2 es no válido
478 | SignedCheck<T, std::numeric_limits<T>::is_signed>()(negative, value, text);
| ^
/home/USER/git/tifig/lib/cxxopts/include/cxxopts.hpp:478:57: error: qualified-id in declaration before ‘>’ token
478 | SignedCheck<T, std::numeric_limits<T>::is_signed>()(negative, value, text);
| ^
/home/USER/git/tifig/lib/cxxopts/include/cxxopts.hpp: En la función ‘void cxxopts::values::integer_parser(const string&, T&)’:
/home/USER/git/tifig/lib/cxxopts/include/cxxopts.hpp:519:34: error: ‘numeric_limits’ no es un miembro de ‘std’
519 | constexpr auto umax = std::numeric_limits<US>::max();
| ^~~~~~~~~~~~~~
/home/USER/git/tifig/lib/cxxopts/include/cxxopts.hpp:519:51: error: expected primary-expression before ‘>’ token
519 | constexpr auto umax = std::numeric_limits<US>::max();
| ^
/home/USER/git/tifig/lib/cxxopts/include/cxxopts.hpp:519:54: error: ‘::max’ has not been declared; did you mean ‘std::max’?
519 | constexpr auto umax = std::numeric_limits<US>::max();
| ^~~
| std::max
En el fichero incluido desde /usr/include/c++/11/algorithm:62,
desde /usr/include/c++/11/regex:38,
desde /home/USER/git/tifig/lib/cxxopts/include/cxxopts.hpp:39,
desde /home/USER/git/tifig/src/main.cpp:1:
/usr/include/c++/11/bits/stl_algo.h:3467:5: nota: ‘std::max’ declared here
3467 | max(initializer_list<_Tp> __l, _Compare __comp)
| ^~~
En el fichero incluido desde /home/USER/git/tifig/src/main.cpp:1:
/home/USER/git/tifig/lib/cxxopts/include/cxxopts.hpp:520:39: error: ‘numeric_limits’ no es un miembro de ‘std’
520 | constexpr bool is_signed = std::numeric_limits<T>::is_signed;
| ^~~~~~~~~~~~~~
/home/USER/git/tifig/lib/cxxopts/include/cxxopts.hpp:520:55: error: expected primary-expression before ‘>’ token
520 | constexpr bool is_signed = std::numeric_limits<T>::is_signed;
| ^
/home/USER/git/tifig/lib/cxxopts/include/cxxopts.hpp:520:58: error: ‘::is_signed’ has not been declared; did you mean ‘std::is_signed’?
520 | constexpr bool is_signed = std::numeric_limits<T>::is_signed;
| ^~~~~~~~~
| std::is_signed
En el fichero incluido desde /usr/include/c++/11/bits/move.h:57,
desde /usr/include/c++/11/bits/nested_exception.h:40,
desde /usr/include/c++/11/exception:148,
desde /home/USER/git/tifig/lib/cxxopts/include/cxxopts.hpp:35,
desde /home/USER/git/tifig/src/main.cpp:1:
/usr/include/c++/11/type_traits:757:12: nota: ‘std::is_signed’ declared here
757 | struct is_signed
| ^~~~~~~~~
/home/USER/git/tifig/src/main.cpp: En la función ‘int convert(const string&, Opts&)’:
/home/USER/git/tifig/src/main.cpp:58:25: aviso: ‘void avcodec_register_all()’ es obsoleto [-Wdeprecated-declarations]
58 | avcodec_register_all();
| ~~~~~~~~~~~~~~~~~~~~^~
En el fichero incluido desde /home/USER/git/tifig/src/hevc_decode.hpp:9,
desde /home/USER/git/tifig/src/loader.hpp:7,
desde /home/USER/git/tifig/src/main.cpp:5:
/usr/include/ffmpeg/libavcodec/avcodec.h:2767:6: nota: se declara aquí
2767 | void avcodec_register_all(void);
| ^~~~~~~~~~~~~~~~~~~~
make[2]: *** [CMakeFiles/tifig.dir/build.make:76: CMakeFiles/tifig.dir/src/main.cpp.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:287: CMakeFiles/tifig.dir/all] Error 2
make: *** [Makefile:136: all] Error 2