Tellan Skrevet 7. oktober 2008 Del Skrevet 7. oktober 2008 Eg har problemer med å kompilera eit enkelt QT program som har 1 fil. Eg har ikkje forstått nåke av guiden på trolltech sine sider heller. Operativsystemet mitt er windows XP. Det eg har prøvt å gjort er å laga kommandoen i notisbblokk(eg skal bruka noko anna, men dette burde virka) lagrer fila mi som hei.cpp i ei tom mappa som heiter hei. Starter command prompt til Qt, skriv inn: qmake -project qmake hei.pro make etter det eg trudde burde det nå vera ei exe fil som har namnet "hei" i denne mappa, men eg finn ikkje ei slik fil. Kva er det eg gjer gale? Så eit anna spørsmål. Eg bruker bloodshed dev-cpp som kompileringsprogram for vanlige C++ program. Det finst ein måte å skriva programmet mitt i bloodshed og kompilera det som eit Qt program, men eg veit ikkje korleis eg kan gjera detta heller. Kan nokon vera så snille og skriva ein guide til korleis eg gjer det, den kan ikkje bli for detaljert, eg har tross alt endå ikkje klart å kompilera eit program:) Lenke til kommentar
Kagee Skrevet 7. oktober 2008 Del Skrevet 7. oktober 2008 (endret) Hvilken kode skriver du i cpp-fila? Ingen kode = intet program. Du er i «hei»-mappa når du kjører qmake etc? Endret 7. oktober 2008 av Kagee Lenke til kommentar
Tellan Skrevet 7. oktober 2008 Forfatter Del Skrevet 7. oktober 2008 Hvilken kode skriver du i cpp-fila? Ingen kode = intet program. Hehe eg skriv inn det berømta Hello World eksempelet. Skriv av boka, så det bør ikkje vera noko feil her. Når eg skriv make så kompilerer programmet, får ivertfall opp mange beskjedar som g++ ............... Når eg skreiv inn make første gangen så klaga programmet på at eg hadde deklarert ein feil variabel(skrivefeil frå mi sida), så eg har fått opp feilmeldingar med å skriva inn desse kommandoane. Men nå er det som sagt ikkje nokon feilmeldingar lenger Her er koden: #include <QApplication> #include <QLabel> int main(int argc, char *argv[]) { QApplication app(argc, argv); QLabel *label = new QLabel("Hello Qt!"); label->show(); return app.exec(); } Lenke til kommentar
Giddion Skrevet 7. oktober 2008 Del Skrevet 7. oktober 2008 Hvis du ikke har klart å kompilere et enkelt program er det jo ikke rart du ikke skjønner trolltech sine sider Hvis jeg var deg så ville jeg starta med noe enklere, men hvis du ikke vil det så ville jeg lagt med feilmeldingen du får når du skriver inn kommandoene. Skriv litt om hva du ikke skjønner i trolltech sin manual. Søk på google etter kommandoene du bruker og kompilatoren du bruker det ligger enorme mengder informasjon der ute. Lenke til kommentar
Tellan Skrevet 7. oktober 2008 Forfatter Del Skrevet 7. oktober 2008 Hvis du ikke har klart å kompilere et enkelt program er det jo ikke rart du ikke skjønner trolltech sine sider Hvis jeg var deg så ville jeg starta med noe enklere, men hvis du ikke vil det så ville jeg lagt med feilmeldingen du får når du skriver inn kommandoene. Skriv litt om hva du ikke skjønner i trolltech sin manual. Søk på google etter kommandoene du bruker og kompilatoren du bruker det ligger enorme mengder informasjon der ute. Det er ikkje programmet eg ikkje forstår, programmet det skal fungera heilt fint det. Eg lurer berre på om dei kommandoane eg bruker for å kompilera programmet er korrekte. Eg lærer meg ikkje å programmera i Qt, eg kan programera i C++ frå før av. Lenke til kommentar
Kagee Skrevet 7. oktober 2008 Del Skrevet 7. oktober 2008 (endret) Sitter selv på linux - kjører kommandoene du oppgav i et normalt shell, og får da et program med samme navn som mappen det ligger i. Programmet består av en liten rute med teksten "Hello QT!" i. (sitter å lærer meg qt selv) $ cd qt-temp $ ls hello.cpp $ qmake -project $ ls hello.cpp qt-tmp.pro $ qmake $ ls hello.cpp Makefile qt-tmp.pro $ make g++ -c -pipe -O2 -Wall -W -D_REENTRANT -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_CORE_LIB -DQT_SHARED -I/usr/share/qt4/mkspecs/linux-g++ -I. -I/usr/include/qt4/QtCore -I/usr/include/qt4/QtCore -I/usr/include/qt4/QtGui -I/usr/include/qt4/QtGui -I/usr/include/qt4 -I. -I. -I. -o hello.o hello.cpp g++ -Wl,--no-undefined -o qt-tmp hello.o -L/usr/lib -lQtGui -lQtCore -lpthread $ ls hello.cpp hello.o Makefile qt-tmp qt-tmp.pro $ ./qt-tmp Selv bruker jeg Eclipse CDT med Trolltech sin Eclipse-plugin for å skrive Qt-kode. Endret 7. oktober 2008 av Kagee Lenke til kommentar
Giddion Skrevet 7. oktober 2008 Del Skrevet 7. oktober 2008 <snip>Det er ikkje programmet eg ikkje forstår, programmet det skal fungera heilt fint det. Eg lurer berre på om dei kommandoane eg bruker for å kompilera programmet er korrekte. Eg lærer meg ikkje å programmera i Qt, eg kan programera i C++ frå før av. aha, da skjønner jeg mer situasjonen din, beklager. Lenke til kommentar
NevroMance Skrevet 7. oktober 2008 Del Skrevet 7. oktober 2008 Du skal ikke skrive qmake hei.pro, men bare qmake. Altså skriver du: qmake -project qmake make Lenke til kommentar
Dundersalt Skrevet 15. oktober 2008 Del Skrevet 15. oktober 2008 Du skal ikke skrive qmake hei.pro, men bare qmake. Altså skriver du: qmake -project qmake make Når jeg gjør dette får jeg ikke noe under release mappen, men kun debugmappen. Til trådstarter: får du en debug mappe? isåfall har du en exefil der. for å få den i release mappen skriv "make release" Ikke for å kapre tråden: Jeg skal kjøre .exe filen og får da beskjed om at qtcore.dll og qtgui.dll ikke er funnet. Jeg finner da disse filene i qt/bin og kopierer de i samme mappe som .exe filen. Dette fungerer, men jeg ønsker meg en helt selvgående .exe fil. Er det noen måte jeg kan "bake" disse dll filene inn i exe filen? Lenke til kommentar
Kagee Skrevet 15. oktober 2008 Del Skrevet 15. oktober 2008 (endret) Det er «Static Linking» du er på jakt etter. Denne http://doc.trolltech.com/4.1/deployment-windows.html hjalp meg da jeg satt på windows en tid tilbake. Bestemte meg for å bare å sende med dll-filene, fremfor å recompilere QT. Endret 15. oktober 2008 av Kagee Lenke til kommentar
Dundersalt Skrevet 15. oktober 2008 Del Skrevet 15. oktober 2008 ah takker! Nå er jeg ikke så stiv i dette, men altså configure -static nmake sub-src Når den er ferdig er det bare å fortsette å programmere som normalt, men programmene vil nå ha dette integrert? Lenke til kommentar
Kagee Skrevet 15. oktober 2008 Del Skrevet 15. oktober 2008 Jaish. Har aldri gjort det selv. nmake eller mingw32-make avhenging av hva du bruker. Lenke til kommentar
Tellan Skrevet 16. oktober 2008 Forfatter Del Skrevet 16. oktober 2008 Du skal ikke skrive qmake hei.pro, men bare qmake. Altså skriver du: qmake -project qmake make Når jeg gjør dette får jeg ikke noe under release mappen, men kun debugmappen. Til trådstarter: får du en debug mappe? isåfall har du en exefil der. for å få den i release mappen skriv "make release" Ikke for å kapre tråden: Jeg skal kjøre .exe filen og får da beskjed om at qtcore.dll og qtgui.dll ikke er funnet. Jeg finner da disse filene i qt/bin og kopierer de i samme mappe som .exe filen. Dette fungerer, men jeg ønsker meg en helt selvgående .exe fil. Er det noen måte jeg kan "bake" disse dll filene inn i exe filen? Takk skal du ha, exe fila låg i mappa debug. Eg såg ikkje at det var ei mappa, trudde debug var ei fil, så eg hadde ingen grunn til å sjå der Lenke til kommentar
Dundersalt Skrevet 16. oktober 2008 Del Skrevet 16. oktober 2008 Som nevt, kjør også en "make release" så har du exefile din i releasemappen Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå