wxWindows schon fertig???



  • ich wollte mal wissen, ob man einen Compiler bekommmen kan, in dem wxWindows scon mit drinne ist. ich bekomms einfach net installiert...
    naja, danke für antworten



  • nein. Wo hängst du bei der Installation? Welche Plattform? Welcher Compiler?

    EDIT: Es heißt jetzt übrigens wxWidgets

    MfG

    GPC



  • Eshängt nirgends, nur ich kann die dateien nirgends includen...
    Windows XP Pro SP2
    Dev-C++

    wär nett, wenn man mir helfen könnte...

    #vg
    Merlin



  • sry wg. doppelpost (ich kann net editieren...)
    also: ich kann natürlich #include "wx\wx.h" eingeben, aber es kommt 'no such file or directory'. ich pack also die ganzen dateien ins include-verzeichnis und dann findet er wx.h. aber nicht setup.h *verwirrt*
    naja
    #vg
    Merlin



  • Hallo,

    was hast du denn bereits alles gemacht? Hast du's bereits kompiliert, oder nur das Archiv entpackt und roh ins include Verzeichnis des MinGW geschoben?
    Sind die Linkeroptionen gesetzt?

    Welche Fehlermeldungen (außer dass mit der setup.h) kommen denn?

    MfG

    GPC



  • also, da ich ein fauler mensch bin *rolleyes* hab ich ausnahmsweise die Installer-Version genommen.
    Ich installiere es also und gebe im Compiler (Dev-C++) den pfad zum 'include' verzeichnis von wxWidgets an. darauf kommen endlos viele Fehlermeldungen

    *Compiler Log

    Compiler: Default compiler
    Führt g++.exe... aus
    g++.exe "E:\Fensterprogrammierung^^\miniwin\win.cpp" -o "E:\Fensterprogrammierung^^\miniwin\win.exe" -I"E:\Programme\Dev-Cpp\lib\gcc\mingw32\3.4.2\include" -I"E:\Programme\Dev-Cpp\include\c++\3.4.2\backward" -I"E:\Programme\Dev-Cpp\include\c++\3.4.2\mingw32" -I"E:\Programme\Dev-Cpp\include\c++\3.4.2" -I"E:\Programme\Dev-Cpp\include" -I"D:\wxWidgets-2.6.3\include" -L"E:\Programme\Dev-Cpp\lib"
    In file included from E:/Programme/Dev-Cpp/include/wx/defs.h:21,
    from E:/Programme/Dev-Cpp/include/wx/wx.h:15,
    from E:\Fensterprogrammierung^^\miniwin\win.cpp:1:
    E:/Programme/Dev-Cpp/include/wx/platform.h:190:22: wx/setup.h: No such file or directory
    In file included from E:/Programme/Dev-Cpp/include/wx/platform.h:271,
    from E:/Programme/Dev-Cpp/include/wx/defs.h:21,
    from E:/Programme/Dev-Cpp/include/wx/wx.h:15,
    from E:\Fensterprogrammierung^^\miniwin\win.cpp:1:
    E:/Programme/Dev-Cpp/include/wx/chkconf.h:84:9: #error "wxUSE_DYNLIB_CLASS must be defined."
    E:/Programme/Dev-Cpp/include/wx/chkconf.h:92:9: #error "wxUSE_EXCEPTIONS must be defined."
    E:/Programme/Dev-Cpp/include/wx/chkconf.h💯9: #error "wxUSE_FILESYSTEM must be defined."
    E:/Programme/Dev-Cpp/include/wx/chkconf.h:113:9: #error "wxUSE_DYNAMIC_LOADER must be defined."
    E:/Programme/Dev-Cpp/include/wx/chkconf.h:121:9: #error "wxUSE_LOG must be defined."
    E:/Programme/Dev-Cpp/include/wx/chkconf.h:129:9: #error "wxUSE_LONGLONG must be defined."
    E:/Programme/Dev-Cpp/include/wx/chkconf.h:137:9: #error "wxUSE_MIMETYPE must be defined."
    E:/Programme/Dev-Cpp/include/wx/chkconf.h:153:9: #error "wxUSE_PROTOCOL must be defined."
    E:/Programme/Dev-Cpp/include/wx/chkconf.h:195:9: #error "wxUSE_REGEX must be defined."
    E:/Programme/Dev-Cpp/include/wx/chkconf.h:203:9: #error "wxUSE_STDPATHS must be defined."
    E:/Programme/Dev-Cpp/include/wx/chkconf.h:211:9: #error "wxUSE_XML must be defined."
    E:/Programme/Dev-Cpp/include/wx/chkconf.h:219:9: #error "wxUSE_SOCKETS must be defined."
    E:/Programme/Dev-Cpp/include/wx/chkconf.h:227:9: #error "wxUSE_STREAMS must be defined."
    E:/Programme/Dev-Cpp/include/wx/chkconf.h:235:9: #error "wxUSE_STOPWATCH must be defined."
    E:/Programme/Dev-Cpp/include/wx/chkconf.h:243:9: #error "wxUSE_TEXTBUFFER must be defined."
    E:/Programme/Dev-Cpp/include/wx/chkconf.h:251:9: #error "wxUSE_TEXTFILE must be defined."
    E:/Programme/Dev-Cpp/include/wx/chkconf.h:267:9: #error "wxUSE_URL must be defined."
    E:/Programme/Dev-Cpp/include/wx/chkconf.h:285:9: #error "wxUSE_ACCEL must be defined."
    E:/Programme/Dev-Cpp/include/wx/chkconf.h:293:9: #error "wxUSE_BMPBUTTON must be defined."
    E:/Programme/Dev-Cpp/include/wx/chkconf.h:301:9: #error "wxUSE_BUTTON must be defined."
    E:/Programme/Dev-Cpp/include/wx/chkconf.h:309:9: #error "wxUSE_CALENDARCTRL must be defined."
    E:/Programme/Dev-Cpp/include/wx/chkconf.h:317:9: #error "wxUSE_CARET must be defined."
    E:/Programme/Dev-Cpp/include/wx/chkconf.h:325:9: #error "wxUSE_CHECKBOX must be defined."
    E:/Programme/Dev-Cpp/include/wx/chkconf.h:341:9: #error "wxUSE_CHOICE must be defined."
    E:/Programme/Dev-Cpp/include/wx/chkconf.h:349:9: #error "wxUSE_CHOICEBOOK must be defined."
    E:/Programme/Dev-Cpp/include/wx/chkconf.h:357:9: #error "wxUSE_CHOICEDLG must be defined."
    E:/Programme/Dev-Cpp/include/wx/chkconf.h:365:9: #error "wxUSE_CLIPBOARD must be defined."
    E:/Programme/Dev-Cpp/include/wx/chkconf.h:373:9: #error "wxUSE_COLOURDLG must be defined."
    E:/Programme/Dev-Cpp/include/wx/chkconf.h:381:9: #error "wxUSE_COMBOBOX must be defined."
    E:/Programme/Dev-Cpp/include/wx/chkconf.h:389:9: #error "wxUSE_DATAOBJ must be defined."
    E:/Programme/Dev-Cpp/include/wx/chkconf.h:397:9: #error "wxUSE_DATEPICKCTRL must be defined."
    E:/Programme/Dev-Cpp/include/wx/chkconf.h:405:9: #error "wxUSE_DISPLAY must be defined."
    E:/Programme/Dev-Cpp/include/wx/chkconf.h:413:9: #error "wxUSE_DOC_VIEW_ARCHITECTURE must be defined."
    E:/Programme/Dev-Cpp/include/wx/chkconf.h:421:9: #error "wxUSE_FILEDLG must be defined."
    E:/Programme/Dev-Cpp/include/wx/chkconf.h:429:9: #error "wxUSE_FONTDLG must be defined."
    E:/Programme/Dev-Cpp/include/wx/chkconf.h:437:9: #error "wxUSE_FONTMAP must be defined."
    E:/Programme/Dev-Cpp/include/wx/chkconf.h:445:9: #error "wxUSE_GAUGE must be defined."
    E:/Programme/Dev-Cpp/include/wx/chkconf.h:453:9: #error "wxUSE_GRID must be defined."
    E:/Programme/Dev-Cpp/include/wx/chkconf.h:461:9: #error "wxUSE_HELP must be defined."
    E:/Programme/Dev-Cpp/include/wx/chkconf.h:469:9: #error "wxUSE_HTML must be defined."

    E:/Programme/Dev-Cpp/include/wx/chkconf.h:477:9: #error "wxUSE_XRC must be defined."
    E:/Programme/Dev-Cpp/include/wx/chkconf.h:498:9: #error "wxUSE_ICO_CUR must be defined."

    E:/Programme/Dev-Cpp/include/wx/chkconf.h:506:9: #error "wxUSE_IFF must be defined."
    E:/Programme/Dev-Cpp/include/wx/chkconf.h:514:9: #error "wxUSE_IMAGLIST must be defined."
    E:/Programme/Dev-Cpp/include/wx/chkconf.h:522:9: #error "wxUSE_JOYSTICK must be defined."
    E:/Programme/Dev-Cpp/include/wx/chkconf.h:530:9: #error "wxUSE_LISTBOOK must be defined."
    E:/Programme/Dev-Cpp/include/wx/chkconf.h:538:9: #error "wxUSE_LISTBOX must be defined."
    E:/Programme/Dev-Cpp/include/wx/chkconf.h:546:9: #error "wxUSE_LISTCTRL must be defined."
    E:/Programme/Dev-Cpp/include/wx/chkconf.h:554:9: #error "wxUSE_LOGGUI must be defined."
    E:/Programme/Dev-Cpp/include/wx/chkconf.h:562:9: #error "wxUSE_LOGWINDOW must be defined."
    E:/Programme/Dev-Cpp/include/wx/chkconf.h:570:9: #error "wxUSE_LOG_DIALOG must be defined."
    E:/Programme/Dev-Cpp/include/wx/chkconf.h:578:9: #error "wxUSE_MDI must be defined."
    E:/Programme/Dev-Cpp/include/wx/chkconf.h:586:9: #error "wxUSE_MDI_ARCHITECTURE must be defined."
    E:/Programme/Dev-Cpp/include/wx/chkconf.h:594:9: #error "wxUSE_MENUS must be defined."
    E:/Programme/Dev-Cpp/include/wx/chkconf.h:602:9: #error "wxUSE_MSGDLG must be defined."
    E:/Programme/Dev-Cpp/include/wx/chkconf.h:610:9: #error "wxUSE_NOTEBOOK must be defined."
    E:/Programme/Dev-Cpp/include/wx/chkconf.h:618:9: #error "wxUSE_PALETTE must be defined."
    E:/Programme/Dev-Cpp/include/wx/chkconf.h:626:9: #error "wxUSE_POPUPWIN must be defined."
    E:/Programme/Dev-Cpp/include/wx/chkconf.h:634:9: #error "wxUSE_PRINTING_ARCHITECTURE must be defined."

    E:/Programme/Dev-Cpp/include/wx/chkconf.h:642:9: #error "wxUSE_RADIOBOX must be defined."
    E:/Programme/Dev-Cpp/include/wx/chkconf.h:650:9: #error "wxUSE_RADIOBTN must be defined."
    E:/Programme/Dev-Cpp/include/wx/chkconf.h:658:9: #error "wxUSE_SASH must be defined."
    E:/Programme/Dev-Cpp/include/wx/chkconf.h:666:9: #error "wxUSE_SCROLLBAR must be defined."
    E:/Programme/Dev-Cpp/include/wx/chkconf.h:674:9: #error "wxUSE_SLIDER must be defined."
    E:/Programme/Dev-Cpp/include/wx/chkconf.h:682:9: #error "wxUSE_SOUND must be defined."
    E:/Programme/Dev-Cpp/include/wx/chkconf.h:690:9: #error "wxUSE_SPINBTN must be defined."
    E:/Programme/Dev-Cpp/include/wx/chkconf.h:698:9: #error "wxUSE_SPINCTRL must be defined."
    E:/Programme/Dev-Cpp/include/wx/chkconf.h:706:9: #error "wxUSE_SPLASH must be defined."
    E:/Programme/Dev-Cpp/include/wx/chkconf.h:714:9: #error "wxUSE_SPLITTER must be defined."
    E:/Programme/Dev-Cpp/include/wx/chkconf.h:722:9: #error "wxUSE_STATBMP must be defined."
    E:/Programme/Dev-Cpp/include/wx/chkconf.h:730:9: #error "wxUSE_STATBOX must be defined."
    E:/Programme/Dev-Cpp/include/wx/chkconf.h:738:9: #error "wxUSE_STATLINE must be defined."
    E:/Programme/Dev-Cpp/include/wx/chkconf.h:746:9: #error "wxUSE_STATTEXT must be defined."
    E:/Programme/Dev-Cpp/include/wx/chkconf.h:754:9: #error "wxUSE_STATUSBAR must be defined."
    E:/Programme/Dev-Cpp/include/wx/chkconf.h:762:9: #error "wxUSE_TAB_DIALOG must be defined."
    E:/Programme/Dev-Cpp/include/wx/chkconf.h:770:9: #error "wxUSE_TEXTCTRL must be defined."
    E:/Programme/Dev-Cpp/include/wx/chkconf.h:778:9: #error "wxUSE_TIPWINDOW must be defined."
    E:/Programme/Dev-Cpp/include/wx/chkconf.h:786:9: #error "wxUSE_TOOLBAR must be defined."
    E:/Programme/Dev-Cpp/include/wx/chkconf.h:794:9: #error "wxUSE_TOOLTIPS must be defined."
    E:/Programme/Dev-Cpp/include/wx/chkconf.h:802:9: #error "wxUSE_TREECTRL must be defined."
    E:/Programme/Dev-Cpp/include/wx/chkconf.h:810:9: #error "wxUSE_VALIDATORS must be defined."
    E:/Programme/Dev-Cpp/include/wx/chkconf.h:818:9: #error "wxUSE_WXHTML_HELP must be defined."
    E:/Programme/Dev-Cpp/include/wx/chkconf.h:1543:9: #error "wxMessageBox is always needed"
    E:\Fensterprogrammierung^^\miniwin\win.cpp: In constructor MyFrame::MyFrame(const wxString&, const wxPoint&, const wxSize&, long int)': E:\\Fensterprogrammierung^^\\miniwin\\win.cpp:25: error:wxButton' undeclared (first use this function)
    E:\Fensterprogrammierung^^\miniwin\win.cpp:25: error: (Each undeclared identifier is reported only once for each function it appears in.)
    E:\Fensterprogrammierung^^\miniwin\win.cpp:25: error: helloButton' undeclared (first use this function) E:\\Fensterprogrammierung^^\\miniwin\\win.cpp:25: error:wxButton' has not been declared

    Ausführung beendet

    *Compiler Log Ende

    es gibt in den unterverzeichnissen 3 setup.h's, die gehen aber alle nicht wenn ich die in plattform.h angebe.

    #vg
    Merlin



  • oha, ich fürchte, ich kann dir da nicht helfen, da ich kein Windows hab, um den Fehler nachzubauen. Es sind auf jeden Fall Präprozessor Fehler, die er da ausspuckt. Weiß aber nicht warum. Ist es eigentlich zulässig, dieses ^^ im Verzeichnispfad zu haben?

    Sorry.

    MfG

    GPC



  • unter windows schon^^
    naja, ich denke es ist kein präproz.-fehler denn: die entsprechende datei existiert nicht 😞
    naja, trotzdem danke für die hilfe.



  • ok, du hast den offiziellen Installer verwendet?

    Dann musst du noch folgendes machen:

    1. wxWidgets selbst kompilieren
    2. Dev-Cpp richtig einrichten

    1. wxWidgets selbst kompilieren

    1. geh ins Verzeichnis, wo du wxWidgets installiert hast. Dort gibts ein "build" - Unterverzeichnis, und darin wieder ein 'msw'-Verzeichnis.
    2. In der Datei "%wxInstall_dir%/build/msw/config.gcc" kannst du ein paar Optionen einstellen: ob du die Library shared (d.h. als DLL) haben willst oder als .lib, die du einfach ins Programm reinkompilierst, ob du debug oder release-Versionen willst....... Ich würd einem Anfaenger zu folgenden Einstellungen raten:
    SHARED = 0, MONOLITHIC = 1, BUILD = debug, UNICODE = 0

    das bedeutet: mach keine DLLs (Shared = 0), mach eine grosse Lib-Datei anstatt vielen kleinen (MONOLITHIC = 1) und mach mir bitte eine Debug-Version. Das Unicode = 0 sort dafuer, dass du _kein_ Unicode verwenden kannst. Ich find das fuer den Anfang am einfachsten 🙂

    Also Datei aendern, die obigen Dinge einstellen und abspeichern.

    3. Such jetzt nach dem "make"-Programm. Das liegt irgendwo im Dev-C++ Installationsverzeichnis (ich denke mal im Unterverzeichnis "bin"). Ich bin mir nicht mehr sicher, ob es bei Dev-C++ "make.exe" oder "mingw32-make.exe" heisst. Evtl. beim naechsten Befehl halt "mingw32-make" statt "make" verwenden 😉

    4. oeffne den Kommandointerpreter (cmd.exe) und geh ins "%wxInstall_dir%/build/msw/ - Verzeichnis. Gib dort folgendes ein:

    %PFAD_ZU_MAKE.EXE%/make.exe -f makefile.gcc

    Damit wird wxWidgets kompiliert. Das dauert jetzt ein wenig (je nach PC zwischen 10 und 30 Minuten wuerd ich schaetzen).

    5. Schau jetzt mal unter "%wxInstall_dir%/lib nach, da sollte es jetzt ein Unterverzeichnis "gcc_lib" geben, und darin eine Datei "wxIRGENDWASb.lib". Ich weiss nicht genau wie sie heisst, da ich mein wxWidgets nicht mit "MONOLITHIC=1" kompiliert habe. Aber sie faengt mit "wx" an und endet mit "d.lib" (das "d" hinten sagt, dass es ein Debug-Build ist). Merk dir diesen Namen.

    2. Dev-Cpp richtig einrichten
    Ich verwende schon lange kein Dev-Cpp mehr, also musst du selber rausfinden WO man folgende Dinge einstellt:

    1. "%wxInstall_dir%/include" zum Include-Pfad hinzufuegen. (damit #include <wx/wx.h> klappt)

    2. Beim Kompilieren wurde eine Datei "setup.h" erzeugt, die Informationen enthaelt, welche Optionen du in deine wx-Library mitkompiliert hast und welche nicht. Die Datei liegt in "%wxInstall_dir%/lib/gcc_lib/mswd/wx" und wird beim Kompilieren gebraucht. Also must du auch
    "%wxInstall_dir%/lib/gcc_lib/mswd/" (ACHTUNG: OHNE das 'wx'-Verzeichnis am Ende!) auch noch zum Include-Pfad hinzufuegen (dann bekommst du auch die ganzen "error "wxBLABLABLA must be defined." - Fehler beim kompilieren nicht mehr)

    3. Du musst dafuer sorgen dass die kompilierte wx-Library auch in dein Programm eingebunden wird. Dazu musst du einstellen, dass der Linker die Datei, die unter Punkt 1.5 rausgesucht hast, mit ins Programm linkt.
    Normalerweise macht man das in 2 Schritten:
    a) einstellen, dass "wx_LIBARYNAME_b.lib" mitgelinkt werden soll
    b) "%wxInstall_dir%/lib/gcc_lib/" zum Linker-Pfad mit einstellen

    So, damit sollte es eigentlich klappen denk ich 🙂



  • Also erstmal: vielen Dank für deine Mühe.
    Allerdings geht es trotzdem nicht 😞
    Hier meine befehle aus der Cmd und die dazugehörige meldung des make-dingens:

    D:\wxWidgets-2.6.3\build\msw>E:/Programme/Dev-Cpp/bin/make.exe -f makefile.gcc
    gcc -c -o gcc_mswd\wxregex_regcomp.o -g -O0 -mthreads -DHAVE_W32API_H -I..\..\i
    nclude -I..\..\lib\gcc_lib\mswd -D__WXMSW__ -MTgcc_mswd\wxregex_regcomp.o -MF
    gcc_mswd\wxregex_regcomp.o.d -MD ../../src/regex/regcomp.c
    gcc: installation problem, cannot exec `cc1': No such file or directory
    make.exe: *** [gcc_mswd\wxregex_regcomp.o] Error 1

    naja, wäre nett, wenn du mir helfen könntest.
    aber: gibt es nciht auch sowas wie schon fertig compiliertes wxWidgets??

    #vg
    Merlin



  • hmm.... scheint als koennte dein compiler nicht richtig ausgefuehrt werden. Versuch mal folgendes:

    Fuege das Installationsverzeichnis deines Compilers (in deinem Fall E:/Programme/Dev-Cpp/bin/ ) zu der PATH-Variable dazu.
    Unter WinXP machst du das, indem du auf den Arbeitsplatz Rechtsklickst->"Eigenschaften"->"Umgebungsvariablen" und dort die Systemvariable "PATH" editierst indem du am Ende noch ein "E:/Programme/Dev-Cpp/bin/" hinzufuegst. Achte darauf, dass die verschiedenen Verzeichnisse, die im PATH eingetragen sind, durch einen Strichpunkt gekennzeichnet sind.
    Versuch das ganze dann nochmal.

    Hmmmm.... jetzt wo du von vorkompilierten Paketen fuer wxWidgets sprichst: im Prinzip sollte es irgendwo ein DevPak (== Erweiterungspakete fuer DevC++) dafuer geben. IIRC gibts irgendwo in Dev-C++ eine Art "DevPak-Manager" (in einem Menue versteckt), ueber den man Dev-Paks installieren kann. Muesstest aber selber schauen wie du mit dem Zurechtkommst, zu lange her 😉

    Alternativ: es gibt auf http://www.devpaks.org/ unter "wxWidgets" ein DevPak fuer wxWidgets 2.6.1 (aktuell ist zwar 2.6.3, aber es gibt eh nicht weltbewegende Aenderungen zwischen den beiden Versionen). Ob du die Unicode-Variante nimmst oder nicht ist Geschmacksache. Das "contrib"-Paket brauchst du IMO erstmal nicht.
    Lad dir das File herunter und doppelklick da drauf, ich glaub den Rest macht Dev-C++ eh automatisch. Installiert dir auch ein wxWidgets-Template, so dass du gar nix mehr selber am Compiler einrichten musst. 🙂



  • Benutzt du http://wxdsgn.sourceforge.net/ ? Das funktionierte bei mir sofort.


Anmelden zum Antworten