microsoft / vcpkg

C++ Library Manager for Windows, Linux, and MacOS
MIT License
23.23k stars 6.4k forks source link

[libheif] Build error (AOM_USAGE_GOOD_QUALITY undeclared / libpixbufloader-heif.so installation) #29156

Closed jreichel-nvidia closed 1 year ago

jreichel-nvidia commented 1 year ago

Package: libheif[core]:x64-linux -> 1.14.2#1

Host Environment

To Reproduce

vcpkg install openimageio

Failure logs

-- Using cached strukturag-libheif-e04d8864b8778605f00e3bf0f2c1cea65abd60f2.tar.gz.
-- Cleaning sources at /home/jreichel/projects/vcpkg/upstream2/buildtrees/libheif/src/a65abd60f2-642324ee34.clean. Use --editable to skip cleaning for the packages you specify.
-- Extracting source /home/jreichel/projects/vcpkg/upstream2/downloads/strukturag-libheif-e04d8864b8778605f00e3bf0f2c1cea65abd60f2.tar.gz
-- Applying patch gdk-pixbuf.patch
-- Using source at /home/jreichel/projects/vcpkg/upstream2/buildtrees/libheif/src/a65abd60f2-642324ee34.clean
-- Configuring x64-linux
-- Building x64-linux-dbg
CMake Error at scripts/cmake/vcpkg_execute_build_process.cmake:134 (message):
    Command failed: /home/jreichel/projects/vcpkg/upstream2/downloads/tools/cmake-3.25.1-linux/cmake-3.25.1-linux-x86_64/bin/cmake --build . --config Debug --target install -- -v -j21
    Working Directory: /home/jreichel/projects/vcpkg/upstream2/buildtrees/libheif/x64-linux-dbg
    See logs for more information:
      /home/jreichel/projects/vcpkg/upstream2/buildtrees/libheif/install-x64-linux-dbg-out.log

Call Stack (most recent call first):
  installed/x64-linux/share/vcpkg-cmake/vcpkg_cmake_build.cmake:74 (vcpkg_execute_build_process)
  installed/x64-linux/share/vcpkg-cmake/vcpkg_cmake_install.cmake:16 (vcpkg_cmake_build)
  ports/libheif/portfile.cmake:17 (vcpkg_cmake_install)
  scripts/ports.cmake:147 (include)
