Что компании используют для создания своих двоичных файлов? - PullRequest
7 голосов
/ 28 сентября 2010

Что современные компании используют для компиляции и связывания своих проектов?

Особенно в больших проектах make-файлы кажутся недостаточно удобными для масштабирования. Насколько я могу судить, многие компании используют либо собственные системы сборки, либо собственные сценарии поверх существующих систем сборки.

В крупных проектах используют make? Используется ли чистый муравей, мавен и т. Д. Или он завернут в какой-то скрипт?

Ответы [ 5 ]

4 голосов
/ 28 сентября 2010

В наши дни многие используют CMake, который автоматически генерирует make-файлы для различных платформ.К сожалению, CMake имеет свой собственный (странный) внутренний язык, поэтому я лично предпочитаю SCons - все, что он не может делать естественным образом, может быть легко добавлено - в конце концов, это просто код Python.Взгляните на список проектов ОС, использующих SCons .Многие из них - довольно большие и нетривиальные мультиплатформенные сборки.

2 голосов
/ 28 сентября 2010

Каждый продукт, над которым я работал более 10 лет в сфере телекоммуникаций, использовал make.Некоторые были относительно небольшими, другие были более 1М SLOC.Большая часть исходного кода была c, со значительным количеством c ++.Чаще всего используются сторонние источники, и все поставщики поставляют сборочные файлы со своими продуктами.

Помните, что система, которую вы используете для создания своего продукта, является программной.Независимо от того, написано ли это программное обеспечение для сборки на make, SCons или на каком-либо другом языке / системе, вы должны понимать язык, который вы используете для написания программного обеспечения, которое создает ваш продукт.Если вы этого не сделаете, то рискуете привести к появлению ошибок в вашем продукте, вызванных неправильной системой сборки.

2 голосов
/ 28 сентября 2010

Мы использовали компиляторы Intel с пользовательскими скриптами SCons, написанными на python, в моей последней компании. Разработка была на C ++. Продукты, которые мы выпустили, были огромными визуальными программными пакетами.

SCons : «SCons - это инструмент разработки программного обеспечения с открытым исходным кодом, то есть инструмент сборки следующего поколения. Думайте о SCons как об улучшенной кроссплатформенной замене Классическая утилита Make со встроенной функциональностью, аналогичной autoconf / automake и кэшам компиляторов, таким как ccache. Короче говоря, SCons - это более простой, надежный и быстрый способ создания программного обеспечения. "

1 голос
/ 28 сентября 2010

make и makefile столь же естественны для C, как и ant до java

0 голосов
/ 28 сентября 2010

Некоторые крупные проекты (например, Boost), которые Эшью делает в пользу одного из Jams .

...