Torx-6 드라이버(별 드라이버)가 필요하다고 하였으나 일단 과감히 시작.


준비물:
사랑스런 맥북 프로(4.1),
새 하드 드라이브(WD 500G/5400rpm),
십자 드라이버,
나사를 놓아둘 흰 종이와 맥북프로를 올려놓을 적당한 천,
3M 스카치 테잎







일단 바닥에서 배터리와 메모리를 들어냅니다. 메모리 커버를 고정하는 세 개의 나사는 스카치 테잎에 붙여서 메모리 커버에 잘 붙여 놓습니다.









메모리 커버를 들어내면 메모리 슬롯 양쪽으로 두 개의 별모양 나사가 보입니다. 이 두 나사는 1.8mm짜리 일자 드라이버로 손쉽게 풀립니다.

역시 별 드라이버는 필요없었어! 라고 환호하는 Jaeyoung.








배터리 슬롯 안쪽에 두 개의 나사,
바닥 힌지 쪽에 네 개의 나사,
뒷면 힌지 양쪽에 두 개의 나사,
양 옆면에 각각 네 개씩의 나사를 꺼내어
각각 테잎으로 고정하고 위치와 수량을 적어 놓습니다.





















액정을 수직으로 세우고 상판을 들어냅니다.
다른 곳은 쉽게 들리는데, 적외선 수신부 쪽과 DVD 슬롯 윗 부분에 상판과 하판이 단단히 고정된 부분이 있습니다.
이 부분을 쇠붙이 말고 플라스틱과 같이 흠집을 안 낼만한 도구로 상판과 하판을 분리합니다.
딱! 소리가 나면서 상판이 하판으로부터 분리됩니다.
(다음 사진 참고.)



사진에 보시면 상판 끝단에 짙은 회색빛의 납작한 일자모양이 다섯개가 보입니다.
가운데 트랙패드를 중심으로 왼쪽에 하나, 오른쪽에 나란히 네 개.
이 녀석들이 하판과 단단히 결합되어 있습니다.
분리할 때나 조립할 때 딱! 소리가 나도록 해야 합니다.
조립할 때 주의하셔할 점!
왼쪽 녀석은 잘 조립됩니다. 오른쪽의 네 녀석은 DVD 슬롯 윗부분에 위치합니다. 이 녀석들을 끼우겠다고 강한 힘을 가하면, 결합이 되는 게 아니라 DVD 슬롯 윗부분이 주저앉게 됩니다. 따라서 슬롯 부분에 주저앉지 않도록 지지할 만한 것을 끼워넣고 위에서 강한 힘을 가하여 결합해야 하판이 변형되는 것을 막을 수 있습니다.


상판을 들어올린 모습.
상판을 확 들어올리면 안됩니다.
상판과 하판을 연결하고 있는 얇은 필름이 있습니다.
이것을 뽑으면 상판과 하판이 완전히 분리됩니다.







들어올릴 때 주의하셔야할 점!

사진 가운데 부분에 갈고리처럼 보이는 것이 있습니다. 이 녀석은 상판에 붙어 있어서 안쪽에서 하판과 나사를 통해 고정되는 녀석인데요 상판 분리하겠다고 들었다 놨다 하는 동안 어느 새 사진에서처럼 바깥쪽으로 휘어져 버렸습니다.
이 녀석은 힌지 양쪽에 있으므로 상판을 들어올리실 때 주의하시기 바랍니다.


















분리된 하판과 상판의 모습. 간단하게 먼지 등을 청소해 줍니다. 구형 MBP는 키보드 양쪽에 나 있는 구멍들이 제법 커서 먼지가 잘 들어갑니다. 상판 안쪽에서 압축공기등을 살살 쏘아서 이 먼지들을 제거합니다.
아주 속이 시원하군요~.



문제의 나사!
하판 왼쪽 하단에 하드 드라이브가 자리하고 있습니다. 4.1 버전의 경우 하드 드라이브 오른편의 브라켓을 제거한 후 오른편을 들어올리면서 하드 드라이브를 제거하는 방식입니다. (3.1 버전과 다름)
두 개의 별 나사가 브라켓에 조여져 있습니다. 이 나사들은 단단히 고정되어 있어서 앞서의 일자 드라이버 신공으로 절대 풀리지 않습니다. 때문에 용산으로 별드라이브 구입하러 갔다왔습니다.
별드라이버로 두 개의 나사를 풀어내면 하드 디스크의 한쪽을 고정하고 있던 브라켓을 분리할 수 있습니다.



하드 디스크에 연결되어 있는 세 개의 케이블을 분리합니다.
이것으로 하드디스크는 하판에서 완전히 분리됩니다.

