libcc_dynamic.a vs. libgcc.a

Dieses Thema im Forum "Mac OS X Entwickler, Programmierer" wurde erstellt von dpr, 04.10.2006.

  1. dpr

    dpr Thread Starter MacUser Mitglied

    Beiträge:
    519
    Zustimmungen:
    0
    MacUser seit:
    04.04.2006
    Hallo,

    meine Frage ist nicht OS X-spezifisch und damit potenziell off-topic. Vielleicht hat dennoch jemand Lust, zu antworten.

    Kurz und knapp: für gcc 2.95 gab es libcc_dynamic.a. Oracle linkt z.B. explizit dagegen. Ab gcc 3 gibt es libgcc.a. Gehe ich recht in der Annahme, daß libgcc.a der Ersatz für libcc_dynamic.a ist?

    Danke.
     
  2. oneOeight

    oneOeight MacUser Mitglied

    Beiträge:
    46.810
    Zustimmungen:
    3.633
    MacUser seit:
    23.11.2004
    jein ;)
    es gab ABI änderungen zwischen gcc 2 und 3, die sind wohl nicht kompatibel...
    installier halt das 10.2.8 oder 10.3.9 sdk, da ist libcc_dynamic.a dabei...
     
  3. dpr

    dpr Thread Starter MacUser Mitglied

    Beiträge:
    519
    Zustimmungen:
    0
    MacUser seit:
    04.04.2006
    Es wäre ja auch zu schön gewesen....

    Das weiß ich, das 10.3.9er SDK habe ich. Allerdings habe ich kein gutes Gefühl, mit gcc3 gegen eine Library aus der Distribution von gcc2 zu linken. Noch läuft alles, aber das hat ja bekanntermaßen nichts zu heißen...
     
  4. oneOeight

    oneOeight MacUser Mitglied

    Beiträge:
    46.810
    Zustimmungen:
    3.633
    MacUser seit:
    23.11.2004
    ich weiß ja nicht, was du da anstellst...
    aber normalerweise sollte der gcc3 doch automatisch die richtigen libs nehmen und nur mit gcc2 gelinkte sachen die gcc2 lib nehmen...
     
  5. dpr

    dpr Thread Starter MacUser Mitglied

    Beiträge:
    519
    Zustimmungen:
    0
    MacUser seit:
    04.04.2006
    Oracle 10g ist ja nicht mehr ganz taufrisch und erwartet gcc2 unter 10.3.9, linkt daher explizit gegen /usr/lib/libcc_dynamic.a. gcc2 habe ich nicht mehr. Da es libcc_dynamic.a bei gcc{3,4} nicht mehr gibt und das Fehlen dieser Library zu undefinierten Referenzen bei fast allen Oracle-Tools führt, habe ich mal einen Softlink in /usr/lib gesetzt und mit gcc3 explizit dageben gelinkt.

    Auf die Objekt-Files habe ich leider keinen Einfluß, deswegen muß libcc_dynamic.a mit rein. Ich werden einfach mal libgcc.a probieren, mal sehen, ob es läuft.