메아리 저널

Packman

C++ 프로그램은 그 특성상 템플릿을 쓰기 시작하면 실행 파일 크기가 엄청나게 불어 나는 경우가 꽤 있다. 나는 실행 파일 크기가 커지는 꼴을 죽어도 보기 싫기 때문에 컴파일 스크립트에다가 UPX로 압축하도록 설정해서 쓰고 있었다. 하지만 UPX를 쓰다 보면 특정한 dll 파일은 헤더를 완전히 깨 먹어서 압축한 걸 다시 풀어도 실행이 전혀 안 되는 문제가 있다. (이런 얘기가 한 두 번 나온 건 아닐텐데 비교적 최근에 나온 UPX 개발 버전도 여전히 같은 현상이 발생한다.) 어쩔 수 없이 exe 파일에만 적용하고는 있는데, dll만 1메가가 넘는다던지 하는 상황에서는 상당히 아까운 일이 아닐 수 없다.

그래서 아예 UPX 대신에 다른 오픈 소스 실행 파일 압축 프로그램을 찾아 보다가, 이런 좋은 물건을 발견했다.

Packman 실행 화면

바로 Packman! 이 프로그램은 윈도우 환경만을 대상으로 하지만 덕분에 세밀한 설정도 가능할 뿐만 아니라 dll 헤더도 안 깨뜨려 먹는다. 예를 들어서 압축된 섹션의 이름을 설정한다던지 (-_-;) 리소스 중 어느 걸 남기고 어느 걸 빼 낼 것인지 등등을 모두 설정할 수 있는 것이다. 게다가 소스 코드는 public domain으로 배포된다!

GUI만 지원하기 때문에 컴파일 스크립트에 집어 넣기는 꽤 곤란하지만 매우 만족스럽다. 소스 코드가 공개되어 있으니 한 번 CUI 버전을 만들어 봐야 할 것 같다. :)

Packman 홈페이지는 현재 접속이 안 되지만 Softpedia에서 실행 파일을 받을 수는 있다. (2010-03-25)

이 글은 본래 http://tokigun.net/blog/entry.php?blogid=78에 썼던 것을 옮겨 온 것입니다.


(rev 553c824afb91)