FLTK



  • Dieser Thread wurde von Moderator/in Headhunter aus dem Forum Spiele-/Grafikprogrammierung in das Forum Andere GUIs - Qt, GTK+, wxWidgets verschoben.

    Im Zweifelsfall bitte auch folgende Hinweise beachten:
    C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?

    Dieses Posting wurde automatisch erzeugt.



  • stick_thai schrieb:

    DANKE.

    habe es soweit auch hinbekommen. die bibliotheken einzubinden war aber ne qual!

    GRÜSSE.
    STICK.

    Kannst Du verraten wie? Ich komme irgendwie nicht weiter. Nachdem ich die Pfade zur MS SDK richtig gesetzt habe, erzeugt er zwar fltkd.lib (Version 1.1.7) aber dann bekomme ich vom Linker tonnenweise Meldungen wie diese (z.B. beim mitgelieferten hello.cxx):

    Linking...
    fltkd.lib(fl_line_style.obj) : error LNK2001: unresolved external symbol __imp__DeleteObject@4

    Scheint ja nicht so, als ob er eine Datei nicht findet. VC2005 hat den Pfad zu den libs und zu den includes. Bei FLTK 2 komme ich auch nur bis zur Erzeugung von fltk2.lib

    Ist ja echt ne sch... Qual bis man mal beim einfachen "Hello World" ist. Wer kann mir helfen?

    Gruß
    Nixwiss



  • Hi,
    also ich muss zur Ehrenrettung von FLTK sagen, dass ich, im Gegensatz zu vielen anderen GUI-Toolkits, bei der Installation gar keine Probleme hatte.
    In der Projektdatei waren halt ein paar Projekte, ein oder zwei(?) waren das FLTK selbst und der Rest Beispielsachen. Die Beispiele gingen zwar nicht, aber das Hauptprojekt hat fehlerfrei kompiliert (fltk2d.lib fltk2dlld.lib fltk2_gld.lib)
    Zusätzlich zu diesen musst du aber noch wsock32.lib dazulinken.

    Gruß Hazzel

    PS: Ich verwende VS 2003 .NET und FLTK 2



  • Nixwiss! Du mußt die fltkd.lib deinem Projekt hinzufügen! Der Pfad zu den lib-Dateien reicht nicht. Ist zwar nicht die FLTK-Lib, aber funktioniert genauso:
    http://www.kharchi.de/cpp_gui/msvc_linker.png



  • Hallo Artchi und Hazzel,

    Danke für die Antworten. Eigentlich weiß ich aber immer noch nicht ganz genau, was ich anders mache als ihr. wsock32.lib und comctl.lib hatte ich bereits dem Linker an der Stelle "Zusätzliche Abhängigkeiten" zugefügt. Aber vieleicht nicht alle erzegten fltk-libs. Ich habe mich an das Video-Tutorial gehalten, das man bei www.fltk.org findet. Aber an der Stelle könnte das Problem liegen.

    Ich werde mich gleich mal an den anderen Rechner begeben (12 Fahrradminuten weiter), auf dem ich VC++2005 Express (die kostenlose Version) installiert habe.

    Danke und Grüße
    Nixwiss



  • Hi Nixwiss,
    welche FLTK Version verwendest du denn jetzt? Bei FLTK 2 brauchst du nicht nur fltk2.lib, sondern auch fltk2dll.lib!

    Gruß Hazzel



  • Hi,

    Aktuell versuche ich mich gerade an FLTK 2 (fltk-2.0.x-r5567). Alle zusätzlichen Abhängigkeiten, die ich angegeben habe haben nicht geholfen. Aber eigentlich sind in den mitgelieferten Dateien visualc\fltk.sln usw. alle nötigen Abhängigkeiten schon voreingestellt. Beim testprojekt "hello" z.B. steht bei Additional Dependencies:
    fltk2.lib ws2_32.lib msimg32.lib

    Bei fltk-1.1.x-r5567 heißt es entsprechend:
    fltk.lib wsock32.lib comctl32.lib

    Inzwischen habe ich herausgefunden, dass in der Debug-Version jeweils ein d angehängt wird, aber da achte ich jetzt darauf, das nicht zu verwechseln.

    fltk2dll.lib wird nicht fehlerfrei erzeugt, wird aber zumindest von "hello" scheinbar nicht benötigt. Beim kompilieren von FLTK 2 heißt es

    ------ Build started: Project: fltkdll, Configuration: Release Win32 ------
    Compiling...
    xpmImage.cxx
    ../..\fltk/draw.h(128) : error C2059: syntax error : '__declspec(dllexport)'
    ../..\fltk/draw.h(128) : error C2143: syntax error : missing ';' before '{'
    ../..\fltk/draw.h(128) : error C2447: '{' : missing function header (old-style formal list?)

    Kommt diese Fehlermeldung bei dir nicht? Liegt das vieleicht am fehlenden Cairo?

    Gruß
    Nixwiss



  • Hi,
    hm keine Ahnung warum diese Fehlermeldung kommt. Bei mir kam sie jedenfalls nicht und ich habe auch nicht irgendwas besonderes gemacht 😕
    Vielleicht kannst du ja mal die Entwickler oder so fragen ...

    Gruß Hazzel



  • Hi,

    Naja Pech. Immerhin hat es jetzt mit Mingw und Msys auf Anhieb geklappt und ich kann mit meinem Projekt beginnen, wenn auch nicht so komfortabel. Vieleicht gibt es eine besonderheit bei der "Visual Studio C++ Express Edition", die mir nicht klar ist. Oder die "Microsoft SDK r2" passt nicht dazu.
    Trotzdem danke für eure Hilfen.

    Gruß
    Nixwiss (mein Benutzername passt nach wie vor! :()



  • Hi zusammen,

    🙂 🙂 🙂

    Ich habe mich zu früh geärgert 😡 . Jetzt klappt es! 🙂 Das Problem waren fehlende Bibliotheken des SDK. Hier eine kurze Beispielinstallation für alle die sich Ärger ersparen wollen (am Beispiel FLTK2 und VC2005):

    1. Bei Microsoft Visual C++ 2005 Express (kostenlose Version) herunterladen
      und installieren.

    2. Bei Microsoft "Platform SDK" herunterladen (auch kostenlos) und installieren.

    3. SDK in VC2005 richtig installieren (das hatte ich erst missachtet). Man lese in der Hilfe von VC2005 die Anleitung "How to: Use Visual C++ Express Edition with the Microsoft Platform SDK" und führe alle Schritte durch. Das beinhaltet neben den Pfaden zum SDK auch einige Standartbibliotheken, die man in eine bestimmte Datei eintragen muss.

    4. Herunterladen von FLTK bei www.fltk.org, z.B. die neuste 2er-Version. Entpacken.

    5. Im darin enthaltenen Verzeichnis ide\visualc auf die Datei fltk.dsw doppelklicken, worauf VC2005 geladen wird.

    6. Mit Build Solution kompilieren. Ich bekomme zwar noch einige Fehlermeldungen und depreciation-Warnungen, aber das Wesentliche wird kompiliert. Auch werden die ganzen Beispiele kompiliert, die man dann im Verzeichnis test direkt starten kann, z.B. hello.exe.

    Grüße
    Nixwiss



  • Naja, aber Schritte 1 bis einschl. 3 gehen wir aber von aus, das es bereits gemacht wurde. 🙄 Weil, wir fragen ja auch nicht "Hast du schon Windows installiert?" 😉 Aber schön das es doch noch funktioniert hat. 🙂


Anmelden zum Antworten