했다. 전번에 T모님이 보내 주셨던 간단한 파이썬 소스 코드가 실행이 되지 않는 초유의 사태가 발생하고 만 것이다. 그것이 아마 md5 모듈을 필요로 했던 path 모듈을 인클루드하는 방식이었다. path 모듈 자체는 문제가 없었지만 인코딩 관련 모듈들이 안 깔리는 등의 일이 생기는 바람에, 포맷한 김에 파이썬을 그냥 V43 위에서 재컴파일 해 보았다.
크로스 컴파일할 때와의 차이점은 네이티브 gcc를 이용한다는 것이다. 파이썬 2.5 현재 버전은 크로스 컴파일 버그가 있어서 2.4.4를 사용했는데, 이제는 네이티브 컴파일이므로 2.5를 써도 되는 척 하고 있다. V43의 RMI Au1200 시퓨 속도와 성능이 좌절이라서 시간이 오래 걸리기 때문에 컴파일을 걸어놓고 자고 일어나니까 다 되어 있었다.
그 다음 make install 과정인데, 저번에 올렸을 때는이 make install을 생략했다. 그래서 일부 모듈이 제대로 등록되지 않았을 수도 있어서 md5가 실행이 안되는 등의 오류가 발생했을 지도 모른다. 파이썬의 Makefile에서는 make test를 권장하고 있지만, 개인적으로 “그냥 다 되겠지” 하는 생각으로 make test를 생략했다가 혼날뻔 했다.
아놔 AMD새끼들 시퓨 만들려면 제대로 좀 만들지! 유닛 테스트에서 너무 많은 부분이 failed가 떠 버렸다. 지금 V43이 없어서 결과를 보여줄 수는 없지만, 하여간 한 네개 걸러 하나에서 FAILED가 warning이 떠 버렸다. 가장 기억에 남는 것이 1.0 is false than true이다. 1이라면 true겠지만 1.0이 false가 뜨는 것은 오묘하다. 역시 AMD.
이제 파이썬이 제대로 올라갔으니까 인클봇 프로젝트에 다시 도전해 보든지 말든지 -_-
기계는 주어진대로 쓰자
김 모 군에게 V43을 인도받고 정보를 좀 얻어볼까 해서 PMP 인사이드로 직행하였다. 거기서 일어나는 일 중 재미있었던 일이 V43 하드웨어에 윈도 CE 비스무레한 것을 포팅한다는 화삼스리의 계획이었다. 나와 몇몇 사람들은 그 말이 진짜인지 추적해 보고 싶어서 화삼스리라는 사람이 쓴 글을 계속 추적해서 비밀 공간에 정리해 두고 있었고, 틈이 날 때마다 게시판에 질문글도 올렸다.
그런데 나는 PMP 인사이드 사람들과 자칭 관리자들이 좀 멍청해서 이 사람에게 낚였다고 생각한다. 내가 정리했던 문서의 일부분에는 그 사람의 목표가 명확하지 않다는 것이 있었다. 게시물마다 운영체제의 방향이 달라지는 것도 일단 의심할 대상이고 아이피 주소에도 문제가 있다. 일본에서 올렸다는 글은 알고 보니 태국의 프록시를 썼으며 21분 후에는 사우디아라비아로 이동하는 치밀함을 보여 주었다.
또한 그 사람이 스크린샷을 공개하지 마라는 것에도 문제가 있다. 스크린샷 공개가 불법이라면 베타 사이트에 뜨는 그 많은 스크린샷은 무엇인가? 그리고 한국 저작권법 제25조에 의하면 “공표된 저작물은 보도,비평,교육,연구등을 위하여는 정당한 범위안에서 공정한 관행에 합치되게 이를 인용할 수 있다.”. 적어도 윈도 CE를 포팅했다는 것을 보도하기 위해서는 스크린샷을 M$의 허락 없이도 이용할 수 있다는 결론이 된다.
지금 화삼스리는 버로우한 상태고, 이 사람이 벌였던 일이 진실인지 아닌지는 그 사람이 주장하는 윈도 CE를 설치한 사람만이 알 수 있을 것이다. 하지만 나는 과감히 주장하건대, “거짓”이다. 우선 런처를 깔아서 쓰라는 말에서 볼 수 있듯이 리눅스 기반에서 돌아가는 어떠한 프로그램으로 윈도 CE를 돌린다던데, 그것은 불가능하다. 커널 자체가 다르기 때문에 부트 로더를 새로 짜야 하지만 리눅스에서 윈도 CE를 불러오는 로더는 없다. 그리고 Bochs 등으로 윈도 95를 돌리고 디바이스 에뮬레이터를 사용해서 윈도 CE 환경을 보여 줄 수 있으나 속도가 느리고, 엄밀히 말하면 그것은 포팅이 아니다.
그러나 궁극적으로는, 이것은 사람들의 의식 잘못이라고 생각한다. 리눅스가 윈도 CE보다 못한 것이 뭐가 있어서 윈도 CE를 개발 당시에 고려도 하지 않은 장비에다가 윈도 CE를 올린다고 삽질하며, 그리고 기술적인 면을 모르고 저 사람이 하는 말과 목표에만 부화뇌동하여 현실적인 문제를 알아보지 못하는 사람들의 잘못도 크다고 생각한다. 여기서는 입아프게 왜 X86 바이너리를 MIPS 프로세서에서 돌리는지를 이야기하지 않으므로 알아서 찾아보기 바란다.
더 이상의 선의의 피해자가 생기지 않기를 기원하면서 이만 글 줄인다. 이 건과 관련된 소식은 차후에 좀 더 알릴 것이다.
추신: 본인의 V43은 Qtopia를 돈 주고 사서 인증까지 해 두었고 런처 같은 것은 쓰지도 않는다. 별도로 설치하거나 튜닝한 것은 약간의 프로그램과 bash, 파이썬 정도다. V43에 파이썬 올린 스크린샷은 본인의 플리커에 있다.
미치겠군
* 삼X 휴먼테크 논문 수요일까지 완료.
* 화요일 알고리즘 기말고사 공부.
* 디큐랑 이번 주 안으로 싸우러 갔다 와야 함.
거참 기말고사 기간에 휴먼테크와 디큐가 겹쳐서 문제지만, 논문 작업은 그나마 다 끝나가고, 디큐랑 싸우러 가는 것은 얼마 안 걸릴 것 같으니까. 그러니까 이제부터 ㄹ!
아 무서워라
* 학사경고 3회 -> 2회 이상 먹을 시 제적.
* 필수 및 AP 과목의 경우 무조건 70%까지만 A,B. (단 수강인원 10명 미만 제외)
* (1학년만 해당) 25->28학점으로 수강 학점 증가. 즉, 물화생지를 모두 한해에 듣는다.
내년부터 우리 학교의 학점 제도가 이렇게 바뀐다고 한다. 뭐 이래저래 늦게 들어오는 애들만 죽어나는군. 이제 생활벌점도 받고 깎는 기록을 모두 누적시킨다는 판국에 70%까지 적용되면… 에라이뭐병. 3학년 때 필수과목이 없다는 것에 안심하면서 빨리 학교를 나가야겠다는 생각밖에는 안 든다. 이렇게 살벌하게 해야 하나 모르겠다.
최근 V43에 했던 일
1. BusyBox 기반 시스템 유틸들을 대거 GNU coreutils로 교체.
2. Python 2.4.4 컴파일
3. bash-3.2 컴파일
이게 뭐가 대단하냐고 생각할 수 있겠지만 다 이유가 있어서 했던 삽질이다. 1의 경우, 대부분 프로그램의 configure 스크립트에서 BSD-compatible install을 찾았는데, 문제는 V43의 부시상자에 그게 없어서 그냥 코어유틸즈를 빌드해 버렸다. 부시상자를 새로 빌드하자니, ‘df –si’ 옵션이 안 듣는다는 것을 알아채고 그냥 코어유틸즈 통째로 빌드하고 스트립시켜 주었다.
파이썬 컴파일은 글쎄 심심해서 해 봤다. battery-include 사상 때문에 파이썬용 프로그램은 아마도 V43에서도 돌아갈 것이다. 지금 쓰고 있는 V43용 파이썬은 파이썬 2.4.4를 빌드한 것이고, tcl/tk 관련 라이브러리는 빌드할 수 없었다. 귀찮아서 그렇기도 하고, 또 필요성에 의문을 느끼기도 하고 있다. 또한 배시의 강력한 자동 완성 기능에 매력을 느껴서 그냥 bash-3.2를 빌드했다. 부시상자의 셸이 안 좋은 것은 아니지만, 배시가 쓰다 보면 편하다. 그리고 배시 프롬프트를 우분투스럽게 만들어 둔 일종의 프로필을 추가시켰는데, 문제는 터미널을 열었을 때 기본 셸을 못 바꾸겠다는 거다.
하암. 이제는 니아리움님이 이야기했던 ghc나 포팅해 볼까.