Archive for 8월 20th, 2008

configure에서 –host와 –build의 차이

수요일, 8월 20th, 2008

configure 스크립트에서 받는 옵션으로 –host, –build, –target이 있습니다.

만약에 빌드를 x86 리눅스 머신에서 하고 실제 실행은 리눅스이면서 eabi를 쓰고 ARM 플랫폼에서 실행하고 싶다면

./configure –target=arm-none-linux-gnueabi –host=arm-none-linux-gnueabi –build=linux

./configure –target=arm-none-linux-gnueabi –host=arm-none-linux-gnueabi –build=i486-pc-linux-gnu

이런식으로 할 겁니다.

–build : 내가 지금 작업하고 있는 컴파일 시스템 - 그러니까 코딩 작업하고 있는 호스트

–host : 빌드하고 나서 실행파일이 실행될 시스템을 명시합니다. 컴파일 결과물이 돌아갈 환경. 실제 타겟 이름. 예를 들어 arm-none-linux-

–target : (대부분 host와 같은 거이 일반적이고) 크로스 컴파일러를 빌드할 때 등에 쓰는 것으로 빌드된 파일이 실행됐을 때 내놓을 바이너리 포맷입니다.

target을 쓰는 경우는 예를 들어 x86 리눅스에서 ARM 컴파일러를 PowerPC에서 실행시킬 바이너리를 만든다면

./configure –target=arm-linux-gnu –host=powerpc-linux-gnu –build=i686-pc-linux-gnu

정도로 쓰면 됩니다.

영문으로 자세히 설명된 canadian cross http://www.airs.com/ian/configure/configure_6.html

http://kelp.or.kr/korweblog/stories.php?story=04/09/22/9919655

————-

KLDP에서 퍼온 것

http://www.belgeler.org/autobook/autobook-Building-with-a-Cross-Compiler…

즉 Linux에서 빌드를 하는데 만드는 컴파일러가 dos에서 실행되는 컴파일러이고, 이 컴파일러의 출력코드는 mips용이라면
–build : linux
–host : dos
–target : mips
가 됩니다. 이런 경우를 canadian cross라고 하죠. 캐나다에 세 민족이 살아서 그런데나… 물론 이런 canadian cross는 library 때문에 빌드가 상당히 복잡해집니다.

기본적으로는 host, target, build를 모두 적어주어야 합니다. 단, 적어주지 않는 경우 config.guess script에서 나머지를 default로 현재 platform으로 설정합니다.

그래서
canadian cross 인 경우에는 –host, –target을 정확히 적어주어야 하고,
cross인 경우에는 –target 만을 정확히 적어주면 되고,
일반적인 경우에는 아무것도 적어주지 않아도 됩니다.

풍요, 감사

수요일, 8월 20th, 2008

저는 매일 아침 참 감사하게 여기는 것이 있습니다.

바로 깨끗하고 따듯한 물로 샤워하고, 맑고 시원한 물을 마실 때입니다.

지금 제가 누리는 이런 편리와 청결은 예전의 왕들도 누리기 힘들었던 겁니다.

힘 안들이고 적당한 온도의 물로, 깨끗하게 샤워하고, 새벽에 물 뜨러 나가지 않아도, 한여름에도 시원한, 그리고 깨끗한 미네랄 워터를 마실 수 있다니 감사하지 않나요?

지금 세상은 그런 면에서 정말 많은 사람들이 이런 좋은 혜택을 누리고 삽니다.

그것이 가능하게 한 것이 새로운 에너지의 발견과 생활 과학의 발전이겠지요. 전 상하수도를 발명한 사람들이 정말 존경스럽습니다. 인류의 삶에 지대하게 영향을 미쳤습니다. 그리고 전기. 전기를 사용한 전등과 에어컨등은 정말 삶을 살만하게 만들었다고 생각합니다.

어떤 사람들은 그런 문명의 이기가 사람들의 정신세계를 망쳐놨다고 하지만,,
그것은 이런 풍요를 당연한 것으로 여기고 과용하는 사람들 얘기일 것입니다.
(저기 바다 건너 어떤 나라에서는 우리나라보다 훨씬 국민소득이 높은데도 겨울에 내복을 입고 방바닥에 난방 안하고 산다죠 아마)

더불어 지금 우리가 쓰고 있는 에너지와 자원은 어쩌면 유한한, 그리고 한꺼번에 너무 많이 사용하면 부작용이 생길 수도 있는 것들입니다. 우리가 누리는 이 풍요로운 삶을 멀리 다음 세대까지 유지하려면 분명 분별력있고 절제된 소비를 해야겠지요. 그리고 되도록 더 많은 인류가 누릴 수 있도록 나누는 게 필요할 겁니다.

항상 감사하고 있습니다. 이런 풍요를 누릴 수 있게 되어서요.
비록 전쟁 한 번에, 천재지변에 다 허물어질 수도 있는 취약함일지라도, 그걸 지키는 누군가가 필요하지만, 누리는 지금을 참 감사하고 있습니다.

하나님 감사합니다.