LINUX.ORG.RU

cmake || scons


0

0

Помогите выбрать!

Несколько критериев:

+ нужно будет генерировать tex документы

+ основная разработка под linux(скорее всего netbeans), но хотелось бы иметь возможность скомпилировать под Win с поддержкой intel compiler.


Вам бы лучше описать структуру проекта, и предполагаемые к использованию инструменты и библиотеки. Ибо генерировать tex документы не умеет ни одна известная мне система сборки, обычно она просто вызывает нужные утилиты, и, ни scons, ни CMake по дефлоту не умеют этого делать. Что не мешает (в обоих случаях) эту функциональность с легкостью дописать, а может и найти реализацию в интернете.

А вот интеграцию с netnbeans имеет только CMake (точнее наоборот netbeans с CMake), правда, кхм, весьма недоделанную, но хоть что-то. Кстати, интеграцию scons-а в IDE я вообще себе слабо представляю, что тут вообще можно сделать кроме вызова самого scons-а по нажатию кнопок, да подсветки синтаксиса?

Мы вот, в свое время, остановились на CMake, по причине полного отсутствия в scons, на тот момент, поддержки Qt4. Если не считать пары кривущих костылей, сейчас их вроде уже под выпрямили, но уже поздняк метаться. Хотя честно говоря scons выглядел намного вкуснее. А вот CMake, например, умеет собирать софт для Analog Devices-овских процессоров (хотя и кривовато), что тоже весьма пригодилось, ибо уже собирались писать свой вокэраунд, а тут такой подарок. Ну и на последок, команда разработчиков у CMake более вменяемая, в отличии от ... :)

SLiDER
()
Ответ на: комментарий от SLiDER

Кстати соврал, у сконса есть обертка для вызова латекса. А что Вы понимаете под «генерировать tex документы»?

SLiDER
()

CMake имхо попроще, SCons погибче, tex документы легко генерить и там, и там, но через внешние утилиты. Емнип, с интеграцией лучше у CMake, мы выбрали именно его в своё время (в том числе из-за вышеупомянутого Qt)

Divius ★★
()

В windows проще scons. Не надо ничего кроме самого scons'а. Хотя cmake проще и мне нравится больше.

k_andy ★★★
()
Ответ на: комментарий от SLiDER

Используемых технологий достаточно много:

+ Компиляторы: gcc, nvcc (cuda), intel compiler, microsoft compiler (Visual Studio 2008-2010)

+ Библиотеки: OpenMP, tbb, sdl, libconfig, CUDA

+ Предпологаемые IDE: Netbeans, vi, Texmaker

+ OS: Linux x64, Windows x64

Программа будет запускаться и выдавать статистику работы, после чего, эти результаты нужно обработать и получить из них tex файлы с таблицами и построить диаграмму с помощью gnuplot.

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

Проект предполагается большой и время компиляции приложения это тоже очень существенный критерий.

AoD314
() автор топика
Ответ на: комментарий от Kosyak

Для ускорения хотелось бы использовать ramdisk(как минимум под linux) и многопоточность. Вопрос: где это проще и лучше настроить ?

AoD314
() автор топика
Ответ на: комментарий от AoD314

> где это проще и лучше настроить ?

Пофик.

LamerOk ★★★★★
()
Ответ на: комментарий от AoD314

Многопоточность сборки есть везде, системы сборки без неё просто не рассматриваются.

legolegs ★★★★★
()

основная разработка под linux(скорее всего netbeans), но хотелось бы иметь возможность скомпилировать под Win с поддержкой intel compiler.

cmake поддерживает какие угодно среды и какие угодно компиляторы, поэтому выбирать надо его

Reset ★★★★★
()

Помнится, KDE перешло на cmake, т.к. их достали autotools, а под scons за 2 месяца не вышло перенести kdelibs. В cmake это сделали гораздо быстрее - в результате остановились на cmake.

Pavval ★★★★★
()
Ответ на: комментарий от Reset

Пейтон развёртывается на виндавсе легко. python-***.msi и всё работает.

«файлы проектов для родных сред» не нужны. Какой смысл в таких проектах если их править нельзя? Ну, то есть можно, но назад в cmake их всё равно руками переносить. А использовать «родную среду» только как редактор с кнопочкой «Build»?!

ТС спрашивал в частности про LaTeX... Так и представил себе редактирование tex в VS2010. :D

k_andy ★★★
()
Ответ на: комментарий от Reset

Вот, кстати, питон лично мне и не нравится в scons. Всё время тянет писать код вместо соответствующих правил.

k_andy ★★★
()
Ответ на: комментарий от Reset

Мне кажется маловато аргументов, пока до конца не решил еще, меня смущает сложность написание сборки приложения с CUDA, т.к нужно совмещать компиляцию cuda и cpp файлов.

AoD314
() автор топика
Ответ на: комментарий от AoD314

Не знаю как в скунсе с кудой, а в cmake оно из коробки. Никаких проблем с тем, чтобы совмещать компиляцию cuda и cpp файлов не испытывал.

Reset ★★★★★
()
Ответ на: комментарий от AoD314

Всем спасибо! Выбрал CMake и QtCreator в качестве IDE.

AoD314
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.