<?xml version='1.0' encoding="utf-8"?>
      <rss version='2.0'>
      <channel>
      <title>Форум на Исходниках.RU</title>
      <link>https://forum.sources.ru</link>
      <description>Форум на Исходниках.RU</description>
      <generator>Форум на Исходниках.RU</generator>
  	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=472783&amp;view=findpost&amp;p=3935486</guid>
        <pubDate>Tue, 03 Feb 2026 19:10:35 +0000</pubDate>
        <title>Подскажите, почему не собирается ffmpeg под Visual Studio 2026 ?</title>
        <link>https://forum.sources.ru/index.php?showtopic=472783&amp;view=findpost&amp;p=3935486</link>
        <description><![CDATA[PM123: Добрый вечер&#33;<br>
Попробовал собрать ffmpeg под Windows 10 и Visual Studio 2026. Для этого установил MSYS2.<br>
Запускаю configure в MSYS2 так:<br>
.&#092;configure --toolchain=msvc<br>
<br>
В результате получаю запись в логе (config.log):<br>
<br>
<div class='tag-code'><span class='pre_code'></span><div class='code  code_collapsed ' title='Подсветка синтаксиса доступна зарегистрированным участникам Форума.' style=''><div><div><ol type="1"><div class="code_line">#line 2 &quot;./ffconf.T5fox9W5/test.c&quot;</div><div class="code_line">&nbsp;</div><div class="code_line">#line 5 &quot;./ffconf.T5fox9W5/test.c&quot;</div><div class="code_line">check_host_cflags -options:strict</div><div class="code_line">test_host_cc -options:strict</div><div class="code_line">BEGIN ./ffconf.T5fox9W5/test.c</div><div class="code_line">&nbsp;&nbsp; &nbsp;1 &nbsp; int x;</div><div class="code_line">END ./ffconf.T5fox9W5/test.c</div><div class="code_line">cl.exe -options:strict -c -o ./ffconf.T5fox9W5/test.o ./ffconf.T5fox9W5/test.c</div><div class="code_line">Оптимизирующий компилятор Microsoft (R) C/C++ версии 19.50.35721 для x64</div><div class="code_line">(C) Корпорация Майкрософт (Microsoft Corporation). &nbsp;Все права защищены.</div><div class="code_line">&nbsp;</div><div class="code_line">cl: командная строка warning D9035: использование параметра &quot;o&quot; нежелательно, он будет удален в следующих выпусках</div><div class="code_line">test.c</div><div class="code_line">test_ld cc</div><div class="code_line">test_cc</div><div class="code_line">BEGIN ./ffconf.T5fox9W5/test.c</div><div class="code_line">&nbsp;&nbsp; &nbsp;1 &nbsp; int main(void){ return 0; }</div><div class="code_line">END ./ffconf.T5fox9W5/test.c</div><div class="code_line">cl.exe -options:strict -c -o ./ffconf.T5fox9W5/test.o ./ffconf.T5fox9W5/test.c</div><div class="code_line">Оптимизирующий компилятор Microsoft (R) C/C++ версии 19.50.35721 для x64</div><div class="code_line">(C) Корпорация Майкрософт (Microsoft Corporation). &nbsp;Все права защищены.</div><div class="code_line">&nbsp;</div><div class="code_line">cl: командная строка warning D9035: использование параметра &quot;o&quot; нежелательно, он будет удален в следующих выпусках</div><div class="code_line">test.c</div><div class="code_line">./compat/windows/mslink -nologo -out:./ffconf.T5fox9W5/test.exe ./ffconf.T5fox9W5/test.o</div><div class="code_line">.\ffconf.T5fox9W5\test.o : fatal error LNK1136: недопустимый или поврежденный файл</div><div class="code_line">C compiler test failed.</div></ol></div></div></div></div><script>preloadCodeButtons('1');</script><br>
Также на экран в MSYS2 выводится:<br>
<br>
<div class='tag-code'><span class='pre_code'></span><div class='code  code_collapsed ' title='Подсветка синтаксиса доступна зарегистрированным участникам Форума.' style=''><div><div><ol type="1"><div class="code_line">cl.exe is unable to create an executable file.</div><div class="code_line">If cl.exe is a cross-compiler, use the --enable-cross-compile option.</div><div class="code_line">Only do this if you know what cross compiling means.</div><div class="code_line">C compiler test failed.&quot;</div></ol></div></div></div></div><br>
<br>
Как видно из лога, MSVC вызывается с опцией `-o` вместо `-Fo`.<br>
В скрипте configure задумано, чтобы:<br>
- создавалась временная папка - ./ffconf.T5fox9W5,<br>
- в ней создавалась тестовая программа - test.c,<br>
- она компилировалась в объектник = test.o<br>
<br>
... но поскольку ключ задан неправильно, результатом является test.obj и не во временной папке,<br>
а в c:&#092;ffmpeg, откуда запускал configure.<br>
<br>
Вопрос: почему configure применяет не тот ключ ?<br>
Такое впечатление, что она не понимает, что нужно применять ключ для MSVC ... Но почему так получается ?]]></description>
        <author>PM123</author>
        <category>Кроссплатформенный C/C++: cl/gcc/Qt/Gtk+/WxWidgets</category>
      </item>
	
      </channel>
      </rss>
	