20120224 :: py2exe의 옵션들

오랜만에 파이썬 코드 하나를 exe로 만들면서 사용한 py2exe의 옵션을 정리하는 차원에서 기록.

py2exe

py2exe는 파이썬(Python)으로 작성된 코드를 파이썬이 설치되지 않은 윈도 환경에서 바로 실행할 수 있는 실행파일로 만들어주는 도구입니다. 이 역시 별도의 어플리케이션으로 존재한다기 보다는 파이썬 모듈로 구성되어 있으며, 실행파일을 만들 때의 옵션들을 포함하는 별도의 빌드 스크립트를 짜야 합니다. 자세한 설명은 py2exe의 프로젝트 홈페이지를 참고하면 되겠습니다. 여기서는 옵션에 대한 설명을 요약합니다. 원문은 py2exe 위키에서 가져왔습니다.

옵션항목

  • console : 콘솔EXE[1. 도스 프롬프트 창이 뜨는 형태로 실행되는 프로그램]로 변환할 코드의 목록 (리스트 형태)[3. 파이썬의 리스트는 대괄호로 묶고, 각 항목은 컴마로 구분합니다.]
  • windows : 윈도EXE[2. 윈도창이 뜨는 형태로 실행되는 GUI 프로그램]로 변환활 코드의 목록 (리스트 형태). pyw의 포맷이라면 이 옵션을 선택합니다.
  • service : 윈도 서비스 클래스를 포함하는 모듈의 이름 (리스트 형태)
  • com_server : 윈도 COM 서버 클래스를 포함하는 모듈의 이름 (리스트 형태)
  • zipfile : 실행에 필요한 모듈을 zip 파일의 형태로 묶음. 값을 None으로 주면 실행파일로 묶이고 별도의 zip 파일이 생성되지 않음
  • options : 컴파일에 필요한 옵션을 지정 (사전 형태)[4. 파이썬의 사전(dictionary) 데이터는 중괄호로 묶고, 각 항목은 컴마로 구분되며, 각 항목은 콜론을 짝 지웁니다.] 사전의 형태는 options={“py2exe”:{ “옵션1″:”값1”, “옵션2″:”값2” …},}의 모양입니다.

Options

옵션 항목 중 다시 options 에서 사용되는 값들을 살펴봅니다.

  • unbuffered : 만약 true로 설정하면 표준입출력에서 버퍼를 사용하지 않는 실행 파일을 생성하게 됩니다.
  • optimize : 코드를 최적화 합니다. 0=최적화 안함 , 1=일반적 최적화, 2=추가 최적화
  • include : 포함할 모듈의 이름을 리스트 형태로 지정합니다.
  • packages : 단일 모듈이 아닌 패키지 이름을 리스트 형태로 지정합니다. 여기에 명시된 패키지는 통상 서브 패키지까지 포함합니다.
  • ignore : 패키지나 모듈을 찾다가 없으면 무시할 모듈을 명시합니다.
  • exclude : 제외할 모듈을 명시합니다.
  • dll_exclude : 제외할 DLL 파일을 명시합니다.
  • dist_dir : 최종 바이너리를 생성할 경로를 지정합니다. 기본적으로는 setup.py 파일이 실행되는 디렉토리에 dist 디렉토리를 생성하게 됩니다.
  • compressed : 압축된 zip 파일을 생성할 것인지 여부를 지정합니다. 불리언 값입니다.
  • xref : 불리언 값입니다. 교차 참조를 보여줄 것인지 여부를 지정합니다.
  • bundle_files : 번들링 여부를 결정합니다. 3=번들링하지 않음(디폴트), 2=기본번들링(파이썬 인터프리터를 포함하지 않음), 1=파이썬 인터프리터까지 번들링
  • skip_archive : 파이썬 바이트 코드 파일을 번들에 포함하지 않고 파일시스템에 직접 생성합니다.
  • ascii : (불리언) encodings, codec 패키지를 포함하지 않습니다.
  • custom_boot_script : 실행환경 세팅 후 실행할 파이썬 코드를 명시합니다.

별도의 예제는 표시하지 않습니다. 다만 단일 실행 파일을 생성하는 법을 안내하는 예전 포스팅을 링크합니다.

 

20110106 :: Mac용 AppStore 오픈!

