[완료]서로 다른 운영체제에서의 컴파일에 대해 질문드립니다.
글쓴이: novice / 작성시간: 토, 2007/06/30 - 3:29오전
두 대의 컴퓨터가 있고, 각각 솔라리스와 리눅스가 설치되어 있습니다.
솔라리스에서 xorg 서버를 구동하고 싶은데, 그래픽 드라이버가 자체적으로 지원하는 게 아니라서 드라이버를 컴파일해서 모듈로 추가해주어야 합니다. 그런데 솔라리스에서 개발도구를 설치하고 컴파일하기에 어려운 점이 있어서, 리눅스가 설치된 컴퓨터에서 그래픽 드라이버를 컴파일하고, 솔라리스에서 사용하고 싶습니다.
요약해서 말씀드리면, 리눅스에서 솔라리스에서 사용이 가능한 일종의 패키지를 제작하고 싶습니다.
처음에는 리눅스에서 컴파일 후 생성된 파일을 xorg의 모듈 디렉토리에 복사해 주기만 하면 될 것 같았는데, 결과적으로는 모듈이 읽혀지지도 않고, 그러면 생성파일만 배포하면 될 걸 왜 소스로 배포하는 걸까 하는 생각도 들더군요^^;;
늘 아무 생각 없이 패키지로만 설치하거나 make install을 하곤 했는데 이런 때에 한계가 드러나는군요; 도움말씀 부탁드립니다!
Forums:
다른 플랫폼의
다른 플랫폼의 바이너리를 빌드 하려면 cross compiler가 필요합니다.
답변
답변 감사합니다.
그런데 솔라리스가 스팍머신이 아니고, 둘 다 x86 시스템인데도 크로스 컴파일이 필요할까요?
I don't belong here..
바이너리 호환성에
바이너리 호환성에 대해서는 잘 모르겠습니다만, 구글링해보니 다음 문서가 눈에 띄는군요.
Sun's Linux Offerings - Compatibility - lxrun
기본적으로는 크로스
기본적으로는 크로스 컴파일이 필요합니다.
이유는 플랫폼이 다르기 때문입니다.
플랫폼은 linux/ppc, win32/x86 식으로 운영체제와 cpu 두가지를 한데 묶어 생각합니다.
linux/x86, freebsd/x86, solaris/x86도 cpu는 x86으로 같지만 서로 다른 플랫폼인 겁니다.
다른 플랫폼의 실행파일을 수행하기 위해서는 그 플랫폼을 예뮬레이션 하는 방법도 있습니다.
cpu를 예뮬레이션 하는 케이스도 있고
freebsd나 solaris에서 linux의 바이너리를 돌리기 위해 linux를 예뮬레이션 하는 케이스도 있습니다.
windows나 linux나 다 같이 x86에서 돌아가지만
windows 바이너리를 linux에서 수정없이 돌리기 위해서 wine이라는 예뮬레이션이 필요한 것도 한 예라
할 수 있겠지요.
두 분 답변에
두 분 답변에 감사드립니다.
플랫폼에 대한 확실한 정의도 알려주시고, 링크를 걸어주신 곳도 많은 도움이 될 것 같습니다.
I don't belong here..
댓글 달기