Gå til innhold

kompilere enkelt C++ QT program


Anbefalte innlegg

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
Videoannonse
Annonse
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

Hvis du ikke har klart å kompilere et enkelt program er det jo ikke rart du ikke skjønner trolltech sine sider :roll:

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
Hvis du ikke har klart å kompilere et enkelt program er det jo ikke rart du ikke skjønner trolltech sine sider :roll:

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

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 av Kagee
Lenke til kommentar
<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
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
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 :roll:

Lenke til kommentar

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 konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...