Инструменты для разработки на С++ под линукс
Внимание! Это довольно старый топик, посты в него не попадут в новые, и их никто не увидит. Пишите пост, если хотите просто дополнить топик, а чтобы задать новый вопрос — начните новый.
Внимание! Это довольно старый топик, посты в него не попадут в новые, и их никто не увидит. Пишите пост, если хотите просто дополнить топик, а чтобы задать новый вопрос — начните новый.
Не подскажите какие инструменты для разработки программ на С++ сейчас популярны? Интересует в первую очередь то, что используется в компаниях, которые занимаются разработкой ПО под линукс. Есть ли какой-то джентльменский набор для разработки? Так сказать, стандарт «де факто»?
IDE — QtCreator, CLion, Eclipse, Geany, Code::Blocks
Компиляторы gcc, clang.
Системы сборки cmake, autotools.
Спасибо за ответ.
CLion — 30-дневный триал. Дальше — за деньги. Не пойдет.
QtCreator — это действительно хорошо работает, если не использовать фреймворк Qt? Т.е. если использовать просто как универсальную IDE?
Eclipse — много наслышан. Немного напрягает, что написан на Яве. Напрягает, что, судя по описаниям, это что-то монстроузное. Напрягает, что заточен под Яву, а поддержка С++ — сторонним плагином. Подкупает, что одна IDE обеспечивает поддержку многих языков.
Geany — вроде всё неплохо, но похоже не поддерживает отладку. По крайней мере в описании я этого не обнаружил.
Code::Blocks — использую. По впечатлению, любительская поделка, которая потихоньку (очень потихоньку) допиливается до приличного состояния. Удивлен, что увидел в этом списке ))
clang — почитал википедию, но так и не понял, умеет ли делать обычный исполняемый файл. llvm — это же виртуальная машина, типа JVM или .Net? Правильно? Для программ, откомпилированных clang, нужна виртуальная машина? Или она нужна только для работы самого clang, а исполняемый модуль может работать на голой ОС?
Нет.
https://habrahabr.ru/post/47878/
Есть довольно большие проекты на нем написанные. У меня есть знакомые инженеры, которые её используют для программирования своих контроллеров.
Это монстр. Если им не уметь пользоваться, то он загрызёт пользователя. Писал на нем некоторые библиотеки, а также имеется плагины для avr.
Сложно сказать. Может работать нестабильно, как и все IDE, может тормозить в крупных проектах с автоподстановкой от clang, но и другие IDE, которые умеют автоподстановку (например, Visual Studio с её IntelliSense) тоже жутко тормозят.
У меня уже давно лицензия истекла. Не покупал заново, и даже не знаю сколько оно сейчас стоит.
Это больше текстовый редактор с поддержкой исполнения команд. Очень шустрая IDE, но для больших проектов может не сгодиться. Зато для маленьких вполне может подойти. А дебаггер и в консоли можно использовать.
В общем, берите, выбирайте.
Т.е. альтернатива: QtCreator или Eclipse.
И то, и то, на сколько я понимаю, вещи достаточно тяжелые. Как в смысле объема-установки-настройки, так и в смысле освоения. Я прав?
Но вроде, судя по некоторым признакам, по крайней мере в open source сообществе, более популярен Eclipse. Это так?
Я для себя ни как не могу решить в какую сторону направить усилия. С одной стороны нужно, что бы это было востребовано (со стороны работодателя, например), с другой стороны, что бы минимизировать затраты сил на освоение и, что самое главное, что бы это был не просто интеллектуальный текстовый редактор, а инструмент, с которым удобно работать и который решает весь спектр задач при разработке. (Да, как бы вы не относились к VS, но пока я солидарен с Ломом: VS — хороший инструмент, даже не смотря на имеющиеся косяки.)
Что скажете? Eclipse?
Для С++ — нет.
Устанавливается с помощью инсталятора, как под винду, так и под линукс. Под винду, может, чуть нужно настроить. Под линуксом дефолтный компилятор и т.д. подхватывается сразу. В остальном как и везде — сделали проект и пишем. Но с Eclipce нужно уметь работать. Это очень большой монстр, которого нужно приручить, прежде чем совать ему руку в рот. :)
QtCreator.
Нет еще такого инструмента. Сегодня пишем на Qt с QML, и здесь выбор очевиден, а завтра заказ на MFC — выбор также очевиден. Инструмент нужно подбирать под конкретную задачу, а не задачу под инструмент.
Хороший != Нравящийся. Он достаточно хорош, но мне не нравится.
Если имеется пара лишних недель/месяцев на его осваивание, на настройку его парсеров и т.д., то можно. Если нет, то QtCreator
Это понятно. Для меня сейчас задача — набрать базу инструментов, из которых можно потом выбирать.
Тогда за основу можно взять QtCreator. Ну и autotools, cmake. Это обеспечит твою совместимость со многими продуктами, которые придется делать и собирать.