Tag Archives: gnu

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

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

Posted in 소프트웨어 | Also tagged , , , , , , , , , , , , , , , , | 6 Responses

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

make 재귀 호출에 의한 배치 빌드 지난 글에서, 하나의 라이브러리를 적절한 의미와 규모를 가지는 여러 개의 라이브러리들로 구성하되, 각 라이브러리의 개별 설정과 전체 라이브러리들의 일괄 변경을 쉽게 처리할 수 있도록 Makefile의 공용 include 파일들을 분리해 내고 이들을 쉽게 관리할 수 있는 빌드 디렉토리의 구성해 보았습니다. 이걸 가지고 하나로 빌드하던 라이브러리를 더 보기 […]

Posted in 소프트웨어 | Also tagged , , , , , , , , , | 7 Responses

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

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

Posted in 소프트웨어 | Also tagged , , , , , , | 2 Responses

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

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

Posted in 소프트웨어 | Also tagged , , , , , , | 1 Response

Make 기반 빌드 시스템 (5): 디버그 버전과 릴리즈 버전 빌드

디버그 버전과 릴리즈 버전 빌드 소프트웨어 개발자라면 누구나 한번쯤 경험해 보셨겠지만, 소프트웨어 개발하는 과정 중에는 종종 정말이지 아무것도 믿을 수 없는 상태에 빠질 때가 있습니다. 완벽해 보이는 코드(?)를 작성해서 컴파일하고 링킹해서 빌드된 결과물을 실제로 실행했건만, 의도한 대로 동작하지 않습니다. 갖가지 험악한 메시지를 뿜으며 비정상 종료되거나 조용히 더 보기 […]

Posted in 소프트웨어 | Also tagged , , , , , , | 3 Responses