Инструменты для разработки на С++ под линукс

Не подскажите какие инструменты для разработки программ на С++ сейчас популярны? Интересует в первую очередь то, что используется в компаниях, которые занимаются разработкой ПО под линукс. Есть ли какой-то джентльменский набор для разработки? Так сказать, стандарт «де факто»?

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, а исполняемый модуль может работать на голой ОС?

Для программ, откомпилированных clang, нужна виртуальная машина?

Нет.
https://habrahabr.ru/post/47878/

Удивлен, что увидел в этом списке

Есть довольно большие проекты на нем написанные. У меня есть знакомые инженеры, которые её используют для программирования своих контроллеров.

Eclipse — много наслышан. Немного напрягает, что написан на Яве. Напрягает, что, судя по описаниям, это что-то монстроузное

Это монстр. Если им не уметь пользоваться, то он загрызёт пользователя. Писал на нем некоторые библиотеки, а также имеется плагины для avr.

QtCreator — это действительно хорошо работает, если не использовать фреймворк Qt? Т.е. если использовать просто как универсальную IDE?

Сложно сказать. Может работать нестабильно, как и все IDE, может тормозить в крупных проектах с автоподстановкой от clang, но и другие IDE, которые умеют автоподстановку (например, Visual Studio с её IntelliSense) тоже жутко тормозят.

CLion — 30-дневный триал. Дальше — за деньги. Не пойдет.

У меня уже давно лицензия истекла. Не покупал заново, и даже не знаю сколько оно сейчас стоит.

Geany — вроде всё неплохо

Это больше текстовый редактор с поддержкой исполнения команд. Очень шустрая IDE, но для больших проектов может не сгодиться. Зато для маленьких вполне может подойти. А дебаггер и в консоли можно использовать.

В общем, берите, выбирайте.

Т.е. альтернатива: QtCreator или Eclipse.

И то, и то, на сколько я понимаю, вещи достаточно тяжелые. Как в смысле объема-установки-настройки, так и в смысле освоения. Я прав?

Но вроде, судя по некоторым признакам, по крайней мере в open source сообществе, более популярен Eclipse. Это так?

Я для себя ни как не могу решить в какую сторону направить усилия. С одной стороны нужно, что бы это было востребовано (со стороны работодателя, например), с другой стороны, что бы минимизировать затраты сил на освоение и, что самое главное, что бы это был не просто интеллектуальный текстовый редактор, а инструмент, с которым удобно работать и который решает весь спектр задач при разработке. (Да, как бы вы не относились к VS, но пока я солидарен с Ломом: VS — хороший инструмент, даже не смотря на имеющиеся косяки.)

Что скажете? Eclipse?

Но вроде, судя по некоторым признакам, по крайней мере в open source сообществе, более популярен Eclipse. Это так?

Для С++ — нет.

Как в смысле объема-установки-настройки, так и в смысле освоения. Я прав?

Устанавливается с помощью инсталятора, как под винду, так и под линукс. Под винду, может, чуть нужно настроить. Под линуксом дефолтный компилятор и т.д. подхватывается сразу. В остальном как и везде — сделали проект и пишем. Но с Eclipce нужно уметь работать. Это очень большой монстр, которого нужно приручить, прежде чем совать ему руку в рот. :)

Я для себя ни как не могу решить в какую сторону направить усилия. С одной стороны нужно, что бы это было востребовано (со стороны работодателя, например), с другой стороны, что бы минимизировать затраты сил на освоение

QtCreator.

а инструмент, с которым удобно работать и который решает весь спектр задач при разработке.

Нет еще такого инструмента. Сегодня пишем на Qt с QML, и здесь выбор очевиден, а завтра заказ на MFC — выбор также очевиден. Инструмент нужно подбирать под конкретную задачу, а не задачу под инструмент.

Да, как бы вы не относились к VS, но пока я солидарен с Ломом: VS — хороший инструмент, даже не смотря на имеющиеся косяки.

Хороший != Нравящийся. Он достаточно хорош, но мне не нравится.

Что скажете? Eclipse?

Если имеется пара лишних недель/месяцев на его осваивание, на настройку его парсеров и т.д., то можно. Если нет, то QtCreator

Инструмент нужно подбирать под конкретную задачу, а не задачу под инструмент.

Это понятно. Для меня сейчас задача — набрать базу инструментов, из которых можно потом выбирать.

Для меня сейчас задача — набрать базу инструментов, из которых можно потом выбирать.

Тогда за основу можно взять QtCreator. Ну и autotools, cmake. Это обеспечит твою совместимость со многими продуктами, которые придется делать и собирать.

Внимание! Это довольно старый топик, посты в него не попадут в новые, и их никто не увидит. Пишите пост, если хотите просто дополнить топик, а чтобы задать новый вопрос — начните новый.

Ответить

Вы можете использовать разметку markdown для оформления комментариев и постов. Используйте функцию предпросмотра для проверки корректности разметки.

Пожалуйста, оформляйте исходный код в соответствии с правилами разметки. Для того, чтобы вставить код в комментарий, скопируйте его в текстовое поле ниже, после чего выделите то, что скопировали и нажмите кнопку «код» в панели инструментов. Иначе ваш код может принять нечитаемый вид.

Либо производите оформление кода вручную, следующим образом:

``` #include <iostream> using namespace std; int main() { // ... } ```

Предпросмотр сообщения

Ваше сообщение пусто.