Не уверен что вопрос для данного раздела, но не смог сделать правильный выбор.
Вопрос о сборке opensorce проектов в виде библиотек под windows.
Вкратце мой однажды внезапно успешный опыт. Как-то давно, делал я ради фана приложение работающее с файлами некой игры.
По мере развития оказалось, что часть данных этой игры может быть пожата zip`ом.
Пришлось подключать библиотеку zlib (если не ошибаюсь) для корректной поддержки такого вида данных.
После скачивания исходников меня настигла тоска и уныние. Поскольку сборка этого вашего хваленого опенсорса под винду — это Адъ и Израиль!
И что-то я психанул, создал в MSVC пустой проект для .lib файла, закинул туда все .h и .c файлы из исходников zlib. Подробностей уже не помню, но без всякого гемора MSVC собрал рабочую библиотеку, которую я успешно дальше использовал в своей программке для распаковки пожатых данных.
И вот сейчас, когда судьба опять подкинула сюрприз, в виде необходимости использовать опенсорсную либу, но которая без танцев с 3-мя бубнами одновременно нормально собирается только под линукс — у меня вопрос: А есть ли какая-то рабочая схема, по которой можно собрать любой кроссплатформенный опенсорс в виде нативной MSVC бибилиотеки.
В оригинале OpenSSL собирается каким-то привычным для опенсорс извратным способом.
Но я видел готовые сборки собранные для MSVC и имеющие привычный набор .lib для разных ключей сборки проектов /MTD /MT ... ещё чего-то там.
В общем хочется собирать библиотеки просто с помощью MSVC, без кучи всякого хлама навроде ActivePerl, MinGW, tclshl, bash скриптов и прочего зоопарка...
Или это в общем случае невозможно?
Просто я в последний раз видел такую систему сборки, которая после скачивания репозитария с гитхаба — некомпилябельна вообще. Исходники сперва нужно причесать километровыми скриптами, под определенную платформу, которые создадут ещё кучу файлов .h и .c, и только после этого можно запускать сборку проекта.
Я конечно далек от мира промышленного ПО, но на мой взгляд это какой-то ужас!
Или это норма в наше дни?
Я вообще поражаюсь, а как они это пишут? Скрипты для преобразования исходников в компилябельную версию по объему больше чем исходники самого проекта.
Там две команды сидит? Или там вундеркинды которые могут всё? На всех языках мира? и по ходу дела, в качестве хобби, каждый из них по субботам пишет свою систему сборки и свой скриптовый язык.