/home/jreichel/projects/vcpkg/upstream2/buildtrees/libheif/install-x64-linux-dbg-out.log ``` [1/23] /usr/bin/c++ -DENABLE_MULTITHREADING_SUPPORT=1 -DENABLE_PARALLEL_TILE_DECODING=1 -DENABLE_PLUGIN_LOADING=1 -DHAVE_AOM_DECODER=1 -DHAVE_AOM_ENCODER=1 -DHAVE_LIBDE265=1 -DHAVE_UNISTD_H -DHAVE_VISIBILITY -DHAVE_X265=1 -DLIBHEIF_EXPORTS -I/home/jreichel/projects/vcpkg/upstream2/buildtrees/libheif/x64-linux-dbg -I/home/jreichel/projects/vcpkg/upstream2/buildtrees/libheif/src/a65abd60f2-642324ee34.clean -I/home/jreichel/projects/vcpkg/upstream2/buildtrees/libheif/src/a65abd60f2-642324ee34.clean/include/libheif -I/home/jreichel/projects/vcpkg/upstream2/buildtrees/libheif/src/a65abd60f2-642324ee34.clean/include -I/home/jreichel/projects/vcpkg/upstream2/installed/x64-linux/include -fPIC -g -fPIC -Wall -Werror -Wsign-compare -Wconversion -Wno-sign-conversion -Wno-error=conversion -Wno-error=unused-parameter -Wno-error=deprecated-declarations -std=c++11 -MD -MT libheif/CMakeFiles/heif.dir/nclx.cc.o -MF libheif/CMakeFiles/heif.dir/nclx.cc.o.d -o libheif/CMakeFiles/heif.dir/nclx.cc.o -c /home/jreichel/projects/vcpkg/upstream2/buildtrees/libheif/src/a65abd60f2-642324ee34.clean/libheif/nclx.cc [2/23] /usr/bin/c++ -DENABLE_MULTITHREADING_SUPPORT=1 -DENABLE_PARALLEL_TILE_DECODING=1 -DENABLE_PLUGIN_LOADING=1 -DHAVE_AOM_DECODER=1 -DHAVE_AOM_ENCODER=1 -DHAVE_LIBDE265=1 -DHAVE_UNISTD_H -DHAVE_VISIBILITY -DHAVE_X265=1 -DLIBHEIF_EXPORTS -I/home/jreichel/projects/vcpkg/upstream2/buildtrees/libheif/x64-linux-dbg -I/home/jreichel/projects/vcpkg/upstream2/buildtrees/libheif/src/a65abd60f2-642324ee34.clean -I/home/jreichel/projects/vcpkg/upstream2/buildtrees/libheif/src/a65abd60f2-642324ee34.clean/include/libheif -I/home/jreichel/projects/vcpkg/upstream2/buildtrees/libheif/src/a65abd60f2-642324ee34.clean/include -I/home/jreichel/projects/vcpkg/upstream2/installed/x64-linux/include -fPIC -g -fPIC -Wall -Werror -Wsign-compare -Wconversion -Wno-sign-conversion -Wno-error=conversion -Wno-error=unused-parameter -Wno-error=deprecated-declarations -std=c++11 -MD -MT libheif/CMakeFiles/heif.dir/metadata_compression.cc.o -MF libheif/CMakeFiles/heif.dir/metadata_compression.cc.o.d -o libheif/CMakeFiles/heif.dir/metadata_compression.cc.o -c /home/jreichel/projects/vcpkg/upstream2/buildtrees/libheif/src/a65abd60f2-642324ee34.clean/libheif/metadata_compression.cc [3/23] /usr/bin/c++ -DENABLE_MULTITHREADING_SUPPORT=1 -DENABLE_PARALLEL_TILE_DECODING=1 -DENABLE_PLUGIN_LOADING=1 -DHAVE_AOM_DECODER=1 -DHAVE_AOM_ENCODER=1 -DHAVE_LIBDE265=1 -DHAVE_UNISTD_H -DHAVE_VISIBILITY -DHAVE_X265=1 -DLIBHEIF_EXPORTS -I/home/jreichel/projects/vcpkg/upstream2/buildtrees/libheif/x64-linux-dbg -I/home/jreichel/projects/vcpkg/upstream2/buildtrees/libheif/src/a65abd60f2-642324ee34.clean -I/home/jreichel/projects/vcpkg/upstream2/buildtrees/libheif/src/a65abd60f2-642324ee34.clean/include/libheif -I/home/jreichel/projects/vcpkg/upstream2/buildtrees/libheif/src/a65abd60f2-642324ee34.clean/include -I/home/jreichel/projects/vcpkg/upstream2/installed/x64-linux/include -fPIC -g -fPIC -Wall -Werror -Wsign-compare -Wconversion -Wno-sign-conversion -Wno-error=conversion -Wno-error=unused-parameter -Wno-error=deprecated-declarations -std=c++11 -MD -MT libheif/CMakeFiles/heif.dir/heif_plugin.cc.o -MF libheif/CMakeFiles/heif.dir/heif_plugin.cc.o.d -o libheif/CMakeFiles/heif.dir/heif_plugin.cc.o -c /home/jreichel/projects/vcpkg/upstream2/buildtrees/libheif/src/a65abd60f2-642324ee34.clean/libheif/heif_plugin.cc ... Skipped 14 lines ... [9/23] /usr/bin/c++ -DENABLE_MULTITHREADING_SUPPORT=1 -DENABLE_PARALLEL_TILE_DECODING=1 -DENABLE_PLUGIN_LOADING=1 -DHAVE_AOM_DECODER=1 -DHAVE_AOM_ENCODER=1 -DHAVE_LIBDE265=1 -DHAVE_UNISTD_H -DHAVE_VISIBILITY -DHAVE_X265=1 -DLIBHEIF_EXPORTS -I/home/jreichel/projects/vcpkg/upstream2/buildtrees/libheif/x64-linux-dbg -I/home/jreichel/projects/vcpkg/upstream2/buildtrees/libheif/src/a65abd60f2-642324ee34.clean -I/home/jreichel/projects/vcpkg/upstream2/buildtrees/libheif/src/a65abd60f2-642324ee34.clean/include/libheif -I/home/jreichel/projects/vcpkg/upstream2/buildtrees/libheif/src/a65abd60f2-642324ee34.clean/include -I/home/jreichel/projects/vcpkg/upstream2/installed/x64-linux/include -fPIC -g -fPIC -Wall -Werror -Wsign-compare -Wconversion -Wno-sign-conversion -Wno-error=conversion -Wno-error=unused-parameter -Wno-error=deprecated-declarations -std=c++11 -MD -MT libheif/CMakeFiles/heif.dir/heif_init.cc.o -MF libheif/CMakeFiles/heif.dir/heif_init.cc.o.d -o libheif/CMakeFiles/heif.dir/heif_init.cc.o -c /home/jreichel/projects/vcpkg/upstream2/buildtrees/libheif/src/a65abd60f2-642324ee34.clean/libheif/heif_init.cc [10/23] /usr/bin/c++ -DENABLE_MULTITHREADING_SUPPORT=1 -DENABLE_PARALLEL_TILE_DECODING=1 -DENABLE_PLUGIN_LOADING=1 -DHAVE_AOM_DECODER=1 -DHAVE_AOM_ENCODER=1 -DHAVE_LIBDE265=1 -DHAVE_UNISTD_H -DHAVE_VISIBILITY -DHAVE_X265=1 -DLIBHEIF_EXPORTS -I/home/jreichel/projects/vcpkg/upstream2/buildtrees/libheif/x64-linux-dbg -I/home/jreichel/projects/vcpkg/upstream2/buildtrees/libheif/src/a65abd60f2-642324ee34.clean -I/home/jreichel/projects/vcpkg/upstream2/buildtrees/libheif/src/a65abd60f2-642324ee34.clean/include/libheif -I/home/jreichel/projects/vcpkg/upstream2/buildtrees/libheif/src/a65abd60f2-642324ee34.clean/include -I/home/jreichel/projects/vcpkg/upstream2/installed/x64-linux/include -fPIC -g -fPIC -Wall -Werror -Wsign-compare -Wconversion -Wno-sign-conversion -Wno-error=conversion -Wno-error=unused-parameter -Wno-error=deprecated-declarations -std=c++11 -MD -MT libheif/CMakeFiles/heif.dir/heif_plugin_registry.cc.o -MF libheif/CMakeFiles/heif.dir/heif_plugin_registry.cc.o.d -o libheif/CMakeFiles/heif.dir/heif_plugin_registry.cc.o -c /home/jreichel/projects/vcpkg/upstream2/buildtrees/libheif/src/a65abd60f2-642324ee34.clean/libheif/heif_plugin_registry.cc [11/23] /usr/bin/c++ -DENABLE_MULTITHREADING_SUPPORT=1 -DENABLE_PARALLEL_TILE_DECODING=1 -DENABLE_PLUGIN_LOADING=1 -DHAVE_AOM_DECODER=1 -DHAVE_AOM_ENCODER=1 -DHAVE_LIBDE265=1 -DHAVE_UNISTD_H -DHAVE_VISIBILITY -DHAVE_X265=1 -DLIBHEIF_EXPORTS -I/home/jreichel/projects/vcpkg/upstream2/buildtrees/libheif/x64-linux-dbg -I/home/jreichel/projects/vcpkg/upstream2/buildtrees/libheif/src/a65abd60f2-642324ee34.clean -I/home/jreichel/projects/vcpkg/upstream2/buildtrees/libheif/src/a65abd60f2-642324ee34.clean/include/libheif -I/home/jreichel/projects/vcpkg/upstream2/buildtrees/libheif/src/a65abd60f2-642324ee34.clean/include -I/home/jreichel/projects/vcpkg/upstream2/installed/x64-linux/include -fPIC -g -fPIC -Wall -Werror -Wsign-compare -Wconversion -Wno-sign-conversion -Wno-error=conversion -Wno-error=unused-parameter -Wno-error=deprecated-declarations -std=c++11 -MD -MT libheif/CMakeFiles/heif.dir/heif_avif.cc.o -MF libheif/CMakeFiles/heif.dir/heif_avif.cc.o.d -o libheif/CMakeFiles/heif.dir/heif_avif.cc.o -c /home/jreichel/projects/vcpkg/upstream2/buildtrees/libheif/src/a65abd60f2-642324ee34.clean/libheif/heif_avif.cc [12/23] /usr/bin/c++ -DENABLE_MULTITHREADING_SUPPORT=1 -DENABLE_PARALLEL_TILE_DECODING=1 -DENABLE_PLUGIN_LOADING=1 -DHAVE_AOM_DECODER=1 -DHAVE_AOM_ENCODER=1 -DHAVE_LIBDE265=1 -DHAVE_UNISTD_H -DHAVE_VISIBILITY -DHAVE_X265=1 -DLIBHEIF_EXPORTS -I/home/jreichel/projects/vcpkg/upstream2/buildtrees/libheif/x64-linux-dbg -I/home/jreichel/projects/vcpkg/upstream2/buildtrees/libheif/src/a65abd60f2-642324ee34.clean -I/home/jreichel/projects/vcpkg/upstream2/buildtrees/libheif/src/a65abd60f2-642324ee34.clean/include/libheif -I/home/jreichel/projects/vcpkg/upstream2/buildtrees/libheif/src/a65abd60f2-642324ee34.clean/include -I/home/jreichel/projects/vcpkg/upstream2/installed/x64-linux/include -fPIC -g -fPIC -Wall -Werror -Wsign-compare -Wconversion -Wno-sign-conversion -Wno-error=conversion -Wno-error=unused-parameter -Wno-error=deprecated-declarations -std=c++11 -MD -MT libheif/CMakeFiles/heif.dir/heif_hevc.cc.o -MF libheif/CMakeFiles/heif.dir/heif_hevc.cc.o.d -o libheif/CMakeFiles/heif.dir/heif_hevc.cc.o -c /home/jreichel/projects/vcpkg/upstream2/buildtrees/libheif/src/a65abd60f2-642324ee34.clean/libheif/heif_hevc.cc [13/23] /usr/bin/c++ -DENABLE_MULTITHREADING_SUPPORT=1 -DENABLE_PARALLEL_TILE_DECODING=1 -DENABLE_PLUGIN_LOADING=1 -DHAVE_AOM_DECODER=1 -DHAVE_AOM_ENCODER=1 -DHAVE_LIBDE265=1 -DHAVE_UNISTD_H -DHAVE_VISIBILITY -DHAVE_X265=1 -DLIBHEIF_EXPORTS -I/home/jreichel/projects/vcpkg/upstream2/buildtrees/libheif/x64-linux-dbg -I/home/jreichel/projects/vcpkg/upstream2/buildtrees/libheif/src/a65abd60f2-642324ee34.clean -I/home/jreichel/projects/vcpkg/upstream2/buildtrees/libheif/src/a65abd60f2-642324ee34.clean/include/libheif -I/home/jreichel/projects/vcpkg/upstream2/buildtrees/libheif/src/a65abd60f2-642324ee34.clean/include -I/home/jreichel/projects/vcpkg/upstream2/installed/x64-linux/include -fPIC -g -fPIC -Wall -Werror -Wsign-compare -Wconversion -Wno-sign-conversion -Wno-error=conversion -Wno-error=unused-parameter -Wno-error=deprecated-declarations -std=c++11 -MD -MT libheif/CMakeFiles/heif.dir/heif_image.cc.o -MF libheif/CMakeFiles/heif.dir/heif_image.cc.o.d -o libheif/CMakeFiles/heif.dir/heif_image.cc.o -c /home/jreichel/projects/vcpkg/upstream2/buildtrees/libheif/src/a65abd60f2-642324ee34.clean/libheif/heif_image.cc [14/23] /usr/bin/c++ -DENABLE_MULTITHREADING_SUPPORT=1 -DENABLE_PARALLEL_TILE_DECODING=1 -DENABLE_PLUGIN_LOADING=1 -DHAVE_AOM_DECODER=1 -DHAVE_AOM_ENCODER=1 -DHAVE_LIBDE265=1 -DHAVE_UNISTD_H -DHAVE_VISIBILITY -DHAVE_X265=1 -DLIBHEIF_EXPORTS -I/home/jreichel/projects/vcpkg/upstream2/buildtrees/libheif/x64-linux-dbg -I/home/jreichel/projects/vcpkg/upstream2/buildtrees/libheif/src/a65abd60f2-642324ee34.clean -I/home/jreichel/projects/vcpkg/upstream2/buildtrees/libheif/src/a65abd60f2-642324ee34.clean/include/libheif -I/home/jreichel/projects/vcpkg/upstream2/buildtrees/libheif/src/a65abd60f2-642324ee34.clean/include -I/home/jreichel/projects/vcpkg/upstream2/installed/x64-linux/include -fPIC -g -fPIC -Wall -Werror -Wsign-compare -Wconversion -Wno-sign-conversion -Wno-error=conversion -Wno-error=unused-parameter -Wno-error=deprecated-declarations -std=c++11 -MD -MT libheif/CMakeFiles/heif.dir/plugins/heif_decoder_libde265.cc.o -MF libheif/CMakeFiles/heif.dir/plugins/heif_decoder_libde265.cc.o.d -o libheif/CMakeFiles/heif.dir/plugins/heif_decoder_libde265.cc.o -c /home/jreichel/projects/vcpkg/upstream2/buildtrees/libheif/src/a65abd60f2-642324ee34.clean/libheif/plugins/heif_decoder_libde265.cc [15/23] /usr/bin/c++ -DENABLE_MULTITHREADING_SUPPORT=1 -DENABLE_PARALLEL_TILE_DECODING=1 -DENABLE_PLUGIN_LOADING=1 -DHAVE_AOM_DECODER=1 -DHAVE_AOM_ENCODER=1 -DHAVE_LIBDE265=1 -DHAVE_UNISTD_H -DHAVE_VISIBILITY -DHAVE_X265=1 -DLIBHEIF_EXPORTS -I/home/jreichel/projects/vcpkg/upstream2/buildtrees/libheif/x64-linux-dbg -I/home/jreichel/projects/vcpkg/upstream2/buildtrees/libheif/src/a65abd60f2-642324ee34.clean -I/home/jreichel/projects/vcpkg/upstream2/buildtrees/libheif/src/a65abd60f2-642324ee34.clean/include/libheif -I/home/jreichel/projects/vcpkg/upstream2/buildtrees/libheif/src/a65abd60f2-642324ee34.clean/include -I/home/jreichel/projects/vcpkg/upstream2/installed/x64-linux/include -fPIC -g -fPIC -Wall -Werror -Wsign-compare -Wconversion -Wno-sign-conversion -Wno-error=conversion -Wno-error=unused-parameter -Wno-error=deprecated-declarations -std=c++11 -MD -MT libheif/CMakeFiles/heif.dir/plugins/heif_encoder_x265.cc.o -MF libheif/CMakeFiles/heif.dir/plugins/heif_encoder_x265.cc.o.d -o libheif/CMakeFiles/heif.dir/plugins/heif_encoder_x265.cc.o -c /home/jreichel/projects/vcpkg/upstream2/buildtrees/libheif/src/a65abd60f2-642324ee34.clean/libheif/plugins/heif_encoder_x265.cc [16/23] /usr/bin/c++ -DENABLE_MULTITHREADING_SUPPORT=1 -DENABLE_PARALLEL_TILE_DECODING=1 -DENABLE_PLUGIN_LOADING=1 -DHAVE_AOM_DECODER=1 -DHAVE_AOM_ENCODER=1 -DHAVE_LIBDE265=1 -DHAVE_UNISTD_H -DHAVE_VISIBILITY -DHAVE_X265=1 -DLIBHEIF_EXPORTS -I/home/jreichel/projects/vcpkg/upstream2/buildtrees/libheif/x64-linux-dbg -I/home/jreichel/projects/vcpkg/upstream2/buildtrees/libheif/src/a65abd60f2-642324ee34.clean -I/home/jreichel/projects/vcpkg/upstream2/buildtrees/libheif/src/a65abd60f2-642324ee34.clean/include/libheif -I/home/jreichel/projects/vcpkg/upstream2/buildtrees/libheif/src/a65abd60f2-642324ee34.clean/include -I/home/jreichel/projects/vcpkg/upstream2/installed/x64-linux/include -fPIC -g -fPIC -Wall -Werror -Wsign-compare -Wconversion -Wno-sign-conversion -Wno-error=conversion -Wno-error=unused-parameter -Wno-error=deprecated-declarations -std=c++11 -MD -MT libheif/CMakeFiles/heif.dir/heif.cc.o -MF libheif/CMakeFiles/heif.dir/heif.cc.o.d -o libheif/CMakeFiles/heif.dir/heif.cc.o -c /home/jreichel/projects/vcpkg/upstream2/buildtrees/libheif/src/a65abd60f2-642324ee34.clean/libheif/heif.cc [17/23] /usr/bin/c++ -DENABLE_MULTITHREADING_SUPPORT=1 -DENABLE_PARALLEL_TILE_DECODING=1 -DENABLE_PLUGIN_LOADING=1 -DHAVE_AOM_DECODER=1 -DHAVE_AOM_ENCODER=1 -DHAVE_LIBDE265=1 -DHAVE_UNISTD_H -DHAVE_VISIBILITY -DHAVE_X265=1 -DLIBHEIF_EXPORTS -I/home/jreichel/projects/vcpkg/upstream2/buildtrees/libheif/x64-linux-dbg -I/home/jreichel/projects/vcpkg/upstream2/buildtrees/libheif/src/a65abd60f2-642324ee34.clean -I/home/jreichel/projects/vcpkg/upstream2/buildtrees/libheif/src/a65abd60f2-642324ee34.clean/include/libheif -I/home/jreichel/projects/vcpkg/upstream2/buildtrees/libheif/src/a65abd60f2-642324ee34.clean/include -I/home/jreichel/projects/vcpkg/upstream2/installed/x64-linux/include -fPIC -g -fPIC -Wall -Werror -Wsign-compare -Wconversion -Wno-sign-conversion -Wno-error=conversion -Wno-error=unused-parameter -Wno-error=deprecated-declarations -std=c++11 -MD -MT libheif/CMakeFiles/heif.dir/heif_colorconversion.cc.o -MF libheif/CMakeFiles/heif.dir/heif_colorconversion.cc.o.d -o libheif/CMakeFiles/heif.dir/heif_colorconversion.cc.o -c /home/jreichel/projects/vcpkg/upstream2/buildtrees/libheif/src/a65abd60f2-642324ee34.clean/libheif/heif_colorconversion.cc [18/23] /usr/bin/c++ -DENABLE_MULTITHREADING_SUPPORT=1 -DENABLE_PARALLEL_TILE_DECODING=1 -DENABLE_PLUGIN_LOADING=1 -DHAVE_AOM_DECODER=1 -DHAVE_AOM_ENCODER=1 -DHAVE_LIBDE265=1 -DHAVE_UNISTD_H -DHAVE_VISIBILITY -DHAVE_X265=1 -DLIBHEIF_EXPORTS -I/home/jreichel/projects/vcpkg/upstream2/buildtrees/libheif/x64-linux-dbg -I/home/jreichel/projects/vcpkg/upstream2/buildtrees/libheif/src/a65abd60f2-642324ee34.clean -I/home/jreichel/projects/vcpkg/upstream2/buildtrees/libheif/src/a65abd60f2-642324ee34.clean/include/libheif -I/home/jreichel/projects/vcpkg/upstream2/buildtrees/libheif/src/a65abd60f2-642324ee34.clean/include -I/home/jreichel/projects/vcpkg/upstream2/installed/x64-linux/include -fPIC -g -fPIC -Wall -Werror -Wsign-compare -Wconversion -Wno-sign-conversion -Wno-error=conversion -Wno-error=unused-parameter -Wno-error=deprecated-declarations -std=c++11 -MD -MT libheif/CMakeFiles/heif.dir/heif_file.cc.o -MF libheif/CMakeFiles/heif.dir/heif_file.cc.o.d -o libheif/CMakeFiles/heif.dir/heif_file.cc.o -c /home/jreichel/projects/vcpkg/upstream2/buildtrees/libheif/src/a65abd60f2-642324ee34.clean/libheif/heif_file.cc [19/23] /usr/bin/c++ -DENABLE_MULTITHREADING_SUPPORT=1 -DENABLE_PARALLEL_TILE_DECODING=1 -DENABLE_PLUGIN_LOADING=1 -DHAVE_AOM_DECODER=1 -DHAVE_AOM_ENCODER=1 -DHAVE_LIBDE265=1 -DHAVE_UNISTD_H -DHAVE_VISIBILITY -DHAVE_X265=1 -DLIBHEIF_EXPORTS -I/home/jreichel/projects/vcpkg/upstream2/buildtrees/libheif/x64-linux-dbg -I/home/jreichel/projects/vcpkg/upstream2/buildtrees/libheif/src/a65abd60f2-642324ee34.clean -I/home/jreichel/projects/vcpkg/upstream2/buildtrees/libheif/src/a65abd60f2-642324ee34.clean/include/libheif -I/home/jreichel/projects/vcpkg/upstream2/buildtrees/libheif/src/a65abd60f2-642324ee34.clean/include -I/home/jreichel/projects/vcpkg/upstream2/installed/x64-linux/include -fPIC -g -fPIC -Wall -Werror -Wsign-compare -Wconversion -Wno-sign-conversion -Wno-error=conversion -Wno-error=unused-parameter -Wno-error=deprecated-declarations -std=c++11 -MD -MT libheif/CMakeFiles/heif.dir/heif_context.cc.o -MF libheif/CMakeFiles/heif.dir/heif_context.cc.o.d -o libheif/CMakeFiles/heif.dir/heif_context.cc.o -c /home/jreichel/projects/vcpkg/upstream2/buildtrees/libheif/src/a65abd60f2-642324ee34.clean/libheif/heif_context.cc [20/23] /usr/bin/c++ -DENABLE_MULTITHREADING_SUPPORT=1 -DENABLE_PARALLEL_TILE_DECODING=1 -DENABLE_PLUGIN_LOADING=1 -DHAVE_AOM_DECODER=1 -DHAVE_AOM_ENCODER=1 -DHAVE_LIBDE265=1 -DHAVE_UNISTD_H -DHAVE_VISIBILITY -DHAVE_X265=1 -DLIBHEIF_EXPORTS -I/home/jreichel/projects/vcpkg/upstream2/buildtrees/libheif/x64-linux-dbg -I/home/jreichel/projects/vcpkg/upstream2/buildtrees/libheif/src/a65abd60f2-642324ee34.clean -I/home/jreichel/projects/vcpkg/upstream2/buildtrees/libheif/src/a65abd60f2-642324ee34.clean/include/libheif -I/home/jreichel/projects/vcpkg/upstream2/buildtrees/libheif/src/a65abd60f2-642324ee34.clean/include -I/home/jreichel/projects/vcpkg/upstream2/installed/x64-linux/include -fPIC -g -fPIC -Wall -Werror -Wsign-compare -Wconversion -Wno-sign-conversion -Wno-error=conversion -Wno-error=unused-parameter -Wno-error=deprecated-declarations -std=c++11 -MD -MT libheif/CMakeFiles/heif.dir/box.cc.o -MF libheif/CMakeFiles/heif.dir/box.cc.o.d -o libheif/CMakeFiles/heif.dir/box.cc.o -c /home/jreichel/projects/vcpkg/upstream2/buildtrees/libheif/src/a65abd60f2-642324ee34.clean/libheif/box.cc ninja: build stopped: subcommand failed. ```

