Images anzeigen mit FLTK
-
Hallo, ich bin gerade dabei ein bissl FLTK zu "lernen", aber bereits bei Images komme ich nicht mehr weiter, ich habe ein bissl rumgespielt, und bekomme ständig diese Fehlermeldungen:
[Linker error] undefined reference to `Fl_GIF_Image::Fl_GIF_Image(char const*)'
ld returned 1 exit status
Makefile.win [Build Error] [Project1.exe] Error 1bei diesem Code:
#include <FL/Fl.H> #include <FL/Fl_Window.H> #include <FL/Fl_GIF_Image.H> #include <FL/Fl_Box.H> int main() { Fl_Window win(720,486); // make a window Fl_Box box(10,10,700,466); // widget that will contain image Fl_GIF_Image jpg("/Bilder/Bild.gif"); // load jpeg image into ram box.image(jpg); // attach jpg image to box win.show(); return(Fl::run()); }
(eigentl. habsch nen anderen Sourcecode, aber der ist ein bissl zu unübersichtlich, aber die Fehler kommen aufs Selbe raus) Den Sourcecode, habe ich von hier: http://www.gidforums.com/t-5795.html (habe mich nämlich schon ein bissl umgesehen ...)
Ich benutze Dev-C++ und habe dort unter Tools/Compiler Options auch die Flags, wie sie in dem Link angepriesen wurden, hinzugefügt, dann erhalte ich nur noch diese Fehlermedlung:
Makefile.win [Build Error] [Project1.exe] Error 1
die anderen beiden fallen weg ...
Und naja, libs kann ich nciht wirklich einbinden, weil bei FLTK 1.7 alles über DLL`s läuft ...
Kann mir jmd. sagen was ich falsch gemacht habe?
-
Hi,
entweder es liegt ein Problem mit Dev-Cpp vor (halte ich für wahrscheinlich), oder es fehlt evtl. doch noch ein Flag. Hast du -lfltk_images dabei?
MfG
GPC
-
ja, das habe ich dabei, und ich denke durch diesen flag gegen dann die oberen beiden Linker-fehler weg
Ich habe auch schon versucht die Makefile.win zu löschen, aber hilft auch nicht ...
-
Kennt DevCpp das Verzeichnis wo die Library drin liegt?
-
Schon mal über Kommandozeile (wie in dem verlinkten Thread) kompiliert?
-
Das Problem ist, dass ich keine Libs finden kann, im FLTK 1.1.7-Verzeichnis im lib-Ordner findet sich nur folgende Readme:
README.lib
----------This README file is a placeholder for library files on your
system.Under Microsoft Windows a successful build of all projects and
configurations will contain debug and release libraries for you
to link to - all are built using the multi-threaded DLL
settings. The DLL files (fltkdll.dll and fltkdlld.dll) required
for a complete DLL-based binary distribution are located in the
"visualc" directory.Under UNIX a single set of library files will be built, with or
without debug information depending on the options you provided
to the configure script.und ich vermute durch die Flags werden vllt. die benötigten Dll`s eingebunden, kann das möglich sein?
@GPC ich bin leider ein verwöhnter Entwicklungsumgebung-Buby, der noch über die Kommandozeile compiliert hat, aber ich versuchs mal hin zu kriegen ...
-
hast du überhaupt FLTK schon gebaut?
-
ja, und mit Fenstern, Buttons, Tabs, Draw-Funktionen etc. habe ich überhaupt kein Problem und auch keine Fehlermeldungen, nur bei diesen Image-Funktionen kommt der besagte Fehler.
-
Top se schrieb:
ja, und mit Fenstern, Buttons, Tabs, Draw-Funktionen etc. habe ich überhaupt kein Problem und auch keine Fehlermeldungen, nur bei diesen Image-Funktionen kommt der besagte Fehler.
Über Kommandozeile geht's auch nicht, oder (ich tipp nach wie vor auf das krüpplige Dev-Cpp)?
-
GPC, das glaube ich auch langsam, aber, ähm, ich habe mir jetzt Cygwin installiert, aber ich weiß nicht so richtig, wie ich da jetzt FLTK einbinden muss, wie das funktioniert ...
-
Top se schrieb:
GPC, das glaube ich auch langsam, aber, ähm, ich habe mir jetzt Cygwin installiert, aber ich weiß nicht so richtig, wie ich da jetzt FLTK einbinden muss, wie das funktioniert ...
Hehe, da sind wir schon zu zweit^^ ... aber gut, probieren wir mal was aus.
Was passiert, wenn du dein Programm so kompilierst (Namen halt entsprechend anpassen)? :
g++ -Wall simple_image.cpp `fltk-config --ldflags --cxxflags --use-images` -s -o TestMain
Wenn du weiterhin mit einer IDE arbeiten willst, kann ich dir entweder Code::Blocks oder das Visual C++ Express Edition ans Herz legen. Für die VC++ EE gibt's IIRC sogar ne Anleitung bei den FLTK Leutchen.
-
Ich hatte Schwierigkeiten das FLTK 1.1.7 in mein VC++ 6 einzubinden, jetzt habe ich es aber mal mit der Beta von FLTK2 probiert, und es hinbekommen *g*, jetzt muss ich nur noch gucken, obs mit meinen Images auch geht *gg*, dann haue ich Dev-CPP in die Ecke *lach*
von :Blocks habe ich ja noch gar nichts gehört, ich schaue mich mal um, vielen Dank!