[완료]서로 다른 운영체제에서의 컴파일에 대해 질문드립니다.

novice의 이미지

두 대의 컴퓨터가 있고, 각각 솔라리스와 리눅스가 설치되어 있습니다.
솔라리스에서 xorg 서버를 구동하고 싶은데, 그래픽 드라이버가 자체적으로 지원하는 게 아니라서 드라이버를 컴파일해서 모듈로 추가해주어야 합니다. 그런데 솔라리스에서 개발도구를 설치하고 컴파일하기에 어려운 점이 있어서, 리눅스가 설치된 컴퓨터에서 그래픽 드라이버를 컴파일하고, 솔라리스에서 사용하고 싶습니다.
요약해서 말씀드리면, 리눅스에서 솔라리스에서 사용이 가능한 일종의 패키지를 제작하고 싶습니다.
처음에는 리눅스에서 컴파일 후 생성된 파일을 xorg의 모듈 디렉토리에 복사해 주기만 하면 될 것 같았는데, 결과적으로는 모듈이 읽혀지지도 않고, 그러면 생성파일만 배포하면 될 걸 왜 소스로 배포하는 걸까 하는 생각도 들더군요^^;;
늘 아무 생각 없이 패키지로만 설치하거나 make install을 하곤 했는데 이런 때에 한계가 드러나는군요; 도움말씀 부탁드립니다!

whitenoise의 이미지

다른 플랫폼의 바이너리를 빌드 하려면 cross compiler가 필요합니다.

novice의 이미지

답변 감사합니다.
그런데 솔라리스가 스팍머신이 아니고, 둘 다 x86 시스템인데도 크로스 컴파일이 필요할까요?

I don't belong here..

whitenoise의 이미지

바이너리 호환성에 대해서는 잘 모르겠습니다만, 구글링해보니 다음 문서가 눈에 띄는군요.

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이라는 예뮬레이션이 필요한 것도 한 예라
할 수 있겠지요.

novice의 이미지

두 분 답변에 감사드립니다.
플랫폼에 대한 확실한 정의도 알려주시고, 링크를 걸어주신 곳도 많은 도움이 될 것 같습니다.

I don't belong here..

댓글 달기

Filtered HTML

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

BBCode

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param>
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

Textile

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • You can use Textile markup to format text.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Markdown

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • Quick Tips:
    • Two or more spaces at a line's end = Line break
    • Double returns = Paragraph
    • *Single asterisks* or _single underscores_ = Emphasis
    • **Double** or __double__ = Strong
    • This is [a link](http://the.link.example.com "The optional title text")
    For complete details on the Markdown syntax, see the Markdown documentation and Markdown Extra documentation for tables, footnotes, and more.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Plain text

  • HTML 태그를 사용할 수 없습니다.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 줄과 단락은 자동으로 분리됩니다.
댓글 첨부 파일
이 댓글에 이미지나 파일을 업로드 합니다.
파일 크기는 8 MB보다 작아야 합니다.
허용할 파일 형식: txt pdf doc xls gif jpg jpeg mp3 png rar zip.
CAPTCHA
이것은 자동으로 스팸을 올리는 것을 막기 위해서 제공됩니다.