Forum: PC-Programmierung Probleme wxWidget zu compilieren


von Mehmet K. (mkmk)


Lesenswert?

Servus allerseits

Code::Blocks zusammen mit MinGW benutze ich seit Jahren, um Code für 
meine AVR und STM32 Projekte zu entwickeln.
Wollte heute auch mal was für Windows programmieren. Habe also 
wxWidgets-2.9.2 entpackt und gemaess Anleitung im Ordner buil\msw 
folgenden Befehlt abgesetzt:
1
mingw32-make.exe -f makefile.gcc clean
Es folgt ein Stakkato an Fehlermeldungen, weil ja der Order 
../../gcc_lib noch leer ist und dort nichts zu löschen gibt.
Dann kommt es zum Abbruch:
1
process_begin: CreateProcess(NULL, -c "mingw32-make.exe -C ..\..\samples -f make
2
file.gcc LINK_DLL_FLAGS=\"-shared\" LINK_MODULE_FLAGS=\"-shared\" CC=\"gcc\" CXX
3
=\"g++\" CFLAGS=\"\" CXXFLAGS=\"\" CPPFLAGS=\"\" LDFLAGS=\"\" CPP=\"gcc -E\" SHA
4
RED=\"0\" WXUNIV=\"0\" UNICODE=\"1\" MSLU=\"0\" BUILD=\"debug\" DEBUG_INFO=\"def
5
ault\" DEBUG_FLAG=\"1\" MONOLITHIC=\"0\" USE_GUI=\"1\" USE_HTML=\"1\" USE_MEDIA=
6
\"1\" USE_XRC=\"1\" USE_AUI=\"1\" USE_RIBBON=\"1\" USE_PROPGRID=\"1\" USE_RICHTE
7
XT=\"1\" USE_STC=\"1\" USE_OPENGL=\"1\" USE_QA=\"0\" USE_EXCEPTIONS=\"1\" USE_RT
8
TI=\"1\" USE_THREADS=\"1\" USE_CAIRO=\"0\" OFFICIAL_BUILD=\"0\" VENDOR=\"custom\
9
" WX_FLAVOUR=\"\" WX_LIB_FLAVOUR=\"\" CFG=\"\" CPPUNIT_CFLAGS=\"\" CPPUNIT_LIBS=
10
\"\" RUNTIME_LIBS=\"dynamic\" GCC_VERSION=\"3\" clean", ...) failed.
11
make (e=2): The system cannot find the file specified.
12
mingw32-make.exe: *** [clean] Error 2

Der von mit benutze gcc hat die Version 4.4.1, deshalb verstehe ich 
nicht, wieso in der Fehlermeldung die GCC_VERSION=\"3\" vorkommt.
Habe etwas im Internet rumgeschaut; scheint, dass sich wxWidget mit gcc 
Version 3 problemlos compilieren laesst, aber mit der Version 4 Probleme 
macht. Aber eine Lösung konnte ich nicht finden. Kann mir bitte jemand 
unter die Arme greifen?

Dank im voraus!

von Mehmet K. (mkmk)


Lesenswert?

Ich geb's auf.
Auch ein Versuch das Ganze mit MVC++ aufzusetzen ging in die Hose.

von Mehmet K. (mkmk)


Lesenswert?

QT4 innerhalb von 5 Minuten ohne irgendwelche Probleme installiert.
No comment.

von kein (Gast)


Lesenswert?

Hast du irgendeinen Grund warum du wxWidgets selber kompilieren 
möchtest?
Muss es unbedingt Code::Blocks sein?

Wenn nein, dann nimm doch wxDev-C++, das bringt wxWidgets und einen 
Compiler mit.
http://wxdsgn.sourceforge.net/
Lief bei mir auf Anhieb und hat sogar einen guten Designer an Bord.

von Mehmet K. (mkmk)


Lesenswert?

kein schrieb:
> Hast du irgendeinen Grund warum du wxWidgets selber kompilieren
> möchtest?

Der Grund: Nichtwissen. Hatte zwar schon einen Blick in die WxWiki 
geworfen, aber wxDev-C++ nicht weiter beachtet.
Danke für den Hinweis. Werde es naechste Woche ausprobieren.

von 900ss (900ss)


Lesenswert?

Mehmet, dass Problem mit
1
process_begin: CreateProcess(NULL, -c "mingw32-make.exe -C ..\..\samples -f make
2
<snip>

hat nichts mit der GCC Version zu tun. Das mit der GCC-Version steht so 
in deinem Makefile.

Der Fehler "CreateProcess" hängt mit einem fehlenden Pfad zu den 
Binaries deiner Toolchain und zu MinGW zusammen. Das MinGW-make spuckt 
die Fehlermeldung "CreateProcess..." aus, wenn es ein Binary, das im 
Makefile verlangt wird, nicht aufrufen kann.

Dass du das hier.....
1
mingw32-make.exe -f makefile.gcc clean

genauso(!) aus einem Directory von wxWidgets aufgerufen hast und die 
Fehlermeldung oben so erschien, fählt mir etwas schwer zu glauben. 
Sorry.

Btw. wxWidgets funktioniert gut Dein Code::Blocks ist auch damit gebaut 
:-)

von Mehmet K. (mkmk)


Lesenswert?

900ss D. schrieb:
> fählt mir etwas schwer zu glauben.

Um meine Aussage frei von jedem Zweifel hier nochmals wiederholen zu 
können, habe ich die Anweisung
1
mingw32-make.exe -f makefile.gcc clean
im Ordern build/msw in eine x.bat Datei mit copy-paste kopiert und diese 
dann im command prompt ausgeführt.
Resultat: siehe meinen ersten Beitrag.

von 900ss (900ss)


Lesenswert?

Mehmet Kendi schrieb:
> Resultat: siehe meinen ersten Beitrag.

Hmm.. ich war der Meinung, er findet mingw32-make nicht (weil in der 
Fehlermeldung aufgeführt). Deshalb hatte ich meine Zweifel. Scheinbar 
ist das aber der Fall da du mingw32-make ohne eine weitere Pfadangabe, 
wo sich das Ding befindet, aufrufen kannst.

Trotzdem bleibe ich der Meinung, dass das mingw32-make ein Binary nicht 
findet. Und die Fehlermeldung besagt eigentlich, dass es mingw32-make 
(also sich selber) nicht findet.
Hab es gerade probiert wo in dem makefile avr-gcc aufgerufen wird und 
ich habe den Pfad zu avr-gcc nicht bereitgestellt.
1
-------- begin --------
2
process_begin: CreateProcess(NULL, avr-gcc --version, ...) failed.
3
make (e=2): Das System kann die angegebene Datei nicht finden.
4
mingw32-make: *** [gccversion] Error 2

von Mehmet K. (mkmk)


Lesenswert?

900ss D. schrieb:
> dass es mingw32-make
> (also sich selber) nicht findet.

wenn ich
1
mingw32-make --version
eingebe, kriege ich als Antwort:
1
GNU Make 3.81
2
Copyright (C) 2006  Free Software Foundation, Inc.
3
This is free software; see the source for copying conditions.
4
There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A
5
PARTICULAR PURPOSE.
6
7
This program built for i386-pc-mingw32

von Mehmet K. (mkmk)


Lesenswert?

Ich habe heute wxDev-C++ installiert.
Die Installation hat ca. 10 Minuten gedauert und verlief reibungslos.
@kein: danke für den Tip!

von Mark B. (markbrandis)


Lesenswert?

Mehmet Kendi schrieb:
> QT4 innerhalb von 5 Minuten ohne irgendwelche Probleme installiert.
> No comment.

Moment, Moment: Qt braucht doch ewig lange für den Build-Durchlauf. Wie 
soll das in 5 Minuten gehen? Oder ist mein Rechner so lahm? ;)

von Mehmet K. (mkmk)


Lesenswert?

Also ob's exakt 5 Minuten waren, weiss ich jetzt natürlich nicht mehr.
Auf jeden Fall ging's sehr schnell. Installiert habe ich es übrigens in 
einer virtuellen Umgebung.
Wenn es für Dich sehr wichtig ist, kann ich es mit der Stopuhr in der 
Hand wiederholen (nicht zynisch gemeint).

von Mehmet K. (mkmk)


Lesenswert?

Mir ist aufgefallen, dass wxDev-C++ die Version MingW gcc 3.4.5 benutzt 
und nicht 4.4.1.
Und dies, obwohl ich die Installation mit dem neuesten Setup von 
wxDev-C++ gemacht hatte.
Scheint, als würde sich wxWidgets mit der neuen Version nicht vertragen.

von Andreas (Gast)


Lesenswert?

Wird wxWidgets überhaupt noch gepflegt? Die haben schon seit geraumer 
Zeit eine 3.0 angekündigt und es kommt nichts mehr.

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Das letzte Release (2.9.2) ist vom Juli '11. Das ist noch nicht so lange 
her, und die Roadmap nennt auch ein konkretes Datum für das Release von 
2.9.3, und auch, was vor dem Release von 3.0 noch so geschehen muss.

Das wird also durchaus noch gepflegt und weiterentwickelt.

von der Hirte (Gast)


Lesenswert?

Mehmet Kendi schrieb:
> Also ob's exakt 5 Minuten waren, weiss ich jetzt natürlich nicht mehr.
> Auf jeden Fall ging's sehr schnell. Installiert habe ich es übrigens in
> einer virtuellen Umgebung.
> Wenn es für Dich sehr wichtig ist, kann ich es mit der Stopuhr in der
> Hand wiederholen (nicht zynisch gemeint).
Vermutlich hast du Qt installiert und nicht kompiliert?

Gibt es wxWidget nur zum selber kompilieren für Windows? Wer tut sich 
denn sowas freiweillig an?

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

der Hirte schrieb:
> Wer tut sich denn sowas freiweillig an?

Das dürfte mit der Zielgruppe zu tun haben. Softwareentwickler, die 
ihren Job ernstnehmen, und eine Aufmerksamkeitsspanne von mehr als drei 
Minuten haben, die sind in der Lage, auch mit "selbst zu compilierendem" 
Sourcecode zu arbeiten.

von Mark B. (markbrandis)


Lesenswert?

der Hirte schrieb:
> Vermutlich hast du Qt installiert und nicht kompiliert?

"configure" und "make" (bzw. "nmake") aufrufen ist jedenfalls so 
vorgesehen:
http://doc.qt.nokia.com/stable/install-win.html

Und dann haut's mit den 5 Minuten nicht hin. Es sei denn vielleicht mit 
richtig schneller CPU, sehr viel Speicher und einem flotten Solid State 
Drive :-)

von der Hirte (Gast)


Lesenswert?

Rufus Τ. Firefly schrieb:
> der Hirte schrieb:
>> Wer tut sich denn sowas freiweillig an?
> Das dürfte mit der Zielgruppe zu tun haben. Softwareentwickler, die
> ihren Job ernstnehmen, und eine Aufmerksamkeitsspanne von mehr als drei
> Minuten haben, die sind in der Lage, auch mit "selbst zu compilierendem"
> Sourcecode zu arbeiten.
Kann man, muss man aber nicht. Ich würde schließlich mit WxWidgets 
arbeiten wollen und nicht an.
Ab gut, ist wie immer, dem Moderator Rufus auf den Schlisp treten, zeigt 
immer wieder, dass er nicht moderator-tauglich ist.

Mark Brandis schrieb:
> der Hirte schrieb:
>> Vermutlich hast du Qt installiert und nicht kompiliert?
> "configure" und "make" (bzw. "nmake") aufrufen ist jedenfalls so
> vorgesehen:
> http://doc.qt.nokia.com/stable/install-win.html
> Und dann haut's mit den 5 Minuten nicht hin. Es sei denn vielleicht mit
> richtig schneller CPU, sehr viel Speicher und einem flotten Solid State
> Drive :-)
Dass das geht, weiss ich, speziell für statische Anwendungen muss man ja 
selbst kompilieren. Aber dass er das in 5 Minuten kompiliert, kann ich 
nicht so ganz glauben. ;-)

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

der Hirte schrieb:
> Kann man, muss man aber nicht. Ich würde schließlich mit WxWidgets
> arbeiten wollen und nicht an.

Daß das reine Übersetzen eines vorgefertigten Projektes für Dich mit "an 
wxWidgets arbeiten" äquivalent ist, kann ich hier wohl unkommentiert im 
Raum stehenlassen.

von 900ss (900ss)


Lesenswert?

Rufus Τ. Firefly schrieb:
> der Hirte schrieb:
>> Kann man, muss man aber nicht. Ich würde schließlich mit WxWidgets
>> arbeiten wollen und nicht an.
>
> Daß das reine Übersetzen eines vorgefertigten Projektes für Dich mit "an
> wxWidgets arbeiten" äquivalent ist, kann ich hier wohl unkommentiert im
> Raum stehenlassen.

Ich habe wxWidgets schon benutzt und dafür natürlich auch übersetzt und 
es hat dann auch funktioniert.

Leider ist es nicht damit getan, "das reine Übersetzen eines 
vorgefertigten Projektes". Meistens funktioniert das nicht gleich 
sondern man muß "schrauben".
Ich muß Hirte hier zustimmen: Wenn es nur mit übersetzten getan wäre und 
das ohne weiteres durchläuft: OK. Aber auch ich habe ein paar Stunden 
geopfert, bis das lief. Und Mehmet hat ja auch so seine Problem damit.

Ich bin auch kein Fan von vorher konfigurieren, übersetzen u.s.w. Das 
ist schließlich ein Werkzeug das ich einfach nutzen möchte ohne vorher 
ein paar Stunden mit den "zusammensetzen" zu verbringen. Im 
professionellen Bereich erst recht nicht. Oder gehst du in einen 
Werkzeugladen und kaufst einen Hammer, den du erst zusammensetzen mußt? 
Nein du kaufst einen fertigen Hammer, da du ihn sofort einsetzen 
möchtest und deinen Spaß nicht im Hammer zusammensetzen siehst.

OK, genug OT. :-)

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.