Что это за "исправление скриптов сборки" для компиляции x264? - PullRequest
0 голосов
/ 29 мая 2020

Я пытаюсь скомпилировать сборку c, полностью настроенную на исходный код ffmpeg, с дополнительными кодеками из VideoLAN, такими как их код x264 c. В конечном итоге я создаю для использования в Windows с Visual Studio 2015 C ++, поэтому я сравниваю несколько руководств по компиляции для своих инструкций.

В приведенном ниже руководстве (я нашел через поиски Google) показано, как скомпилировать x264 с помощью цепочки инструментов VS2015 в MSYS2 без каких-либо специальных шагов: https://gist.github.com/RangelReale/3e6392289d8ba1a52b6e70cdd7e10282

Хотя в этом другом руководстве, предлагаемом на страницах руководства по компиляции с веб-сайта ffmpeg, оно включает шаги для «исправления сценариев сборки» для x264: https://www.roxlu.com/2019/062/compiling-ffmpeg-with-x264-on-windows-10-using-msvc

Проблема в том, когда я " исправить сценарии сборки "сценарий конфигурации больше не находит компилятор C. Сборка с использованием первого руководства, похоже, работает, но оно было написано почти 2 года go, так что, возможно, руководство ffmpeg вносит какие-то важные исправления? Я не знаю.

Я:

  1. Запуск «командной строки VS2015 x64 Native Tools»
  2. запуск оболочки msys2, загруженной pacman, через «msys2_shell.cmd -mingw64 -use- полный путь "
  3. git клонирование http://git.videolan.org/git/x264.git

и на этом этапе два руководства по компиляции различаются, первое руководство - просто компакт-диск в x264 и запускает configure, в то время как другое руководство выполняет некоторую загрузку curl файла config.guess, а затем некоторые манипуляции sed с ./configure. Учитывая, что эти инструкции «одобрены» сайтом ffmpeg, мне остается только гадать, что он делает и насколько критично то, что эти «особые» шаги приводят к сбою моей конфигурации x264.

1 Ответ

1 голос
/ 29 мая 2020

Все эти манипуляции с "config.guess" и "configure" нужны только потому, что в дальнейшем они запускают простой "msys2_shell.cmd", т.е. в режиме MSYS. Правильный / поддерживаемый способ в x264 - запустить оболочку в режиме MINGW32 или MINGW64 с параметрами «-mingw32» и «-mingw64», как вы (или запустить mingw32.exe / mingw64.exe вместо msys2_shell.cmd). Это изменение приводит к другому выводу команды "uname", что важно для конфигурации x264.

...