Author Archives: happyhuni

Make 기반 빌드 시스템 (9): 공유 라이브러리 지원

공유 라이브러리 지원 재활용하기 쉽고 필요한 라이브러리들과 응용 프로그램들을 한방에 빌드할 수 있는 빌드 시스템을 구축하는 사이, MyClient 포로토타입을 받아 간 우리의 영업맨, 어느 날 ‘짐짓 들뜬’ 표정을 지으며 달려 옵니다. 아~~, 갑자기 드는 불길한 예감! 아니나 다를까, 계약 딴거나 다름 없다며, 이제 정말 ‘사소한 거’ 하나만 해 주면 된다네요. 사소한 거라, 진짜로요? 아 그렇다니까. […]

Posted in 소프트웨어 | Tagged , , , , , , , , , , , , , , , , , | 6 Responses

Make 기반 빌드 시스템 (8): make 재귀 호출에 의한 배치 빌드

지난 글에서, 하나의 라이브러리를 적절한 의미와 규모를 가지는 여러 개의 라이브러리들로 구성하되, 각 라이브러리의 개별 설정과 전체 라이브러리들의 일괄 변경을 쉽게 처리할 수 있도록 Makefile의 공용 include 파일들을 분리해 내고 이들을 쉽게 관리할 수 있는 빌드 디렉토리의 구성해 보았습니다. 이걸 가지고 하나로 빌드하던 라이브러리를 MyNetwork, MyThread, MyProtocol 이렇게 3개의 라이브러리들로 나누었고, 덕분에 나중에 다른 프로그램 […]

Posted in 소프트웨어 | Tagged , , , , , , , , , , | 7 Responses

Make 기반 빌드 시스템 (7): 빌드 디렉토리 구성

빌드 디렉토리 구성 이제까지 작성한 예제 6.1을 가지고, 하나의 라이브러리와 이를 사용하는 여러 실행파일들을 한번에 빌드할 수 있습니다. 라이브러리에 새로운 소스 파일을 추가하거나, 새로운 실행파일의 추가하려면, Makefile의 한 줄만 고치면 됩니다. depend만 적절한 시점에 한번씩 실행시켜 주면, 수정된 파일들에 영향받는 파일들만 정확하게 컴파일해서 라이브러리와 이를 사용하는 실행파일들을 다시 빌드해 줍니다. 그런데 라이브러리에 포함되는 소스 파일들이 많아지면 […]

Posted in 소프트웨어 | Tagged , , , , , , , | 2 Responses

Make 기반 빌드 시스템 (6): 빌드모드 별 결과물 관리

빌드모드 별 결과물 관리 이전 글에서 작성된 Makefile 5.1의 경우, 디버그와 릴리즈 모드 구분을 하는 것까지는 잘 됐지만, 개발 과정에서 불편한 문제가 하나 있습니다. 예를 들어 먼저 디버깅 모드로 빌드해서 테스트, 문제 없이 잘 동작하는 것을 확인한 다음, 이제 버전 관리 툴에 커밋하기 전에 확인 사살 차원에서 릴리즈 모드로도 잘 동작하는 것을 확인하는 상황을 생각해 […]

Posted in 소프트웨어 | Tagged , , , , , , , | 1 Response