metaclass (metaclass) wrote,
metaclass
metaclass

Не понимаю

Последние пару месяцев занимаюсь в основном разгребанием кросс-платформенного опен-сорсного софта на C++ и C.
Не понимаю некоторых вещей.
Первая - как это вообще все живет, потому что под виндой количество затычек вида "Visual Studio не поддерживает C99 и не содержит stdint.h, NAN и INFINITY" превышает все разумные рамки. Кроме этого, она ругается на posix-имена функций, не умеет в Intellisense если вложенность макросов более 1 (см. libuv, генерация перечислений и функций-конверторов для них), для precompiled headers нужно таскать stdafx.h, поэтому кроссплатформенные проекты обычно их отключают для студии и прочая.

Вторая - почему в начале исходника всегда пишут на полстраницы лицензию, имя файла, имя автора, дату изменения и прочее ненужное, но никогда не пишут ЧТО БЛЯДЬ ЭТОТ ИСХОДНИК ВООБЩЕ ДЕЛАЕТ.

Далее, маниакальный подход к генерации проектов для сборки - это вообще общий случай - в лучшем случае лежат в репе нормальные файлы проектов студии (firebird), далее - по нарастающей - самодельные makefile, генерация проектов с помощью cmake, gyp который генерирует проекты, скачивая себя с гитхаба (привет от роскомнадзора), и прочее такое.

Впрочем, несмотря на все вышеперечисленное, оно все работает, отлаживается в windbg и не требует тащить за собой 150 мб jre, эрланговых виртуальных машин, инсталлировать 200 мб дотнет-фреймворка и прочего такого.
Subscribe
  • Post a new comment

    Error

    Anonymous comments are disabled in this journal

    default userpic

    Your reply will be screened

    Your IP address will be recorded 

  • 37 comments