조심해야 할 부분!
하드 디스크 윗면에 양면 테이프로 고정되어 있는 케이블이 있습니다. 이것을 분리하려면 사진에 보이는 두 개의 플러그(흰 머리들이라고 부릅시다.)가 있는 쪽부터 분리해야 합니다. 하드 커넥터 쪽으로부터는 분리할 수 없습니다. 흰 머리중에서 큰 쪽(아래것)은 부착이 안되어 있고 작은 쪽(윗것)부터 하드 커넥터에까지 양면테이프로 고정되어 있습니다. 작은 쪽 밑으로 얇은 도구를 밀어넣어서 한번에 떼도록 합니다.
이 과정에서 조심하지 않으면 작은 쪽의 납땜부위나 케이블이 상할 수 있습니다. 저는 강하게 접힌 자국이 남았습니다.


자 이제 핵심!
두 하드 디스크를 교체합니다.
기존 하드 디스크 양쪽으로 별나사가 단단히 박혀 있습니다.
맞교환합니다.








역순으로 새 하드 디스크를 장착한 모습.




















이제 새로 OS를 설치합니다.


주의.
Torx-6 드라이버가 반드시 필요하다.
하판에서 제거하는 나사 들이 많으므로 잘 정리하자.
상판과 하판을 분리/조립할 때 조심하자.
하드 디스크에 붙어 있는 케이블을 조심스럽게 분리하자.



Posted by unknowny
:
오늘도 내 삽질 인생에 족적을 남긴다.

이번에는 공개 개발 툴인 Eclipse를 맥에 설치하여 보았다. Eclipse는 open source, cross platform의 통합 개발 도구, 이른바 Integrated Development Environment(IDE)이다. 더 이상의 자세한 설명은 생략.

오늘 삽질했던 내용.
1. 정적 라이브러리로 개발하여 빌드된 "libuser.a" 라는 라이브러리가 있다고 하자. 이놈을 응용프로그램 프로젝트에서 링크하려고 한다. 어떻게?
  1. 응용프로그램 프로젝트의 Properties을 연다. (옵션+엔터)
  2. 좌측의 메뉴에서 C/C++ Build > Settings 항목을 선택.
  3. 오른쪽 창에서 Tool Settings를 선택. (첫번째 항목임)
  4. 서브 메뉴의 MacOS X C++ Linker > Miscellaneous 선택.
  5. Other objects 항목에 링크하고자 하는 라이브러리를 입력한다.
  6. Build
2. 이렇게하여 링크할 라이브러리를 추가하고 다시 빌드 하였더니 이번에는 다음과 같은 링크에러가 떴다.
구글신에게 물어보자. 원인은 정적라이브러리의 오브젝트 파일(.o)들을 압축할 때 목차를 만들지 않았기 때문이다. 콘솔에서는 ranlib 명령을 이용하는데 Eclipse의 Static Library 프로젝트 템플릿에서는 이 과정을 거치지 않는 모양이다. 해결책은 다음과 같음.
  1. 정적라이브러리 프로젝트의 Properties을 연다.
  2. 좌측의 메뉴에서 C/C++ Build > Settings 항목을 선택.
  3. 오른쪽 창에서 Tool Settings를 선택. (첫번째 항목임)
  4. 서브 메뉴의 GCC Archiver >> General 선택.
  5. Archiver flags라는 항목 하나가 나타난다. 여기에 "-r -s"라고 입력.
  6. Build
다시 빌드를 하면 Console 창에서 ranlib이 실행됐음을 확인할 수 있다.

3. 이렇게 해서 끝난 줄 알았더니 끝이 아니었음. 3D 시뮬레이터라서 OpenGL, GLUT, glew 등의 라이브러리가 필요했던 것.

glew의 추가: glew는 macports를 이용하여 설치했으므로 다른 Linux OS와 같이 링크한다.
  1. 응용프로그램 프로젝트의 Properties을 연다. (옵션+엔터)
  2. 좌측의 메뉴에서 C/C++ Build > Settings 항목을 선택.
  3. 오른쪽 창에서 Tool Settings를 선택. (첫번째 항목임)
  4. 서브 메뉴의 MacOS X C++ Linker > Libraries 선택.
  5. Libraries (-l) 항목에 glew를 추가. 
OpenGL, GLUT의 추가: OpenGL 및 GLUT 라이브러리는 위와 같은 방법으로는 추가가 안된다. 맥 OSX에서는 OpenGL과 GLUT를 framework(헤더와 라이브러리가 들어있는 압축파일)로 제공하고 있다.
  1. 응용프로그램 프로젝트의 Properties을 연다. (옵션+엔터)
  2. 좌측의 메뉴에서 C/C++ Build > Settings 항목을 선택.
  3. 오른쪽 창에서 Tool Settings를 선택. (첫번째 항목임)
  4. 서브 메뉴의 MacOS X C++ Linker > Miscellaneous 선택.
  5. Linker flags 라는 한줄짜리 항목이 있다. 이곳에 "-framework GLUT -framework OpenGL" 을 입력.

