Page 1 of 1

Qt creator (βοήθεια στο deploy)

Posted: Sun May 17, 2009 12:49 am
by Ισοβίτης
Προσπαθώ να κάνω deploy μία εφαρμογή γραμμένη σε Qt Creator. Ακολουθώ τις υποδείξεις της επίσημης σελίδας για static linking.

Πηγαίνοντας στο directory του Qt, κάνω configure:

Code: Select all

configure -static
Στη συνέχεια, πετάει fatal error U1065 στο

Code: Select all

nmake sub-src
Στη συνέχεια, κάνω nmake clean στο directory του application και τέλος, λέει ότι δεν αναγνωρίζει την εντολή qmake.

Καμιά ιδέα;
Spoiler: εμφάνιση/απόκρυψη
Συνηθίζω να δίνω κίνητρα στις ερωτήσεις μου, οπότε αυτή τη φορά όποιος έχει κάτι να προτείνει κερδίζει τα 45άρια του Μητροπάνου. :-D :-D :-D

Re: Qt creator (βοήθεια στο deploy)

Posted: Sun May 17, 2009 3:51 am
by cyberpython
Από ότι διάβασα, πολλοί είχαν πρόβλημα με το macro MAKEFLAGS του nmake - δοκίμασε να το κάνεις unset

Re: Qt creator (βοήθεια στο deploy)

Posted: Mon May 18, 2009 5:44 pm
by gasparosoft
Για όποιον ενδιαφέρεται η σωστή διαδικασία είναι εξής(για τα windows):
Κατεβάζουμε τα libraries εδώ. Περιέχει και το MinGW.

Αρχικά βάζουμε για στο PATH το path του bin του MinGW. Συνήθως C:\MinGW\bin

Μετά ανοίγουμε cmd και πάμε στον φάκελο όπου έχουν εγκατασταθεί οι βιλιοθήκες. Συνήθως C:\Qt\4.X.X.

Πάμε στον φάκελο C:\Qt\4.X.X\mkspecs\win32-g++ και ανοίγουμε το αρχείο qmake.conf.Βρίσκουμε το QMAKE-LFLAGS και προσθέτουμε το -static.

Στην συνέχεια πρέπει να αρχικοποιήσουμε την μεταβλητή QMAKESPEC. Δίνουμε στο cmd

Code: Select all

set QMAKESPEC=win32-g++
Αυτό το βάζουμε για να χρησιμοποιήσουμε το make του MinGW. Για περισσότερα βλέπετε το readme που υπάρχει στον φάκελο της Qt.

Αφού τα κάναμε όλα αυτά δίνουμε

Code: Select all

configure -static -release -no-exceptions
και περιμένουμε.

Τέλος δίνουμε

Code: Select all

mingw32-make
και πάμε και φτιάχνουμε έναν καφέ ή πάμε καμιά βόλτα(σας προτείνω το 2ο :P).
ΠΡΟΣΟΧΗ: Εδώ μπορεί να σκάσει το make. Οπότε πρέπει να ανοίξετε το Makefile και να κάνετε μερικές αλλαγές.

Για να κάνουμε linking τις static libraries στην εφαρμογή μας:

Πάμε στον φάκελο όπου βρίσκετε το project μας.

Δίνουμε

Code: Select all

set QMAKESPEC=win32-g++
qmake -project
qmake *.pro
mingw32-make clean
qmake -config release
minw32-make
Και έχουμε έτοιμο το .exe.

Για να επαληθεύσουμε ότι το πρόγραμμα μας δεν έχει shared libraries τις libraries της Qt κατεβάζουμε το πρόγραμμα depends και ανοίγουμε το .exe μέσα από αυτό.

ΥΓ: Πρέπει να έχετε Cl compiler. Αν έχετε εγκαταστήσει Visual Studio ή Visual C++ Express Edition τότε θα είστε οκ. Επίσης πρέπει να έχετε ενημερώσει και κατάλληλα το PATH.