libx264 скомпилирован с MinGW — отсутствуют __umoddi3, __udivdi3, _fseeko64 и __chkstk_ms

Я готов использовать x264 в своем проекте Windows, поэтому я собираю библиотеку из исходного кода с использованием MinGW и gcc в статическую библиотеку.

Библиотека и заголовок включены правильно, единственная проблема в том, что компоновщик теперь жалуется, потому что __umoddi3, __udivdi3, _fseeko64 и __chkstk_ms. Похоже, что эти функции являются частью некоторой стандартной библиотеки, но где я могу найти ее в Windows?

Благодарю.

1

Решение

Я не буду копировать / прошёл полный ответ здесь, но вы должны прочитать это тема на doom10.org
Короче говоря, вы не можете напрямую использовать скомпилированные MinGW библиотеки .a (статические или совместно используемые) в MSVS. Вам необходимо скомпилировать libx264.dll и сделать MSVS-библиотеку .lib из файла .def, а затем использовать эту библиотеку для компоновки.

1

Другие решения

Вы скомпилировали статическую библиотеку в MinGW и пытаетесь использовать ее в Visual Studio. Это не работает. Чтобы использовать статическую библиотеку, она должна быть скомпилирована с тем же компилятором и в той же среде выполнения, что и программа, которая ее использует.

Если вы используете это как статическую библиотеку, вы должны скомпилировать исходный код x264 в Visual Studio.

1

По вопросам рекламы [email protected]