Hacker Who

Network is wide like the Universe. Allons-y!

맥북 에어 최적화 – 에어에서 개발하기

저희 집에서 사용하는 컴퓨터는 아가야옹님이 사용하시는 검둥이 맥북과 제가 사용하는 맥북 에어뿐입니다. 그리고 맥이 좋아 회사에서도 마찬가지로 저는 제 맥북 에어만 사용하고 있고요. (차마 돈이 없어서라곤 말 못…)

그래서 문서 작업이나 간단한 이미지 작업부터 개발까지 모든 영역에 걸쳐서 맥북 에어만 사용하고 있는데요. 대부분은 그리 큰 작업이 아니고, 개발도 웹사이트나 서버 개발을 주로 하는지라 서버에 접속해서 작업하기 때문에 터미널만 있으면 돼서 별 문제가 없었습니다.


하지만 최근 아이폰 프로그램 개발을 하다보니 로컬에서 컴파일 하는 경우가 생겼는데, 로컬에서 컴파일하는 건 프로젝트가 조금만 커지면 컴파일 하느라 시간을 다 보내게 생겼더군요. 그래서 저는 램디스크를 이용해 컴파일을 램에서 하도록 설정해서 쓰고 있습니다.

extra-xcode.png

먼저 램 디스크를 설정합니다.

램 디스크 프로그램이 여럿 있고 터미널에서도 설정할 수 있지만, 저는 System Preferences 에서 설정할 수 있는 가장 사용하기 편한 Espérance DV를 사용했습니다.

Picture 2.png

맥북 에어가 메모리가 아주 넉넉한 편은 아니라서 96M만 설정해서 사용하고 있는데, 아주 큰 프로젝트를 할 것이 아니면 이정도도 충분한 것 같습니다. 이름은 .PinkCat 으로 했죠. 앞에 "." 붙은 건 데스크탑에 표시 안하도록 자동으로 붙는 것 입니다.

그 다음 사용하시는 프로젝트를 여시고, 프로젝트 설정의 General 들어가셔서 Place Build Products 와 Place Intermediate Build Files 를 Custom location 으로 바꾸시고 아래 그림과 같이 자신이 설정한 램디스크 이름에 따른 디렉토리(/Volumes/.PinkCat)에 주의해서 원하시는 디렉토리 이름을 입력해 줍니다.

Picture 1.png

원래 이렇게만 해 주면 Build 탭의 Build Locations 부분이 자동으로 바뀌어 컴파일을 램디스크에서 하게 되는데요. 간혹 안되는 경우가 있으니 확인해보시고 각 설정을 아래와 같이 되어 있지 않으면 설정을 바꿔주세요.

Per-configuration Build Products Path
- $(BUILD_DIR)/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)
Per-configuration Intermediate Build Files Path
- $(PROJECT_TEMP_DIR)/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)
Precompiled Headers Cache Path
- $(PROJECT_TEMP_DIR)/SharedPrecompiledHeaders

더 빠르게 하고 싶으면 프로젝트 소스 전체를 램디스크에 카피해놓고 작업하면 되는데요, 이렇게 할 경우 램디스크가 예기치 않게 Eject 되는 경우 낭패를 볼 수 있고, 작업할 때 마다 백업 및 리스토어를 해 줘야 되기 때문에 불편해서 사용하지는 않고 있습니다.

물론 가장 좋은 것은…

에어에 SSD를 달아주는 것이겠지요. ㅜ_ㅜ

posted by 골빈해커 in 매킨토시 and have Comments (4)

Comments (4 Responses)

rkJun on January 21st, 2009 at 20:35

앗 좋은 정보 감사드립니다.
현재 에어가 봉인중인 상황인데, 봉인풀리면 한번 해봐야 겠네요^^

Widyou on January 22nd, 2009 at 8:59

요즘 자주보이는 저 마지막줄을 보니 곧 SSD 달았다는 포스트를 보게될 것 같은 느낌이.

스펀지팟 on January 22nd, 2009 at 9:34

^^; SSD 도 용량 큰걸 넣어야겠죠?
에어에 32기가를 쓰는데 요즘 저장공간이 부족해서 큰일입니다.

아크몬드 on January 24th, 2009 at 23:32

Windows Vista도 아이콘이 미려하지만, 아직 Mac OS에 비할 바는 안되는 것 같네요.

Live reply

Name
Email
Website
Message