Как указано на целевой странице :
x265 - это прикладная библиотека видеокодера H.265 / HEVC, предназначенная для кодирования видео или изображений в кодированный битовый поток H.265 / HEVC.
проект x265 в основном предоставляет библиотеку , которую разработчики могут связать со своими приложениями
предоставить им функциональность кодирования x265, H.265 / HEVC. Во-вторых, он предоставляет инструмент командной строки , x265
для кодирования H.265 / HEVC входного файла в выходной файл.
Следовательно, можно ожидать, что установка пакета обеспечит -
Библиотека
- Установка: /usr/local/lib/libx265.a
Проверьте.
Один или несколько заголовочных файлов, позволяющих компилировать клиентов библиотеки
- Установка: /usr/local/include/x265.h
- Установка: /usr/local/include/x265_config.h
Проверьте.
A pkg-config
файл для предоставления
разработчики с метаданными компиляции и связывания пакета.
- Установка: /usr/local/lib/pkgconfig/x265.pc
Проверьте.
Инструмент командной строки
- Установка: /usr/local/bin/x265.exe
Проверьте.
Было бы также обычно для пакета библиотеки предлагать конфигурацию
переключиться на выбор построения общей / динамической библиотеки - libname.so
(Windows: [lib]name.dll
)
- или статическая библиотека - libname.a
(Windows: [lib]name.(a|lib)
) - по умолчанию
на общий доступ.
Вы выбрали статическую сборку:
DENABLE_SHARED=OFF
и соответственно получили только статическую библиотеку libx265.a
. Ваш
исполняемый файл командной строки x265.exe
имеет зависимость buildtime от этой библиотеки
и его заголовочные файлы - так же, как и любое другое приложение, которое требует
связь с libx265
. Но так как он был связан с static библиотекой
libx265.a
, исполняемый файл, когда-то построенный, физически включает в себя все части
libx265.a
от которого зависит и не имеет runtime зависимости от него; в самом деле,
Зависимость во время выполнения от статической библиотеки категорически невозможна.
Кроме того, поскольку вы указали:
-DCMAKE_EXE_LINKER_FLAGS="-static"
Связывание вашего исполняемого файла было полностью статическим, то есть компоновщик был обязан найти и связать статическую, не разделяемую версию каждой библиотеки, требуемой для связывания, не просто libx265
, а по опубликованным доказательствам это удалось.
Итог: ваша установка прошла точно так, как должна, и у вас полностью статический исполняемый файл x265.exe
.