드디어 Mac App Store가 열렸습니다. 애플로서는 지난 키노트때 90일 이내에 오픈한다는 약속은 지킨 셈입니다. IT관련 기자분들의 관심이 온통 CES에 쏠려 있어서인지 Mac AppStore에 대한 기사는 아직 찾아보진 못했습니다.

OSX안으로 들어온 AppStore

맥용 앱스토어를 사용하기 위해서는 OSX의 시스템 업그레이드가 필요합니다. 이제까지의 최신버전인 10.6.5에서 바로 오늘 (한국시간으로는 1월 6일 밤 10시 가량) 업데이트가 있었습니다. (그 이전에도 혹시나 하고 업그레이드 해 보았는데, iMovie와 Garrage Band만 업데이트 되더군요.

10.6.6으로 업데이트하고 재부팅을 하고나면 Dock에 Appstore 아이콘이 생깁니다. 이는 Mac Appstore만을 위한 별도의 앱스토어 어플이라 보면 됩니다. 실행되는 플랫폼이 OSX로 바뀌었을 뿐, iTunes 내에서 앱을 구매하는 방식과 완전히 똑같습니다.

일관된 UI 정책이야 뭐 애플의 기본 스킬이니 별다른 사용법은 따로 언급할 필요도 없을 것 같습니다.

예상외로 많은 앱들이 앱스토어 내에 있습니다. 위의 스크린샷에서 보이듯이 너무 친숙한 녀석이 눈에 띄는 군요. 그외 명불허전이라 불리는 Pixelmator와 마스터피스 iWork도 앱스토어를 통해서 구매할 수 있습니다.

그런데 iWork는 매번 새버전이 나오면 유료로 업그레이드를 해야 했는데, 앱스토어를 통해서 구매하면 평생 무료 업그레이드를 받을 수 있도록 바뀌는 건가요? 그렇다면 당장 이 악물고 결제하는 것이 옳겠군요!

무료 앱들도 몇몇 눈에 띕니다. 이들 중에는 그냥 장난감 수준의 앱들도 많은데, 훌륭한 녀석들도 눈에 띕니다. 특히 아이폰 용으로 너무 사랑하는 앱 중 하나인 Autodesk 사의 Sketchbook Express의 무료 버전이 있네요. (진짜 대박 앱입니다.) 그리고 트위터에 인수된 후 전혀 업데이트가 감감 무소식이던 tweetie도 Twitter 공식 앱이 되어 새로운 모습으로 탈바꿈 했습니다.

그리고 마지막으로 빼 놓을 수 없는 이 녀석. ㅋㅋㅋ

유료 애플리케이션을 돈주고 살 것인가

저야 뭐 이미 적지 않은 돈을 유료 콘텐트 구매에 사용하고 있는 판국입니다. (대부분이 게임일거라 생각하시면 오산입니다. ㅋ) 더군다나 mp3 다운로드도 정당하게 유료로 음원을 구매하는 당당한 소비자란 말입니다.

실제로 아이폰/아이패드용 앱스토어도 ‘어느정도 합리적인’ 가격에 앱들을 판매해 왔기 때문에, 많은 이들의 참여가 성공적으로 이루어졌을 거란 생각도 해봅니다. 그런데 아이패드용 앱은 똑같은 녀석인대도 비싸던데, 맥용 앱들도 꽤나 비싸기는 매 한가지 입니다. 물론 PC용 애플리케이션이 모바일/스마트폰 용 애플리케이션에 비해 “사용자 접점”이 훨씬 많고 예외 처리 등등에 고려할 사항이 많아 조금 골치아프긴 합니다만, 너무 가격이 부담스러우면 얼마나 팔릴 것이며 활성화가 될 것인가하는 점에서는 여전히 좀 의문스럽습니다.

또한, 오픈소스로 제작되는 출중한 유료 애플리케이션들이 아직 앱스토어에 등록이 되지 않은 것은 조금 많이 아쉽습니다. Text Wranggler의 경우에는 올라와 있으나 (개인적으로) 훨씬 선호하는 Fraise 같은 경우에는 앱스토어에는 아직 없는 듯 하네요.

우리 나라는 소프트웨어 산업, 그중에서도 특히 민간 부분은 거의 전멸과 비슷한 시장 상황입니다. 오죽하면 이제 더이상 패키지로 발매되는 게임도 더 이상 없다고 봐도 좋을 수준이 아닙니까.

지식에 의해 만들어진 콘텐트. 이런 디지털 콘텐트가 제 가치를 인정 받지 못하고 물이나 공기처럼 그냥 무한정 퍼다 쓰면 좋다는 인식이 너무나 팽배하여 국내에서의 맥 앱스토어 성공 여부는 뭐 사실 잘 모르겠습니다. (오죽하면 한국은 닌텐도DS 게임패키지 보다 DSL 기기가 더 많이 팔린 나라입니다.)

충격적인 사실은  제 주변의 많은, “개발자”들도 ‘아니, 앱을 왜 돈주고 사요’라고 말하는 사람들이 대다수라는 거지요. (아 이 정도면 거의 막장인데요)

그럼에도 불구하고

그래도 쓸만한 앱을 찾아 밤새 눈 벌겋게 인터넷을 뒤지는 일은 차츰차츰 줄어들거라 생각됩니다. 그리고 “거의 동일한 플랫폼으로 통합되고 있으므로” iOS에서 축적된 많은 앱들이 OSX용으로 대거 출시될 것으로 기대되고, 또 한편으로는 멋진 OSX용 애플리케이션들도 점차 편리하게 AppStore에서 구매할 수 있는 세상이 되었습니다. 이러한 편리함은 사람들에게 심심풀이 게임부터 시작해서 앱들을 차츰차츰 구매하게 하는 습관을 들이게 할 것이고, 이 것이 결국에는 ‘어둠의 경로’를 통해 애플리케이션을 사용해 오던 사람들을 양지로 끌어내고 새로운 시장을 만들어 낼 것이라는 것은 거의 확실해 보입니다.

다만, ‘어플은 공짜’라는 기존의 인식이 가로막는 장벽을 쉽게 넘고 갈 수 있도록, 시장이 커지는 만큼 적절한 가격대로 앱의 가격대가 조정이 되어야 하는 것도 필요해 보입니다. 설치가 아무리 편리하더라도 쓸만한 앱들이 너무 비싸다면, 특히 아이폰과 똑같은 앱인데 훨씬 더 비싸다면 그만큼 메리트가 떨어지는 것이 될테니까요.

맥 앱스토어가 한국에서 얼마나 성공을 거둘지 지켜보는 것은 꽤 재밌을 것 같습니다. 낮은 맥사용율과 유료 앱 결제에 대한 인식 등, 기본적인 조건에서부터 일단은 열세라 판단이 되다보니 말이지요.

보너스

일단 무료 앱 중에서 설치해 볼 만한 녀석들을 몇 개 소개합니다.

  • Twitter : Tweeite의 신규 버전. 보다 깔끔하긴 한데, 전 예전 버전이 더 마음에 드네요. ㅠㅠ
  • Mindnodes : 초경량 마이드맵 작성 프로그램. 가볍고 깔끔합니다.
  • Sketckbook Express : Autocad로 유명한 AutoDesk사의 야심작. 무조건 받으세요.
  • Solitaire Greatest Hits :  평이 좋은 1인용 카드게임

그리고 유료라면 단연, Angrybird 입니다. ㅋ 물론 iWorks도 (가격이 셉니다만) 충분히 가치가 있습니다. 특히 iWorks는 그 자체의 가치를 하는 것은 물론이요, 이를 설치한 Mac의 가치를 극대화하는 애플리케이션이라 감히 평가해 봅니다.

만사가 짜증

그저 만사가 짜증나고 기분은 다시 바닥으로 내려온 오후. 억지로라도 기분을 띄워보려했는데 아마도 그게 비등점에는 달하지 못했나보다.

이런 날엔 창문 열고 따뜻한 커피를 마시다, 빗줄기가 굵어지길 기다리며 시간을 보내고 싶다.

회식이고 나발이고 집에가고 싶어. ㅠㅠ

우리가 몰랐던 충격적인 상식… 과 그 진실

인터넷을 다니다 보면 이런 글들 많이 보게 됩니다. 주로 2ch 등지에는 쓸데없는 잡지식이라고 해서 이런 글들이 꽤 많이 올라오는 듯 하죠. 트위터에서도 어떤 고등학생이 이런 류의 내용을 하루에 하나씩 올려서 유명해졌다고도 합니다. 암튼 사실 아무도 이런 사실에 대해서는 확인하려 하지 않고, 내용들만 꼬리에 꼬리를 물고 점점 퍼져 나가는 듯 하여 찾을 수 있는 범위 내에서 조사하여 진위를 파악해 보고자 합니다.

로열티

세계에서 가장 많이 불려지는 노래는? – ‘Happy birthday to you’ 1936년 밀드레드와 패티힐이 작곡했는데, 현재까지 로열티를 받는다.

멜로디 원안은 1893년에 작곡되었으며, 저작권등록은 1935년에 이루어졌다. 이 노래는 약 500만불의 가치를 지닌 것으로 평가되고 있고 저작권을 보유한 회사 서미 컴퍼니는(워너/샤펠 뮤직에 2천 5백만불에 인수되었다) 2030년까지 저작권에 의한 로열티를 받을 수 있기를 주장하고 있다.

바닷물 속에 있는 염분은 육지를 150m 두께로 덮을 양이 들어있다?

바닷물 속에는 엄청난 양의 염분이 들어있는 것은 사실이나, 이 염분이 육지를 몇 m로 덮을 것인지는 염분의 양도 중요하지만 입자의 크기도 중요하다. (빻기전의 쌀과 빻은 후의 쌀가루를 상상해보시라)  입자가 고울수록 입자간의 빈 공간도 적어지므로 밀도가 올라가므로 소금 입자의 굵기에 따른 편차도 꽤 많이 날 것이다.

소리나는 꽃

노란 앵초꽃은 새벽녘에만 핀다. 그리고 꽃이 필 때는 마치 비누방울이 터지는것 같은 귀여운 소리가 난다.

근거를 찾을 수 없음. 앵초꽃에 대해 검색한 결과에서 소리가 난다는 내용은 해당 fact가 실렸던 2ch 스레드의 사본 (혹은 번역본) 뿐임.

오스트레일리아에는 국가가 없다. 그래서 올림픽에서 금메달을 따도 국가가 울리지 않는다.

“힘차게 나아가는 오스트레일리아”라는 국가가 있다. 다운받기

발을 따뜻하게 하려면

양말을 신을 것이 아니라 모자를 써야 한다. 몸의 열기중 80%가 머리를 통해서 빠진다.

발의 온도는 혈액의 온도보다는 발의 피부가 맞닿은 곳의 온도의 영향을 당연히 더 크게 받는다.  우리가 옷을 입고 있을 때를 가정하고 몸에서 가장 열을 많이 배출하는 곳은  목과 머리여서 이런 이야기가 돌아다니느 것 같은데, 발을 따뜻하게 하기 위해서는 모자보다는 양말을 신는 것이 가장 효과적이고 또 정상인처럼 보인다.

사랑은 가슴에서 오는것?

사랑이라는 감정은 가슴에서 오지 않고 뇌하수체에서 온다. 사춘기 이전에 뇌하수체종양 때문에 수술 받은 사람은 결코 사랑에 빠지지 않는다.

아주 예전에 어떤 여성 잡지에 실리기 시작하여 싸이를 타고서도 많이 퍼진 내용. 그러나 최근의 뇌스캔에 의한 연구 결과, 호르몬과 무관하게 뇌의 흥분 반응에 의한 ‘애정’을 확인하는 것이 가능했고, 결혼 10년차 이상 부부의 경우에는 호르몬 영향 없이 뇌의 흥분이 유발되는 것이 확인됨.

결혼이란

결혼하지 않은 사람은 결혼한 사람에 비해 정신병에 걸릴 확률이 7.5배 높다.

통계적으로 확인된 사실이다. 1975년 미국 통계에서 10만명당 미혼자의 정신병 발병은 685.2명, 기혼자는 89.9명.

천재라는것은?

레오나르도 다빈치는 오른손으로 그림을 그리고 왼손으로 글을 쓸 수 있었으며, 미국의 제임스 가필드 대통령도 오른손으론 라틴어, 왼손으론 그리스어를 썼다.

미국20대 대통령인 제임스 가필드는 최초의 왼손잡이 대통령이었다. 또한 최초로 영어와 독일어로 유세를 펼쳤으며, 같은 날 상원의원과 대통령에 동시에 당선되었다. (동시에 라틴어와 그리스어를 썼다는 이야기도 종종 보인다)

코카콜라

코카콜라 비밀을 아는 사람은 전세계에서 단 2명뿐이다. 원래는 7명이었으나 5명은 죽고 2명만 남은 것인데 설탕, 탄산수, 캐러멜,인산, 카페인,쓰다 남은 코카잎과 콜라콩을 혼합한것이나 1%가 밝혀지지 않아 수많은 화학자가 80년이상 노력했으나 헛수고였다. 이 2사람도 죽거나 비밀을 잊어 버리게 되면 조지아 신탁은행에 비밀문서를 개봉한다. 그러나 미 약물관리국은 특정한 주원료제품은 밝히지 않아도 된다는 규정이 있기 때문에 앞으로도 결코 알지 못하게 될 것이다.

뻥이다. 미 식품의약청에 원료 성분 중 1개를 공개하지 않아도 된다는 규정이 있어서 생긴 루머임. 레시피도 없이 어떻게 콜라를 대량생산 할 것인가?

샴페인

샴페인잔에 떨어진 건포도는 잔안에서 뜨고 가라앉기를 계속한다

탄산수 종류는 모두 가능하다. 사이다에 그냥 포도를 빠뜨려서 집에서 실험해 보시라. 포도에 거품이 달라붙으면 평균 비중이 작아져서 떠오르다가, 수면에서 거품이 터지면 다시 평균비중이 증가하여 가라앉고, 가라 앉는 중에 다시 거품이 붙고… 그래서 계속 움직인다.

토마토는?

과일이 아니고 채소.

미안하지만 땡. 토마토는 채소가 아닌 과일이다. 채소냐 과일이냐를 구분하는 기준 자체가 사실 중구난방이기는한데, 학술적으로는  식물의 씨방 혹은 꽃받침으로부터 만들어지고 씨앗을 포함하고 있으므로 과일로 분류하나, 요리쪽 분야에서는 달콤한 요리에 사용되지 않고, 일반 채소와 같은 용도로 사용한다하여 채소로 보는 것임.

그렇다면 오이는?

채소가 아니고 과일.

토마토가 과일이라는 것보다 더 충격 아닌가? 씨방이 발달되어 과실이 되었으므로 과일이다.

감자는?

뿌리가 아니고 줄기.

요즘은 유치원생들도 알더라.

바나나는?

나무가 아니고 여러해살이풀이다.

나무를 잘라보면 나이테가 없음.

양파는?

백합의 일종.

 

오리가 꽥꽥거리는 소리는 절대 메아리치지 않는다.

원인은 아직 모른다.

메아리친다. 이거 예전에 TV 중에 호기심천국인가 스펀지에서 실험한 바 있지 아마?

코뿔소의 뿔은 털이다.

털이라기 보다는 손톱과 비슷함. 실제로 코뿔소의 뿔은 케라틴을 주성분으로 하고 있는데, 샴푸 광고에 자주 언급되는 성분이다보니 ‘털’이라고 와전된 듯.

아메리칸 에어라인은 1987년 1등석에 제공되는 샐러드에서 올리브 한 개씩을 줄여 연간 4만 달러를 절감했다.

항공 업계의 비용 절감 사례 중 전설의 레전드(응?)로 추앙 받는 사례.

사형 도구로 사용되는 전기 의자는 치과의사에 의해 발명되었다.

에디슨이 발명했다는 소문이 더 유명함. 치과의사이자 전직 증기선 엔지니어였던 알버트 사우스윅(Albert Southwick)박사가 1881년에 발명하였다.

1865년 2월에는 보름달이 없었다.

틀렸다. 1865년 2월 10일이 보름달이 뜬 날이다. 근데 여기 저기 옮겨지는 과정에서 연도가 잘못된 것 같다. 1866년 2월에는 보름달이 없었음. (1866년 1월31일 보름달, 1866년 3월1일 보름달) 보름달에서 다음 보름달까지의 주기를 삭망월이라하고 이는 29.5일에 해당함. 따라서 위와 같이 보름달이 없는 2월은 드물기는 하지만 적지 않게 발견할 수 있음. 공교롭게도, 이 글이 쓰여지는 올해 2010년의 2월에도 보름달이 없음. (1월 30일과 3월1일이 보름달)