linking libraries

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • RE: linking libraries

    Wo ich gerade MAXs Antwort lese fällt mir auf, daß der Name der Library auch nicht gerade nach Unix/ Mac OS X klingt.

    Auf einem Unix-System würde ich eher etwas erwarten wie libopengl.dylib, bzw. libopengl.a (einige linker-flags/ -settings gehen ebenfalls zwingend von dieser Namensgebung aus, wie man sie auch idR in /usr/lib/ findet).

    Woher kommen denn diese Bibliotheken (kenne mich mit opengl nicht aus)?

    t.
    Das iPhone sagt: "Zum Antworten streichen". Wie? Echt Jetzt? Muß ich erst die Wohnung streichen!?
  • RE: linking libraries

    für OpenGl brauchst du echt nur die frameworks includen. OpenGL.framework und womöglich noch das GLUT.framework. Die 32 im Namen ist 100% 'n verweis auf Win ~ Finger weg, lohnt sich gar nicht die Mühe, d was zu versuchen.
  • Ich erläuter euch mal die ganze Situation:

    Ich bin Win user(bitte nicht steinigen ;) )!!!
    Ich habe ein portables Programm mit SDL und OpenGL geschrieben. Bei mir läuft es(WinXP). Jetzt wollte ich es einem MAC user zum kompilieren geben jedoch hat dieser sowas noch nie gemacht. Er hat den Project Builder. Ich glaube das dieser, genauso wie DEV CPP unter Windows, die GNU compiler(z.B. g++) nutzt. Daher heißen die libs eigentlich libopengl32.a .
    Das Programm nutzt keine Win32 funktionen! Unser Problem ist nur das wir nicht wissen wie man libs(oder ?Framework?) mit dem Project Builder linkt. Ich sitze nunmal gut 1000km entfernt. Sonst hätte ich das Problem wahrscheinlich schön gelöst.
    cu

    Zenturio

  • Ich habe ein portables Programm mit SDL und OpenGL geschrieben.


    Die Portabilität scheint sich in Grenzen zu halten.


    ...MAC user zum kompilieren geben jedoch hat dieser sowas noch nie gemacht.

    Ich habe da so meine Zweifel, ob das ganze unter dieser Voraussetzung wirklich fruchten wird. Portierung kann doch wirklich eine harte Nuß sein. Aber mal schaun. Übrigens: Es heißt Mac, nicht MAC. MAC ist etwas anderes.

    Er hat den Project Builder. Ich glaube das dieser, genauso wie DEV CPP unter Windows, die GNU compiler(z.B. g++) nutzt. Daher heißen die libs eigentlich libopengl32.a .
    Das Programm nutzt keine Win32 funktionen! Unser Problem ist nur das wir nicht wissen wie man libs(oder ?Framework?) mit dem Project Builder linkt.

    Wie MAX im Prinzip schon sagte, in diesem Fall statt der lib das OpenGL.framework verwenden. Einfach über Menü -->Project-->Add Frameworks ... hinzufügen. (Oder die 'Datei' aus dem Finder /System/Library/Frameworks/OpenGL.framework an die entsprechende Stelle im Projekt per Drag&Drop bewegen). Evtl. müssen die Buildsettings noch etwas angepaßt werden (z.B. Framework search paths, Header search paths).

    Ich sitze nunmal gut 1000km entfernt. Sonst hätte ich das Problem wahrscheinlich schön gelöst.


    Wo Du? Wo Er?
    Das iPhone sagt: "Zum Antworten streichen". Wie? Echt Jetzt? Muß ich erst die Wohnung streichen!?
  • Könnt ihr mir nun auch noch erklären wie man ein leeres Projekt erstellt


    Na, bei so einer Frage platzt einem ja fast die Hutschnur ;-)
    einfach das Programm öffnen, und wenn nicht schon die Frage nach der Projektvorlage kommt, dann einfach über Menü File-->New Project... 'Empty Project' auswählen. Fertig. Evtl. besser 'C++ Tool' auswählen.

    und wie man Main.cpp, FontClass.hpp und SpriteClass.hpp richtig hinzufügtß Ich weiß ist ne doofe Frage ;)


    In der Tat, und hier streike ich dann auch. Wie wäre es, wenn Dein Willhelm Tell einmal eine Einführung oder die online-Hilfe liest, oder Du dich jemanden anvertraust, der etwas grundlegenderes Verständnis mitbringt. Ist nur so ein Gedanke. Nicht übel nehmen, bitte.

    Immerhin programmiere ich schon seit 3.5 Jahren.


    Auf'm Win-PC? Also bitte! Wie hält man das so lange aus?

    t.
    Das iPhone sagt: "Zum Antworten streichen". Wie? Echt Jetzt? Muß ich erst die Wohnung streichen!?
  • mit Windows mehr Möglichkeiten


    das muß ich aber natürlich stark bezweifeln

    und Hilfen.


    mehr User, mehr Resourcen, wahrscheinlich. Nur, wieviel Hilfe ist da nötig, wieviel ist dort überflüssig, weil die Probleme nicht auftauchen...?

    Wie dem auch sei: Jeder nach seiner Fasson, und viel Erfolg beim Portieren!

    t.
    Das iPhone sagt: "Zum Antworten streichen". Wie? Echt Jetzt? Muß ich erst die Wohnung streichen!?
  • > Auf'm Win-PC? Also bitte! Wie hält man das so lange aus?

    Im Prinzip ganz einfach.
    Immer wenn ich mich auf den Win-PC festgerannt habe, mail ich den Code nach Hause, lade ihn auf meinen Mac (C++ Tool) und starte. Dort kriege ich Fehlermeldungen, mit denen ich etwas anfangen kann und wenn es nicht so trivial ist, schaue ich mir den Code an und finde ad hoc meinen Denkfehler.
    Warum das so ist, weiß ich auch nicht, aber aus irgendwelchen geheimnisvollen Gründen arbeite ich auf dem Mac kreativer.

    cu
    Peter
    cu
    Peter
  • RE: linking libraries

    Hi,
    nun sagt ihm doch wie er eine Lib dazulinkt. Oder weiss es keiner?

    Original von Zenturio
    Könnt ihr mir bitte ganz genau beschreiben wie man libraries(?*.lib?) zu einem Projekt mit dem project builder linkt?
    Am besten an einem Beispiel wie opengl32.lib.


    Da gibt es mehrere Möglichkeiten. Ich gehe davon aus, dass du kein Makefile benutzt.
    1. Enfach die Lib ins Projekt ziehen(oder mit Add..)
    2. Über die Linkerflags -l deineLib. Die Lib muss dazu im Library search Path liegen

    Du wirst bei OS X bestimmt keine opengl32 kompatible Lib finden. Aber es gibt ein Framework, wie du sicherlich schon gemerkt hast. Erstmal vorbei mit portabel....

    Mein Tipp: Installier dir ein Linux oder BSD und bring dein Programm darauf zum laufen. So richtig schön mit Autoconf und Automake...
    Wenn es dann kompiliert sollte es theoretisch schon mit OS X gehen.
    Am besten du besorgst die einen Mac. Ein G4 ab 400 MHz geht schon, muss nur ordentlich Speicher rein :)

    Chris

    PS:
    Ich habe gut 10 Jahre für und unter Windows/DOS programmiert. Unter OS X fühle ich mich tatsächlich produktiver.
    Man macht einfach solange irgendwelche Dinge, bis man tot ist.
    Und dann bekommen die anderen Kuchen.
  • RE: linking libraries

    Original von Chris
    nun sagt ihm doch wie er eine Lib dazulinkt. Oder weiss es keiner?


    HALLO!!!
    Glaube, das haben wir schon 100.000x gesagt. Die Library ist für Win32 kompiliert worden - sie wird NIE auf einem Mac auch nur angeschaut werden! Es geht einfach nicht. Libraries können nicht system-unabhängig sein, weil der Compiler für jedes OS anders kompiliert. Deshalb muss man sich auch so viele Unix-Tools selber kompilieren - selbst da ist das System-abhängig, bei eng verwandten systemen. Wie soll das dann bei Tag (Mac) und Nacht (Windows - ich sehe schwarz :P) funktionieren???

    sorry, aber konnte nicht anders.

    Max
  • RE: linking libraries

    Original von Chris
    Hi,
    nun sagt ihm doch wie er eine Lib dazulinkt. Oder weiss es keiner?
    ...
    Da gibt es mehrere Möglichkeiten. Ich gehe davon aus, dass du kein Makefile benutzt.
    1. Enfach die Lib ins Projekt ziehen(oder mit Add..)
    2. Über die Linkerflags -l deineLib. Die Lib muss dazu im Library search Path liegen

    Ich dachte, die Frage hatte ich im Prinzip beantwortet:

    Einfach über Menü -->Project-->Add Frameworks ... hinzufügen. (Oder die 'Datei' aus dem Finder /System/Library/Frameworks/OpenGL.framework an die entsprechende Stelle im Projekt per Drag&Drop bewegen). Evtl. müssen die Buildsettings noch etwas angepaßt werden (z.B. Framework search paths, Header search paths).


    t
    Das iPhone sagt: "Zum Antworten streichen". Wie? Echt Jetzt? Muß ich erst die Wohnung streichen!?
  • RE: linking libraries

    Original von tsunamix

    Ich dachte, die Frage hatte ich im Prinzip beantwortet:

    Einfach über Menü -->Project-->Add Frameworks ... hinzufügen. (Oder die 'Datei' aus dem Finder /System/Library/Frameworks/OpenGL.framework an die entsprechende Stelle im Projekt per Drag&Drop bewegen). Evtl. müssen die Buildsettings noch etwas angepaßt werden (z.B. Framework search paths, Header search paths).


    t


    Hi tsunamix,
    das geht jetzt nicht gegen dich oder irgend jemand anders.
    Ich habe mich einfach nur über die Antworten geärgert. Da kommt einer und fragt was. Gleich wird zurückgefragt Warum? Das macht man doch soundso. Klingt für mich irgenwie besserwisserisch.
    Einfach erstmal auf die Frage antworten und dann den eigenen Senf dazugeben ist wesentlich freundlicher. Wir wollen doch einander helfen und nicht vergrätzen.

    Chris
    Man macht einfach solange irgendwelche Dinge, bis man tot ist.
    Und dann bekommen die anderen Kuchen.
  • RE: linking libraries

    Ja, da hats du sicher recht. Aber das Problem ist doch, dass das mit der Library, die er da hat einfach nicht funktioniert. Geht nicht. Und OS X kann auch solche Libraries nicht verwenden... Ansonsten stimmt's schon, was du gesagt hast.

    max