외규장각 도서 환수 모금 캠페인
BLOG main image
분류 전체보기 (45)
컴퓨팅환경 (18)
프로그래밍 (18)
놀이 (2)
잡담 (7)
«   2010/03   »
  1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31      
10,212 Visitors up to today!
Today 13 hit, Yesterday 28 hit
daisy rss
meet me at me2DAY
나눔글꼴 내려받기
tistory
'MacOSX'에 해당되는 글 3건
2009/02/05 01:08

한글과 영문이 많이 섞여있는 문서를 작성하다보면 가끔 Cmd-Space를 눌러 입력기를 전환하였는데도 이전 입력기로 입력이 되는 경우가 있었다. 특히 영문 대문자가 많이 있는 글이 이런 경우가 잦았는데, 이제서야 정확한 재현방법을 알아냈다. 결론은 Mac OS X 운영체제의 입력기 전환 시스템의 버그인 것 같다.

재현방법은...

  1. Command키를 누른다.
  2. Space키를 누른다. 이때 입력기는 바뀐다.
  3. Space키를 뗀다.
  4. Shift키를 누른다.
  5. Command키를 뗀다.
  6. 이때 입력되는 글자는 바뀐 현재 입력기가 아니라 이전 입력기를 통하고 있다...
  7. Shift키를 뗀다.
  8. 이제서야 현재 입력기로 입력된다.

과정중 3번과 4번은 순서가 바뀌어도 상관없다.

하늘입력기에서만 발생하는 버그면 디버깅해볼려고 했겠지만, 모든 입력기에서 다 나타나는걸 보고나니 하늘입력기 소스 열어보고 싶은 맘도 싹 가셨다. 이제 토스하는 일이 남았군...

 

이 글은 스프링노트에서 작성되었습니다.

2008/10/14 10:51

Mac OS X을 쓰면서 X11을 쭈욱 써왔다. 그래서 나의 .profile에는 항상 다음과 같이 DISPLAY환경변수를 세팅하도록 해놨었다.

export DISPLAY=:0

Mac OS X 10.5 Leopard를 사용하기 시작하면서 초기에는 X11의 버그가 꽤 많았다. Spaces와 관련된 버그, 커서색깔버그(커서 색깔 버그는 인텔맥이 나오면서부터 쭈욱 있었다)... 이런 종류의 꽤 심각한 버그에 비하면 X11을 실행하면 독에 아이콘이 두개 뜨는 사소한 버그는 신경쓰고 싶지도 않았다.

이제 Mac OS X 10.5.5까지 업데이트가 되었고 앞서 말한 X11의 심각한 버그들은 어느 정도 해결된 것 같다. 이제는 독에 아이콘이 두개 뜨는 문제가 눈에 거슬리기 시작했다. 하지만, 조금의 시간이 흐른 후 알아낸 사실은 의외였다.

Leopard의 X11은 X11 프로그램이 시작할 때 launchd가 알아서 X11을 실행시켜준다는 것이었다. 순간 DISPLAY환경변수가 없으면 X11 프로그램이 아예 안 뜰텐데 라는 생각이었고 혹시나하면서 .profile에서 DISPLAY환경변수 세팅을 지우고 터미널을 새로 띄웠다. 그리고는...

$ echo $DISPLAY
/tmp/launch-uXdnM2/:0

쯔압... 이게 뭐야~

launchd가 만들어 놓은 소켓파일이다. 그 후, 정말로 X11이 자동으로 뜨는데다가 독에 X11아이콘이 하나만 얌전히 들어앉는다.

할 말이 없다. launchd야~

 

이 글은 스프링노트에서 작성되었습니다.

2008/10/13 15:16

DDD를 컴파일하기 위해서는 Motif라이브러리가 필요하다. lesstifOpenMotif를 설치해야한다. 나는 OpenMotif를 사용하였다.

openmotif-2.3.1 설치하기

openmotif-2.3.1을 컴파일 할 때 문제는 freetype2라이브러리가 Mac OS X에 이미 설치되어 있고 freetype-config 프로그램이 제대로된 결과를 출력함에도 불구하고 freetype 헤더파일을 찾지 못한다는 것이다. 그래서 다음과 같이 CFLAGS를 강제로 세팅하였다.

./configure CFLAGS=-I/usr/X11/include/freetype2
make
sudo make install

ddd-3.3.11 설치하기

ddd를 컴파일할 때 문제는 Mac OS X의 기본 파일시스템인 journaled HFS+가 대소문자가 다른 파일이름을 허용하지 않는다는 것이다. (case preserved, not case sensitive) 그래서, X resource 파일인 Ddd와 실행파일인 ddd가 한 디렉토리에 존재하여 하나가 다른 하나를 덮어써버린다. 컴파일할 때 EXEEXT 변수를 사용하여 work-around한다.

./configure
make EXEEXT=.exe
sudo make install EXEEXT=.exe
sudo mv /usr/local/bin/ddd.exe /usr/local/bin/ddd

 

추가적으로, gnuplot이 필요하다면 설치한다.

readline-5.2 설치하기

gnuplot 컴파일 시 readline라이브러리와 링크하다가 에러를 낸다. Mac OS X에 기본으로 깔려있는 readline라이브러리는 사실 libedit(readline의 NetBSD버전)이다. 정확한 이유는 알 수 없지만 뭔가 궁합이 맞지않는다고 생각하고 GNU readline을 먼저 설치해준다.
readline을 컴파일할 때 libtool이 shared library를 build할 때 사용하는 -dynamic 옵션이 -compatibility_version 옵션과 충돌한다. SHOBJ_LDFLAGS옵션을 줘서 -dynamic옵션을 -dynamiclib옵션으로 바꿔주면 된다.

./configure
make SHOBJ_LDFLAGS=-dynamiclib
sudo make install

gnuplot-4.2.4 설치하기

gnuplot이 /usr/local에 설치된 readline라이브러리를 사용하도록 다음과 같이 CFLAGS와 LDFLAGS를 세팅해준다.

./configure CFLAGS=-I/usr/local/include LDFLAGS=-L/usr/local/lib
make
sudo make install


무엇 하나 곱게 되는 법이 없다.

 

이 글은 스프링노트에서 작성되었습니다.

prev"" #1 next