아니.. 컴파일이 뭐 이리 복잡하나. 이걸 다 알아야 돼?
내가 지금 계산기 만드는게 중요하지 컴파일 과정까지 알아아 하나?
대개 최종 파일만 필요하기 때문에 컴파일 과정을 볼일은 없다.
그러나 개발자라면 이정도는 알아야 한다.
먼저 간단한 c코드를 컴파일 해보고, gcc 컴파일러가 컴파일 과정 중 만든 각종 부산물(오브젝트 코드, 어셈블리 코드, 인스트럭션등등 )을 구경해보자.
이러한 과정을 일일히 알아야 하는 의구심이 들지도 모른다.
그러나... 알아야 한다.
간혹 make 파일을 만들어야 한다거나, 링크 디스크립트를 짜야할 일이 생길수도 있기 때문이다. 그렇게 따지자면 어셈블리어를 알 필요는 없잖아.
1940년대에는 이러한 일을 사람이 모두 직접 했으나 근래의 IDE 환경은 모두 알아서 해준다.
혹시라도 문제가 발생했을때 어느곳에서 문제가 생겼고 어떻게 해결해야 하는지 알기 위해서..
자 이제 Windows의 VS2019, Linux의 Ubuntu, ST사의 STM 디바이스에서 연습을 해보자.