Eddie Choi
71
2022-08-05 23:12:33
5
157

초보질문) terminal / vi / C / gcc / git 코딩을 하면서 개념부족


안녕하세요. 맥 사용자 입니다.
터미널 환경에서 직접 vi(편집기)로 c언어 코드를 넣어 gcc(컴파일러)로 실행, 

이를 git 으로 관리, 제가 연습한 코드를 git hub에 올리려고 합니다. 


Q1.
터미널을 통해 vi 편집기로 파일을 만들고 c언어 코딩을 넣었는데
vsc는 제가 입력한 코드가 컴파일하면 결과가 보이거든요. 
허나 vi에서는 :wq를 저장하고 실행과 출력을 어떻게 해야할지 모르겠습니다. 이부분이 gui로 되어있는 vsc보다 더 어렵게 느껴져요. ㅜ 

Q2. 
그리고 이 과정을 터미널로 git으로 관리하려면 다시 터미널에서 git 관련 명령어와 함께 파일을 관리하면 되나요?
이후 github  등록과정은 어떤걸 참고하면 될까요.

왕초보인데 기본이 되는 것부터 공부하려니 생각보다 어렵게 느껴지고 있습니다. 

그럼 답변을 기다릴게요!   

0
  • 답변 5

  • 고등어통조림
    2k
    2022-08-05 23:57:48

    꼭 맥에서 그 공부를 해야 하나요?

    그거 찾아서(구글 검색) 본인 맥에 적용하는 게 공부고.. 그걸 위해서 맥에서 코딩하시는 것 같은데요

    1은 gcc 명령어로 목적파일 만들고 컴파일하고 그 후에 실행파일 만들어지면 실행 … 이렇게 알고 있는데

    저 gcc도 옵션이 다양하게 있을 겁니다

    그리고 회사에서는 아예 그 과정을 쉘 스크립트로 짜서 만들어놓고 돌렸던 걸로 기억하는데 코드가 길어서 세부내용은 잘 몰라요

    2는 모르겠음

  • 킁킁탐정
    960
    2022-08-06 00:05:15

    터미널 환경에서 개발을 시작하기 위해서는 생각보다 많은 것을 알아야합니다. 게다가 하루아침에 배울수 없을 만큼 다양성이 존재합니다. 가능하면 GUI 환경에서 개발하시기를 권장합니다.


    A1. 단순하게는 ex mode에서 명령어를 실행하는 ! 이용하는 방법이 있습니다. 예를들어 :!ls 하면 현재 디렉토리 목록을 보여주는 식으로 시스템 명령어들을 그대로 이용할 수 있습니다. gcc를 컴파일하는 bash script를 만들고 이것을 !script_name 으로 실행하면 매번 컴파일과 실행할 수 있습니다. 하지만 매우 불편하실겁니다.

    A2. vim에는 수 많은 플러그인이 있습니다. 여기에는 git 관련도 많습니다. 하지만 lazygit이나 gitui같은 터미널 tui 도구를 이용하는게 상대적으로 더 편리합니다.


    가능하면 https://spacevim.org/ 같은것을 설치하셔서 최대한 IDE 느낌을 살려서 사용해보세요.




  • Eddie Choi
    71
    2022-08-06 17:34:21

    @고등어통조림  넵. 이번에 사실 42서울에 입교를 위해 준비중인데 다른 분들의 개발공부 진입하는 것과는 완전 다르더군요. 가장 기본의 기본을 배운다고 생각하고 있어서 어렵지만 직접 구글링을 하며 공부하도록 하겠습니다. 코드를 짠 뒤 gcc로 목적파일 만들고 컴파일 후에 실행파일을 만드는.. 감사합니다.


  • Eddie Choi
    71
    2022-08-06 17:38:50

    @킁킁탐정 터미널 환경에서 개발하기 위해 많은 공부가 필요함을 느끼고 있습니다.  참가하려는 42서울이라는 곳에선 CLI 환경으로 진행되다보니 이렇게 시작하게 되었습니다. (나름 이 공부 루트에도 이유를 찾았습니다.) 

    spacevim.org 에 대해서 공부해보겠습니다.:)



  • 킁킁탐정
    960
    2022-08-07 04:38:13

    vim을 plugin 환경부터 세부 설정까지 구성하고 거기에 vim 명령어까지 배우려면 정말 많은 시간이 필요하기 때문에 미리 구성된 spacevim같은것을 사용하면 여러모로 빠르게 시작할 수 있습니다.

    아래 페이지의 내용이 아마 원하시는 답변에 가깝지 않나 생각됩니다.

    https://spacevim.org/use-vim-as-a-c-cpp-ide/


    참고하세요.



  • 로그인을 하시면 답변을 등록할 수 있습니다.