Firebird и Boost сообщества предоставляют xxx.lib только для своих предварительно собранных xxx.dll двоичных файлов,
и я использую MinGW-w64 v7.0.0 с G CC v8.1.0 ,
, и этот последний ожидает libxxx .a файл, содержащий все функциональные символы xxx.dll для ссылки.
Для Boost , я могу собрать его из исходного кода для MinGW-w64 (хотя я все еще предпочитаю использовать предварительно собранные, потому что процесс сборки для таких больших наборов инструментов, как этот, занимает вечность).
Что касается Firebird , то это сборка невозможна при использовании MinGW-w64 , за исключением случаев, когда исправления внесены, и я не могу гарантировать, что пропатченные исходные файлы произведут безопасный fbclient.dll для производства.
И я слышал, что более новые версии MinGW-w64 принимают прямую ссылку на .dll ,
Это правда? это всего лишь MinGW-w64 .dll с, только C .dll с или включая C ++ , или любые другие .dll включая MSV C единицы.
Вы можете сказать: " Почему бы мне просто не использовать Msys2!? "
- Msys2 - это программное обеспечение, основанное на патчах, и я видел много библиотек, таких как libcurl , которые до сих пор не являются полностью c (версия * stati c, .a один, а не .dll.a один) все еще зависит от одного или нескольких внешних .dll с (не системных).
- Msys2 - это Dwarf2 на основе обработки исключений, и я использую sjlj one.
- Msys2 использует очень последние цепочки инструментов v9.2.0 и такие библиотеки, как winpthreads , libwinpthread и zstd , которые больше не поддерживаются в Windows XP (Windows XP !? ДА , большинство моих клиентов все еще используют его), поэтому я должен понизить цепочка инструментов.
Итак, какие у меня есть варианты, для ссылки здесь?
TIA.