eigene Header

Diskutiere eigene Header im C/C++ Forum im Bereich Programmieren unter Linux/Unix; Hallo allezusammen, is wahrscheinlich ne blöde Frage: Ich hab in einem Verzeichnis drei Dateien: haupt.cpp, funk.cpp und funk.h in der...

  1. brand

    brand Mitglied

    Dabei seit:
    07.11.2004
    Beiträge:
    48
    Zustimmungen:
    0
    Hallo allezusammen,

    is wahrscheinlich ne blöde Frage:

    Ich hab in einem Verzeichnis drei Dateien:
    haupt.cpp, funk.cpp und funk.h

    in der haupt.cpp steht
    #include"funk.h"
    in der funk.h die Funktionendefs
    und in der funk.cpp die Funktion selber.

    Ich will haupt.cpp mit "g++ haupt.cpp" übersetzen.
    Also ohne das ich noch die funk im Befehlsaufruf angebe.
    Wie mach ich das?
    Bei der iostream gehts ja auch.

    Gruß Michael
     
  2. Anzeige

    Anzeige

    Wenn du mehr über Linux erfahren möchtest, dann solltest du dir mal folgende Shellkommandos anschauen.


    Registrieren bzw. einloggen, um diese und auch andere Anzeigen zu deaktivieren
  3. #2 skynnyr, 18.05.2005
    skynnyr

    skynnyr Mitglied

    Dabei seit:
    03.06.2004
    Beiträge:
    37
    Zustimmungen:
    0
    Entweder du rufst g++ so auf:
    Code:
    g++ haupt.cpp funk.cpp
    oder du tust dir das hier an:
    Code:
    man make
    info make
    oder gleich richtig (aber nicht ganz ernst gemeint ;)): autoconf.
     
  4. brand

    brand Mitglied

    Dabei seit:
    07.11.2004
    Beiträge:
    48
    Zustimmungen:
    0
    Aber wie funxt des dann bei der iostream z.B? Da geb ich ja nicht g++ haupt.cpp iostream.h oder so ählich an.
     
  5. pinky

    pinky König

    Dabei seit:
    11.08.2004
    Beiträge:
    795
    Zustimmungen:
    0
    iostream ist eine lib.
    Wenn du aus funk auch eine lib machst und es vorher als solche kompilierst, dann kannst du später dein Programm dagegen linken ohne die lib selber zu kompilieren.
     
  6. brand

    brand Mitglied

    Dabei seit:
    07.11.2004
    Beiträge:
    48
    Zustimmungen:
    0
    aaaah, cool. Und wie mach ich ne lib draus?
     
  7. #6 skynnyr, 18.05.2005
    skynnyr

    skynnyr Mitglied

    Dabei seit:
    03.06.2004
    Beiträge:
    37
    Zustimmungen:
    0
    Ich bin nicht ganz sicher, ob ich deine Frage richtig verstehe. Du willst also wissen, woher g++ die Funktionsrümpfe hernimmt, die in <iostream> deklariert wurden? Die holt sich der Linker aus libstdc++.so. In dieser Datei befindet sich der <iostream>-Objektcode. Die Quelltexte von <iostream> werden nicht jedesmal wieder neu übersetzt. Lediglich die Existenz der Klasse wird dem Compiler durch die Headerdatei bekanntgemacht. Der Linker löst dann die externen Referenzen erst auf. Eben aus libstdc++.so.

    PS.: Oops, zu spät!
     
  8. #7 skynnyr, 18.05.2005
    Zuletzt bearbeitet: 18.05.2005
    skynnyr

    skynnyr Mitglied

    Dabei seit:
    03.06.2004
    Beiträge:
    37
    Zustimmungen:
    0
    Für statische Libraries:
    Code:
    man ar
    Für dynamische Libraries:
    Code:
    man ld
    Beide Kommandos arbeiten mit den .o Dateien, die der Compiler erzeugt hat.
     
  9. #8 SkydiverBS, 19.05.2005
    SkydiverBS

    SkydiverBS Tripel-As

    Dabei seit:
    15.01.2005
    Beiträge:
    207
    Zustimmungen:
    0
    Ort:
    Freising
    Hi brand!

    Falls du mit englisch keine Probleme hast hilft dir vielleicht das HOWTO des TLDP zu dem Thema Program Library weiter.

    Gruss,
    Philip
     
  10. hehejo

    hehejo blöder Purist

    Dabei seit:
    12.10.2003
    Beiträge:
    1.280
    Zustimmungen:
    0
    Ort:
    Stein (Mittelfranken)
    Also eigentlich müsste der g++ das können.

    g++ -o programm haupt.cpp
     
Thema:

eigene Header

Die Seite wird geladen...

eigene Header - Ähnliche Themen

  1. Amazon veröffentlicht mit Bottlerocket einen eigenen Container-Host

    Amazon veröffentlicht mit Bottlerocket einen eigenen Container-Host: Amazon kündigt das minimale Linux-Betriebssystem Bottlerocket an, das als Container-Host auf physischen Rechnern oder virtuellen Maschinen laufen...
  2. Kubuntu plant eigenes Notebook

    Kubuntu plant eigenes Notebook: Im kommenden Jahr will Kubuntu ein eigenes Notebook auf den Markt bringen. Das »Kubuntu Focus« genannte Gerät soll eine hochwertige Ausstattung...
  3. System76 will eigenes Notebook bauen

    System76 will eigenes Notebook bauen: System76, Hersteller von Geräten mit vorinstalliertem Linux, plant in zwei bis drei Jahren ein selbst entworfenes Notebook auf den Markt zu...
  4. Google veröffentlicht eigenen AV1-Dekoder

    Google veröffentlicht eigenen AV1-Dekoder: Google hat einen im Rahmen des Chrome OS-Projekts entwickelten AV1-Dekoder veröffentlicht. Es ist neben der Referenzimplementation und dav1d...
  5. In eigener Sache: Neue, stark verbesserte Suchfunktion

    In eigener Sache: Neue, stark verbesserte Suchfunktion: Pro-Linux läuft nun mit der erneuerten Version 1.5 des Content Management Systems NB3. Die wichtigste sichtbare Änderung ist die neue, auf der...
  1. Diese Seite verwendet Cookies um Inhalte zu personalisieren. Außerdem werden auch Cookies von Diensten Dritter gesetzt. Mit dem weiteren Aufenthalt akzeptierst du diesen Einsatz von Cookies.
    Information ausblenden