Additional context

The generated report seems to miss the important line from the build log:


[7/23] /usr/bin/c++ -DENABLE_MULTITHREADING_SUPPORT=1 -DENABLE_PARALLEL_TILE_DECODING=1 -DENABLE_PLUGIN_LOADING=1 -DHAVE_AOM_DECODER=1 -DHAVE_AOM_ENCODER=1 -DHAVE_LIBDE265=1 -DHAVE_UNISTD_H -DHAVE_VISIBILITY -DHAVE_X265=1 -DLIBHEIF_EXPORTS -I/home/jreichel/projects/vcpkg/upstream2/buildtrees/libheif/x64-linux-dbg -I/home/jreichel/projects/vcpkg/upstream2/buildtrees/libheif/src/a65abd60f2-642324ee34.clean -I/home/jreichel/projects/vcpkg/upstream2/buildtrees/libheif/src/a65abd60f2-642324ee34.clean/include/libheif -I/home/jreichel/projects/vcpkg/upstream2/buildtrees/libheif/src/a65abd60f2-642324ee34.clean/include -I/home/jreichel/projects/vcpkg/upstream2/installed/x64-linux/include -fPIC -g -fPIC   -Wall -Werror -Wsign-compare -Wconversion -Wno-sign-conversion -Wno-error=conversion -Wno-error=unused-parameter -Wno-error=deprecated-declarations -std=c++11 -MD -MT libheif/CMakeFiles/heif.dir/plugins/heif_encoder_aom.cc.o -MF libheif/CMakeFiles/heif.dir/plugins/heif_encoder_aom.cc.o.d -o libheif/CMakeFiles/heif.dir/plugins/heif_encoder_aom.cc.o -c /home/jreichel/projects/vcpkg/upstream2/buildtrees/libheif/src/a65abd60f2-642324ee34.clean/libheif/plugins/heif_encoder_aom.cc
FAILED: libheif/CMakeFiles/heif.dir/plugins/heif_encoder_aom.cc.o 
/usr/bin/c++ -DENABLE_MULTITHREADING_SUPPORT=1 -DENABLE_PARALLEL_TILE_DECODING=1 -DENABLE_PLUGIN_LOADING=1 -DHAVE_AOM_DECODER=1 -DHAVE_AOM_ENCODER=1 -DHAVE_LIBDE265=1 -DHAVE_UNISTD_H -DHAVE_VISIBILITY -DHAVE_X265=1 -DLIBHEIF_EXPORTS -I/home/jreichel/projects/vcpkg/upstream2/buildtrees/libheif/x64-linux-dbg -I/home/jreichel/projects/vcpkg/upstream2/buildtrees/libheif/src/a65abd60f2-642324ee34.clean -I/home/jreichel/projects/vcpkg/upstream2/buildtrees/libheif/src/a65abd60f2-642324ee34.clean/include/libheif -I/home/jreichel/projects/vcpkg/upstream2/buildtrees/libheif/src/a65abd60f2-642324ee34.clean/include -I/home/jreichel/projects/vcpkg/upstream2/installed/x64-linux/include -fPIC -g -fPIC   -Wall -Werror -Wsign-compare -Wconversion -Wno-sign-conversion -Wno-error=conversion -Wno-error=unused-parameter -Wno-error=deprecated-declarations -std=c++11 -MD -MT libheif/CMakeFiles/heif.dir/plugins/heif_encoder_aom.cc.o -MF libheif/CMakeFiles/heif.dir/plugins/heif_encoder_aom.cc.o.d -o libheif/CMakeFiles/heif.dir/plugins/heif_encoder_aom.cc.o -c /home/jreichel/projects/vcpkg/upstream2/buildtrees/libheif/src/a65abd60f2-642324ee34.clean/libheif/plugins/heif_encoder_aom.cc
/home/jreichel/projects/vcpkg/upstream2/buildtrees/libheif/src/a65abd60f2-642324ee34.clean/libheif/plugins/heif_encoder_aom.cc: In function ‘heif_error aom_encode_image(void*, const heif_image*, heif_image_input_class)’:
/home/jreichel/projects/vcpkg/upstream2/buildtrees/libheif/src/a65abd60f2-642324ee34.clean/libheif/plugins/heif_encoder_aom.cc:846:27: error: ‘AOM_USAGE_GOOD_QUALITY’ was not declared in this scope
  846 |   unsigned int aomUsage = AOM_USAGE_GOOD_QUALITY;
      |                           ^~~~~~~~~~~~~~~~~~~~~~
