2010-06-26 18 views
5

mit habe ich 4 Dateieneine .proto Datei verknüpfen Qmake

message.proto udp.h udp.cpp main.cpp

message.proto eine Pufferdatei Google-Protokoll ist. Ich versuche, einen Protokollpuffer zu schreiben und Daten mit UDP zu senden und zu empfangen. udp.h und udp.cpp sind nur Klassen zum Implementieren von UDP.

Ich kann mein eigenes Makefile schreiben und mache das Notwendige für dieses kleine Beispiel. Später würde ich diesen Code in mein QT-Programm integrieren müssen. Ich benutze qmake -project, qmake um das Makefile zu generieren. Ich benutze Ubuntu 9.10

Könnte jemand mir die Änderungen sagen, die ich in der .pro-Datei oder dem Makefile machen muss, das von qmake erzeugt wird, um die Abhängigkeiten zu befriedigen.

Antwort

3

Normalerweise müssen Sie nur die entsprechenden Header und Quelldateien zu den entsprechenden HEADERS und SOURCES Variablen in der .pro-Datei hinzufügen, dh

SOURCES += udp.cpp message.pb.cc 
HEADERS += udp.h message.pb.h 

wo ich die message.pb.cc und Nachricht angenommen implicity. pb.h sind die Dateien, die von protoc (dem Protokollpuffercompiler) generiert werden. Wenn Sie zusätzlich möchten, dass das generierte Makefile protoc für Sie ausführt, können Sie dies mit der Funktion system (http://doc.trolltech.com/4.6/qmake-function-reference.html#system-command) erreichen.

Ich hoffe, dass hilft.

+0

Dies kommt automatisch, wenn ich den Befehl qmake -project ausführen Danach starte ich qmake, um das Makefile beim Ausführen des Makefile ich bekomme viele Fehler. Ich nehme an, dass die Protokollbibliothek nicht enthalten ist. Kann mir jemand sagen, wo und wie man die Protoc-Bibliothek in das Makefile oder die Profildatei von qmake einbindet? – user269037

+0

Sie haben dies als Ihre Antwort akzeptiert, aber wie Sie in den Kommentaren angegeben haben, gibt es noch ein Linker-Problem, wie sind Sie damit umgegangen? –

+1

Nun, LIBS + = -lprotoc –

Verwandte Themen