C 언어 개발 환경

C 언어 개발 환경

C 개발을 위한 편리하고 효율적인 개발 환경 구축을 위한 아이디어를 찾고 있습니다. 내가 찾은Vim으로 C 편집하기매우 도움이 되지만 좀 더 폭넓은 조언을 듣고 싶습니다.

답변1

  • 이맥스///... - 저는 개인적으로 Emacs 사용자입니다. 제어 시퀀스로 인해 새끼손가락이 지치면 Viper 모드를 사용하십시오. Emacs는 Unix에 잘 통합되어 한 곳에서 모든 것을 매우 쉽게 제어할 수 있습니다. Vim은 여기에서도 좋은 일을 하지만 저는 Elisp가 Vim Script보다 더 강력한 확장 언어라고 생각합니다. C 개발을 위해 Emacs를 설정하는 모든 방법에 대해 이야기하면서 몇 시간을 보낼 수도 있습니다. 비행기 모드이미 언급했듯이 이것은 일의 시작입니다. 저는 Eclipse를 처음 사용하는데, 화면에 코드를 넣을 공간이 충분하지 않고 너무 비대해지는 것도 마음에 들지 않습니다(Vim 사용자는 Emacs에 대해 같은 말을 할 것입니다). 나는 또한 순전히 미학적 이유로 Java로 작성된 모든 것에 대해 부당하게 편견을 갖고 있습니다.

  • 상표- Vim, Emacs 또는 기타 언어가 파일에 하이퍼텍스트 링크를 만들 수 있도록 C(또는 기타 여러 언어) 기능에 태그를 지정하세요. 여기저기 돌아다니다가 어떤 함수를 보고 머리를 긁적이며 "이 함수의 역할이 무엇인가요? 이름이 좀 모호해요."라고 말한다고 가정해 보겠습니다. 붐붐, 바로 그 정의로 넘어갈 수 있습니다.

  • 번역가/Gnu 자동 도구- Make는 훌륭하지만 어떤 시점에서는 프로젝트가 테스트할 수 없는 다양한 시스템에서 자체적으로 구축될 수 있도록 추상화해야 합니다. Autotools는 *nix에서 코드를 빌드할 사람이 필요한 경우 유용하지만 어쨌든 Cmake에 익숙해야 합니다. Cmake 팀은 가능한 모든 구성으로 코드를 구축하고 사용자가 골치 아픈 일을 겪을 필요가 없도록 보장합니다. 프로젝트에서 다른 프로젝트를 쉽게 구매할 수 있도록 하려면 이러한 도구 중 하나가 필수적입니다.

  • 자식/수은/파괴/... - 버전 관리 소프트웨어를 연구하는 데 몇 달을 보낼 수 있지만 아마도 Git을 선택해야 할 것입니다. 이는 안정적이고 분산되어 있으며 @$!#%& Linux 커널이 이를 추적에 사용합니다. Linus에게 충분하다면 당신에게도 충분할 것입니다. Mercurial에 대해서도 좋은 소식을 들었고, G**gle에서도 이를 사용하고 있으니 나쁘지 않을 것 같습니다. 어떤 사람들은 Subversion이나 CVS 같은 것을 좋아하는 것 같습니다. 나는 그들이 독신이기 때문에 그들을 좋아하지 않습니다. 이는 나에게 매우 불편하고 제한적입니다.

  • 스투팜/위미이/X 모나드/... - 어느 시점에서는 작업 흐름을 유지하기 위해 수행하는 모든 작업이 결과를 극적으로 증가시킨다는 사실을 깨닫게 될 것입니다. 두뇌가 컨텍스트를 파괴하는 것을 방지하는 가장 좋은 방법 중 하나는 타일로 구성된 키보드 기반 창 관리자로 전환하는 것입니다. 나는 다음의 개인 팬입니다그루터기 WM, 창 관리자의 Emacs. 동적으로 사용자 정의 가능한 Common Lisp 프로세스 내에서 완전히 구현되므로 반복적으로 수행하는 모든 작업을 함수로 제거하고 명령에 바인딩할 수 있습니다. 좋은 것. 나는 다른 것에 대해 많이 알지 못하지만 아마도 더 자세한 설명은 다른 스레드에 맡기는 것이 가장 좋습니다. 가능할 때마다 키보드를 사용하십시오.

  • 광둥개발은행- 다른 디버거는 잘 모르지만 이게 사실상 표준인 것 같습니다.

  • 월그린드- 나는 이 일을 하는 다른 어떤 것도 모른다. Valgrind는 여러분이 원하는 모든 성가신 프로파일링/메모리 누수 검색에 필수적입니다. Valgrind가 없으면 malloc/calloc을 사용하여 코드를 작성할 수 없습니다.

답변2

저는 한동안 Vim을 사용했는데 VIM의 기본을 아는 것이 도움이 되었습니다. 어딘가에서 그런 기본만 갖춘 UNIX 상자를 항상 찾을 수 있기 때문입니다. 하지만 Emacs를 사용해 본 후 뒤돌아보지 않았습니다. Eclipse는 "현대적인" 대안이며 내 시스템에는 세 가지가 모두 있습니다!

답변3

이것은 지극히 개인적인 취향이므로 제가 무엇을 사용하는지 말씀드리는 것 외에는 할 수 있는 일이 별로 없다고 생각합니다. Emacs를 설정했어요비행기 모드, 작업 중인 파일을 주기적으로 컴파일하고 컴파일러 출력을 구문 분석하여 발생한 오류를 찾습니다. 버퍼의 오류/경고를 강조 표시하고 관련 컴파일러 오류 메시지를 표시합니다.

답변4

나는 임베디드 터미널과 함께 gedit를 사용합니다.

관련 정보