공유라이브러리를 만들때...

lminsung의 이미지

안녕하십니까 ?
답변이 없어서 질문 다시드립니다.
so(shared object)를 만들때 ar(아카이브)가 포함되었을 경우 gcc -fPIC...
처럼 fPIC 옵션을 줘야하는것으로 알고 있습니다.

근데 문제가 있습니다.
바이너리 설치시에는 아카이브를 사용할때는 이옵션을 주기가 쉽지가 않더군요..

질문드리겠습니다.
1.어떤 솔라리스에서는 -fPIC를 안줘도 so를 만들수 있더군요..
되는 솔라리스와 안되는 솔라리스의 차이는 (제생각이지만)
ld 가 차이가 나는 데 이때문에 되고 안되고하는것인지..
되는 솔라리스는 GNU ld를 사용하는것 같고 안되는 것은 솔라리스 디폴트를 사용하는 것 같더군요.. 혹시 제가 생각하고 있는것이 맞는지요..
인터넷에 찾아봐도 찾기가 쉽지가 않더라구요..

2. 만약 제가 틀렸으면 어떤 것을 바꿔줘야지 -fPIC를 안주고도 아카이브를 공유라이브러리(so)에 포함할 수가 있습니까??

방법을 가르쳐주십시오.이것 때문에 계속 헤매는 군요..

고수님들의 답변 부탁드립니다.

withggam의 이미지

-fPIC 옵션은 gcc를 가지고 library를 만들때 사용하는 것입니다.

만약 Sun에서 제공하는 컴파일러를 가지고 만든다면 위의 옵션대신

다른 옵션이 필요합니다.

cc -o libfoo.so.1 -K pic -xCC foo.c

이렇게 하면 shared library가 만들어 질것입니다.

훔. 오래 전에 해서 잘 기억이 안나서 떱.. ㅠ.ㅠ

자세한 사항은 다음 링크를 참조해 보심이 좋을 듯 합니당~

http://docs.sun.com/db/doc/816-7777?l=ko&q=shared+library

아마 다른 ar(아카이브)를 포함하여 공유라이브러리를 만드신 다면

compile 옵션에 몇 개의 다른 옵션이 들어갈 것입니당.

-z -h 옵션등이 있었던 것 같은데.. 에궁 기억이 잘~

위의 URL을 참조해 보세용..

그럼. 총총총~

댓글 달기

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
이것은 자동으로 스팸을 올리는 것을 막기 위해서 제공됩니다.