/home/jreichel/projects/vcpkg/upstream2/buildtrees/libheif/src/a65abd60f2-642324ee34.clean/libheif/plugins/heif_encoder_aom.cc:849:16: error: ‘AOM_USAGE_REALTIME’ was not declared in this scope
  849 |     aomUsage = AOM_USAGE_REALTIME;
      |                ^~~~~~~~~~~~~~~~~~```
jreichel-nvidia commented 1 year ago

This issue started with 53c1bea1 (https://github.com/microsoft/vcpkg/pull/28801) and is related to libaom-dev 1.0.0.errata1-3 being installed by the native package manager (apt, Debian 11 bullseye). But even if I uninstall that package, it does not work, but fails differently (also starting with 53c1bea1):

[20/21] cd /home/jreichel/projects/vcpkg/upstream2/buildtrees/libheif/x64-linux-dbg && /home/jreichel/projects/vcpkg/upstream2/downloads/tools/cmake-3.25.0-linux/cmake-3.25.0-linux-x86_64/bin/cmake -P cmake_install.cmake
-- Install configuration: "Debug"
-- Installing: /home/jreichel/projects/vcpkg/upstream2/packages/libheif_x64-linux/debug/lib/libheif
-- Installing: /home/jreichel/projects/vcpkg/upstream2/packages/libheif_x64-linux/debug/lib/pkgconfig/libheif.pc
-- Installing: /home/jreichel/projects/vcpkg/upstream2/packages/libheif_x64-linux/debug/lib/libheif.a
-- Installing: /home/jreichel/projects/vcpkg/upstream2/packages/libheif_x64-linux/debug/include/libheif/heif.h
-- Installing: /home/jreichel/projects/vcpkg/upstream2/packages/libheif_x64-linux/debug/include/libheif/heif_cxx.h
-- Installing: /home/jreichel/projects/vcpkg/upstream2/packages/libheif_x64-linux/debug/include/libheif/heif_plugin.h
-- Installing: /home/jreichel/projects/vcpkg/upstream2/packages/libheif_x64-linux/debug/include/libheif/heif_version.h
-- Installing: /home/jreichel/projects/vcpkg/upstream2/packages/libheif_x64-linux/debug/lib/cmake/libheif/libheif-config.cmake
-- Installing: /home/jreichel/projects/vcpkg/upstream2/packages/libheif_x64-linux/debug/lib/cmake/libheif/libheif-config-debug.cmake
-- Installing: /home/jreichel/projects/vcpkg/upstream2/packages/libheif_x64-linux/debug/lib/cmake/libheif/libheif-config-version.cmake
-- Installing: /usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-heif.so
FAILED: CMakeFiles/install.util
cd /home/jreichel/projects/vcpkg/upstream2/buildtrees/libheif/x64-linux-dbg && /home/jreichel/projects/vcpkg/upstream2/downloads/tools/cmake-3.25.0-linux/cmake-3.25.0-linux-x86_64/bin/cmake -P cmake_install.cmake
ninja: build stopped: subcommand failed.

and buildtrees/libheif/install-x64-linux-dbg-err.log has

CMake Error at gdk-pixbuf/cmake_install.cmake:60 (file):
  file INSTALL cannot copy file
  "/home/jreichel/projects/vcpkg/upstream2/buildtrees/libheif/x64-linux-dbg/gdk-pixbuf/libpixbufloader-heif.so"
  to
  "/usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-heif.so":
  Success.
Call Stack (most recent call first):
  cmake_install.cmake:68 (include)

Looks like in both cases there is some undesired interaction with files outside of the vcpkg root directory.

Edi61 commented 1 year ago

AOM with version v1.x is not supported any longer, see also: https://github.com/strukturag/libheif/issues/720

logiczny commented 1 year ago

on my debian 11 I was able to make it installing libaom-dev from bullseye-backports, now it's (3.6.0-1~bpo11+1)

Cheney-W commented 1 year ago

@jreichel-nvidia Does this issue still exist with the v1.x AOM?

jreichel-nvidia commented 1 year ago

Since meanwhile libheif became an optional dependency of openimageio, the repro case should be changed to ./vcpkg install libheif (and is simpler anyway).

Yes, the issue still exists (with and without libaom-dev). And libaom0 is installed in both cases (not sure if relevant).

Cheney-W commented 1 year ago

I can't reproduce this issue in my side with the latest vcpkg and without libaom-dev:

xxx@xxx-linux:~/vcpkg$ ./vcpkg install libheif[core]:x64-linux --editable
Computing installation plan...
The following packages will be built and installed:
    libheif[core]:x64-linux -> 1.15.1
Restored 0 package(s) from /home/xxx/.cache/vcpkg/archives in 1.7 us. Use --debug to see more details.
Installing 1/1 libheif:x64-linux...
Building libheif[core]:x64-linux...
-- Using cached strukturag-libheif-06f6acfe735379b9c3bcf865285f6dba80611e90.tar.gz.
-- Using source at /home/xxx/vcpkg/buildtrees/libheif/src/ba80611e90-c46c042586
-- Configuring x64-linux
-- Building x64-linux-dbg
-- Building x64-linux-rel
-- Fixing pkgconfig file: /home/xxx/vcpkg/packages/libheif_x64-linux/lib/pkgconfig/libheif.pc
-- Fixing pkgconfig file: /home/xxx/vcpkg/packages/libheif_x64-linux/debug/lib/pkgconfig/libheif.pc
-- Installing: /home/xxx/vcpkg/packages/libheif_x64-linux/share/libheif/copyright
-- Performing post-build validation
Elapsed time to handle libheif:x64-linux: 50 s
Total install time: 50 s
libheif provides CMake targets:

    # this is heuristically generated, and may not be correct
    find_package(libheif CONFIG REQUIRED)
    target_link_libraries(main PRIVATE heif)

xxx@xxx-linux:~/vcpkg$ dpkg -s libaom-dev
dpkg-query: package 'libaom-dev' is not installed and no information is available
jreichel-nvidia commented 1 year ago

Without libaom-dev: When I deinstall libgdk-pixbuf-2.0-dev, then it does not try to build the offending libpixbufloader-heif.so and the build succeeds. I guess the feature should not be automatically enabled if some dev package on the host system happens to be present? (That would then also "solve" the problem with wrong install location.)

Cheney-W commented 1 year ago

Thanks for your reply! After install libgdk-pixbuf2.0-dev, I could reproduce the below error, I will try to fix it.

CMake Error at gdk-pixbuf/cmake_install.cmake:60 (file):
  file INSTALL cannot copy file
  "/home/vxincwa/vcpkg/buildtrees/libheif/x64-linux-dbg/gdk-pixbuf/libpixbufloader-heif.so"
  to
  "/usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-heif.so":
  Success.

But I still can't reproduce the error: error: ‘AOM_USAGE_GOOD_QUALITY’ was not declared in this scope

I think this issue should be the comment's of Edi61:

AOM with version v1.x is not supported any longer, see also:
https://github.com/strukturag/libheif/issues/720
jreichel-nvidia commented 1 year ago

About AOM_USAGE_GOOD_QUALITY: did you install libaom-dev? When compiling heif_encoder_aom.cc, the include of <aom/aom_encoder.h> gets resolved to /usr/include/aom/aom_encoder.h and then fails with that error message. I guess AOM should be taken from vcpkg (which has AOM 3.2.0), not an older version from the host system.

Cheney-W commented 1 year ago

About AOM issue, looks like fixed by https://github.com/strukturag/libheif/pull/812.

jreichel-nvidia commented 1 year ago

I believe only one of the two problems has been fixed. I can confirm that the installation problem is gone (if libaom-dev is absent), but the header problem with AOM_USAGE_GOOD_QUALITY remains (if libaom-dev is installed via dpkg). Manually installing aom via vcpkg fixes that, too, so I guess a dependency from libheif to aom is still missing.

github-actions[bot] commented 1 year ago

This is an automated message. Per our repo policy, stale issues get closed if there has been no activity in the past 180 days. The issue will be automatically closed in 14 days. If you wish to keep this issue open, please add a new comment.

jreichel-nvidia commented 1 year ago

I can no longer reproduce the header problem, but there also have been several updates since then. Let's close this one.