Не могли бы вы прояснить немного больше, как это было для вас, что вы должны были изменить. Может быть, вы могли бы указать мне правильное направление, предоставив некоторые ссылки на информацию, которую вы использовали.
Моим первым источником были man
страницы инструментов . Просто введите
$ man toolname
в командной строке ( $
здесь часть приглашения, а не ввод).
В зависимости от платформы, они довольно хорошо написаны и могут быть найдены в Интернете. В случае make
, я фактически прочитал полную документацию, которая заняла несколько часов. На самом деле, я не думаю, что это необходимо или полезно в большинстве случаев, но у меня было несколько особых требований в моих первых заданиях под Linux, которые требовали сложного make-файла. После написания make-файла я передал его опытному коллеге, который сделал несколько небольших изменений и исправлений. После этого я в значительной степени знал make
.
Я использовал GVIM, потому что у меня был некоторый (но не очень) предыдущий опыт, я ничего не могу сказать об Emacs или альтернативах. Я считаю, что это действительно помогает читать .gvimrc
конфигурационный файл других людей . Многие люди размещают это в сети. Вот мой .
Не пытайтесь освоить все binutils сразу, слишком много функций. Но получите общий обзор, чтобы вы знали, где искать, когда что-то понадобится в будущем. Вы должны знать все важные параметры для g++
и ld
(средство компоновки GCC, которое вызывается автоматически, за исключением случаев, когда это явно запрещено).
Также мне любопытно, есть ли у вас завершение кода и подсветка синтаксиса при кодировании?
Подсветка синтаксиса: да, и намного лучше, чем Visual Studio. Код завершения: Да - иш . Во-первых, я должен признать, что я не использовал завершение кода C ++ даже в Visual Studio, потому что (по сравнению с VB и C #) это было недостаточно хорошо. Сейчас я не часто его использую, но, тем не менее, GVIM имеет встроенную поддержку завершения кода для C ++. В сочетании с ctags библиотекой и плагином, подобным taglist, это почти IDE.
На самом деле, то, что заставило меня начать, была статья Армин Ронахер. Прежде чем читать текст, посмотрите на скриншоты в конце!
Вы должны сначала скомпилировать перед тем, как получить (синтаксические) ошибки?
Да. Но то же самое для Visual Studio, не так ли (я никогда не использовал Whole Tomato)? Конечно, подсветка синтаксиса покажет вам несоответствующие скобки, но это все.
и как вы отлаживаете (опять же думаете, точки останова и т. д.)?
Я использую gdb
который является инструментом командной строки. Там также графический интерфейс называется DDD
. gdb
это современный инструмент отладки и может делать все, что вы можете сделать в IDE. Единственное, что меня действительно раздражает, это чтение трассировки стека, потому что строки не имеют отступов и форматирования, поэтому очень сложно сканировать информацию, когда вы используете много шаблонов (что я и делаю). Но они также загромождают трассировку стека в IDE.
Как я уже сказал, я имел «удовольствие» установить свои первые шаги на языке программирования Java, используя блокнот Windows и компилятор Java в командной строке в старшей школе, и это было, ну, конечно, кошмар! конечно, когда я мог сравнить это с другими курсами программирования, которые у меня были тогда, где у нас были приличные IDE
Вам даже не следует сравнивать современный полнофункциональный редактор, такой как Emacs или GVIM, с Блокнотом. Блокнот - украшенный TextBox
элемент управления, и это действительно имеет значение. Кроме того, работа в командной строке - это совсем другой опыт в Linux и Windows. Окна cmd.exe
сильно повреждены. PowerShell намного лучше.
/ РЕДАКТИРОВАТЬ: я должен четко упомянуть, что GVIM имеет редактирование с вкладками (как в просмотре вкладок, а не как табуляции) Мне потребовались годы, чтобы найти их, хотя они совсем не спрятаны. Просто введите :tabe
вместо обычного :e
при открытии файла или создании нового, и GVIM создаст новую вкладку. Переключение между вкладками может осуществляться с помощью курсора или нескольких различных сочетаний клавиш (в зависимости от платформы). Клавиша gt
(тип g, затем tв командном режиме) должна работать везде и переходить к следующей вкладке или вкладке №. п, если число было дано. Типа, :help gt
чтобы получить больше помощи.