이렇게 해서 결국 성공했음.





Posted by unknowny
:
OpenSceneGraph(OSG)는 OpenGL을 이용하여 사용자가 손쉽게 다양한 기능을 구현하여 3D 렌더링을 할 수 있도록 하는 open source, cross platform library 이다.

이것을 내 맥북프로 Mac OS 10.5.6에 설치하는데 문제가 계속 발생했다.

Undefined symbols for architecture ppc:

Mac에 설치하는 방법은 두 가지인데 Xcode용 인스톨러 패키지를 다운받아서 설치하는 방법과 소스를 다운받아서 직접 컴파일해서 설치하는 방법이 있다.
전자는 /Library/Frameworks 안에 Xcode 용 framework을 설치하고 Xcode용 project 템플릿을 추가한다. 
후자는 /usr/local/include, /usr/local/lib 등에 헤더와 라이브러리 파일을 설치한다.

아무튼 console에서 후자의 방법을 통해 OSG를 설치하는데 80%쯤 컴파일을 하고나서 컴파일 에러를 띄우면서 설치가 되지 않았다. 에러로 봐서는 도대체 무슨 상황인지 알 수 없는 상황. 그래서 포기하고 있다가 며칠전 OSG 포럼에 글을 남겼더니 어제 답이 떴다. 아래는 포럼 링크.


일단 원인은 OSG는 CMake를 이용하여 소스를 컴파일하는데 이때 기본적으로 PPC용 및 Intel용으로 모두 컴파일하도록 설정이 되어 있다. 그런데 내 맥에 PPC용 Inventor를 설치했던 흔적이 남아있고 OSG가 이것에 대해 제대로 컴파일을 할 수가 없어서 에러내고 종료되는 것이었다. Inventor에 대한 의존성과 어떤 경로에 어떻게 설치되어 있는지 모르기 때문에 설정에서 OSG를 Intel용으로만 컴파일하도록 설정하여 다시 했더니 깔끔하게 잘 되었다.

어떻게 했는지에 대해 기록을 남기자.

일단 CMake를 이용하는 소스는 해당 폴더 내에 CMakeList.txt라는 파일이 있다. OSG의 경우
[설치폴더]/OpenSceneGraph/CMakeList.txt
라는 파일이 있다.
[설치폴더]로 가서 (OpenSceneGraph 폴더가 아님. 그 상위 폴더) 다음을 실행한다.
ccmake OpenSceneGraph (<- CMakeList.txt 파일이 들어있는 폴더명)

그러면 환경 설정 화면이 뜬다.

아래에서 1/3 지점쯤에 CMAKE_OSX_ARCHITECTURES 라는 항목이 있고 이 항목의 값이 i386으로 되어있는 것을 볼 수 있다. (이미 수정된 후)
위 에디터는 보통의 텍스트 에디터와는 다르게 한줄 한줄 수정이 가능하다. 위 그림의 아래에서부터 다섯번째 라인이 반전되어 있는 것을 볼 수 있는데, 이곳에서만 편집을 할 수 있다. (이를 편집라인이라 부르자!)
화살표키로 위아래로 움직이면 상단에 열거돼 있는 항목들이 이 편집라인에 한줄씩 나타나고 항목에 대한 설명이 같이 나타난다. 수정하고자 하는 목록을 화살표키로 이 편집라인에 나타나도록 한 후 엔터키를 치면 값을 바꿀 수 있다. ON/OFF 값과 같이 값이 정해져 있는 경우 엔터키를 칠 때마다 값이 토글된다. 문자열의 경우는 직접 편집하면 된다.

편집을 마치면 c 키를 눌러 configure를 실행하자. 이때 임시 configuration이 일어나고 값이 변경된 항목들에 * 표가 표시되어 값이 바뀔 것임을 알려준다. 일종의 '이거 변경할 건데 맞지?'하고 한번 더 확인하는 셈.
확인이 끝났으면 c 키를 한번 더 누른다. 그럼 실제 값을 변경하고 configuration을 마친다. 마치고 나면 *표가 사라졌음을 알 수 있다. 이제 g 키를 눌러서 (뭔가를) 생성하고 완료되면 종료한다.

이제 OpenSceneGraph 폴더로 들어가서 make & make install 하면 새로운 세팅으로 컴파일을 한다.

끗.



Posted by unknowny
: