da ich eigentlich mit der Programmierung unter Windows von der Arbeit her nichts zu tun habe stehe ich im Moment ein wenig auf dem Trockenen.
Ich habe mir QT4 für Windows runtergeladen. Die Umgebungsvariablen für QT sind auch registriert. Ich kann mir auch ohne Probleme mit qmake -project und qmake ein Makefile erzeugen lassen. So und jetzt die Preisfrage: Ich brauche irgendein GNU make für Windows? Ich habe den nmake von MS Visual benutzt. Aber den kann man auch vergessen.
Oder gibt es etwa eine Möglichkeit unter Linux mit QT ein Programm zu kompilieren das mir auch eine lauffähige .exe für Windows erzeugt?
MinGW hab ich bereits installiert. Finde dort aber keine ausführbare Datei die den Befehl make unterstützt. Wenn ich make in der Konsole aufrufe kommt immer nur: "Der Befehl "mingw32-make" ist entweder falsch geschrieben oder konnte nicht gefunden werden. Was nun?
MinGW hab ich bereits installiert. Finde dort aber keine ausführbare Datei die den Befehl make unterstützt. Wenn ich make in der Konsole aufrufe kommt immer nur: "Der Befehl "mingw32-make" ist entweder falsch geschrieben oder konnte nicht gefunden werden. Was nun?
Wenn Du Qt4 GPL für Windows installierst wirst Du gefragt, ob Du MinGW bereits installierst hast, oder ob Du es herunterladen willst. Entweder Du machst das so oder Du fügst Deiner PATH Umgebungsvariablen einfach noch den Pfad zum bin Verzeichnis Deiner mingw Installation hinzu.
Alternativ kann man jetzt auch mit dem inoffiziellen Additional Compiler Support for Qt 4.0.1 mit dem MSVC (6, 7, 8) und mit dem Borland C++ Compiler (FreeCommandLineTools, BCB4, BCB5) Qt 4.0.1 kompilieren.
Ich habe QT4 installiert, MinGW installiert und die PATH Variable zum MinGW bin Verzeichnis gesetzt. Es funktioniert aber nicht. Ich habe Eclipse installiert könnte es damit vielleicht zusammenhängen, dass es nicht funktioniert?
Wenn du zuerst mingw installierst, dann Qt.
dann haste unter start->programme->Qt by Trolltech v4.0.1 (OpenSource)
den Punkt "Qt 4.0.1 Command Prompt" und an diesem sollte dann make gehen. wichtig ist, wenn du die einzelne teile von Mingw runterlädst(dir tra.gzt Dateien) werden alle benötigt!!! Besser wäres es, wenn du den mingw installer benutzt und sagts, das er alles installieren soll.
So danke für eure Mithilfe habe mir Make nachinstalliert für MinGW. Jetzt bringt es mir allerdings den Fehler den mir der NMake auch schon ausgespuckt hat. Langsam hab ich die Befürchtung dass ich mit Windows wohl nicht mehr klar komme.
Fehlermeldung ist folgende:
.....
\mingw32\bin\ld.exe: Can not find -lqtmaind
.....
Ich hab mal einen Blick riskiert und die ld.exe ist auch vorhanden. Dann liegt es wohl an diesem -lqtmaind. Weiß wer ne Lösung und was -lqtmaind macht?
das liegt daran, das der linker die Qt Bibliotheken nicht findet.
was steht in in der Datei qtvars.bat?
die sollte sich im bin verzeichnis deiner Qt installation befinden.
Setting up a MinGW/Qt only environment...
-- QTDIR set to C:\Qt\4.0.1
-- PATH set to C:\Qt\4.0.1\bin
-- Adding C:\MinGW\bin to PATH
-- Adding C:\WINDOWS\System32 to PATH
-- QMAKESPEC set to win32-g++
@echo off
rem
rem This file is generated
rem
echo Setting up a MinGW/Qt only environment...
echo -- QTDIR set to C:\c++\Qt\4.0.1
echo -- PATH set to C:\c++\Qt\4.0.1\bin
echo -- Adding C:\c++\MinGW\bin to PATH
echo -- Adding %SystemRoot%\System32 to PATH
echo -- QMAKESPEC set to win32-g++
set QTDIR=C:\c++\Qt\4.0.1
set PATH=C:\c++\Qt\4.0.1\bin
set PATH=%PATH%;C:\c++\MinGW\bin
set PATH=%PATH%;%SystemRoot%\System32;C:\c++\MySQL\lib\opt
set QMAKESPEC=win32-g++
if not "%1"=="compile_debug" goto END
cd %QTDIR%
echo This will configure and compile qt in debug.
echo The release libraries will not be recompiled.
pause
configure -plugin-sql-sqlite -plugin-sql-odbc -qt-libpng -qt-libjpeg
cd %QTDIR%\src
mingw32-make debug
:END
so schaut es bei mir aus.
Desweiteren solltes du überprüfen ob die Umbegbungsvarialble QTDIR gesetzt ist, sowie QMAKESPEC.
BartSimpson hat geschrieben:Dann kann es auch nicht gehen. Da müsste viel mehr drinn stehen!!
So wie es aussieht hat Dewie wohl "das gibt folgendes aus" mit "da steht folgendes drinnen" verwechselt. Er hat die Ausgabe (echo) der Batchdatei gepostet, nicht die Batchdatei selbst.