в чем разница между lib-mingw и lib-vc2019 - PullRequest
1 голос
/ 11 июля 2020

Я новичок в программировании Windows и обнаружил, что множество готовых библиотек для Windows предлагают библиотеки, такие как lib-mingw, lib-vc2019, lib-vc2017 ...

Может ли кто-нибудь помочь укажите

  1. в чем разница? Какую библиотеку мне следует использовать в каком случае?
  2. Если я хочу использовать Clang на Windows, какую из них мне следует использовать?
  3. Почему эти разные библиотеки редко встречаются на Linux (давайте скажем, Ubuntu), скрывают ли эту деталь такие менеджеры пакетов, как apt? Другими словами, почему на платформе Linux нет таких вещей, как lib-g cc .a, lib-clang.a?

1 Ответ

1 голос
/ 11 июля 2020
  1. Mingw (G CC), VC2019 и VC2017 - разные компиляторы. Используйте библиотеку, соответствующую вашему компилятору.

  2. Я не уверен, но думаю, что ни одна из них не будет работать с Clang. По крайней мере на Linux G CC и Clang очень похожи. Я имею в виду, что они в основном двоично совместимы, много одинаковых флагов компилятора, много одинаковых расширений компилятора. Clang попытался упростить замену G CC в конвейере сборки. Но вся эта информация предназначена для Linux.

  3. Эти библиотеки не видны на Linux, потому что все эти компиляторы являются Windows компиляторами

Вы всегда можете создать библиотеку с помощью своего компилятора, чтобы использовать ее в своем проекте вместе с компилятором (если у вас есть исходные коды).

Если это сторонняя библиотека с закрытым исходным кодом и вы платный клиент, вы можете спросите, строят ли они это для вас. Обычно лучше добавить новый компилятор в конвейер сборки, чем потерять клиента.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...