2010-06-26 32 views
5

Tôi có 4 fileliên kết một tập tin .proto sử dụng qmake

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

message.proto là một tập tin đệm giao thức google. Tôi đang cố gắng để viết một bộ đệm giao thức và gửi và nhận dữ liệu bằng cách sử dụng UDP. udp.h và udp.cpp chỉ là các lớp để thực hiện UDP.

Tôi có thể viết makefile của riêng mình và làm việc cần thiết cho ví dụ nhỏ này. Sau đó tôi sẽ yêu cầu tích hợp mã này vào chương trình QT của tôi. Tôi đang sử dụng qmake -project, qmake để tạo Makefile. Tôi đang sử dụng Ubuntu 9.10

Một số người có thể cho tôi biết những thay đổi tôi cần thực hiện trong tệp .pro hoặc Makefile được tạo bởi qmake để đáp ứng các phụ thuộc.

Trả lời

3

Thông thường, bạn chỉ cần thêm các tập tin header và nguồn tương ứng để tương ứng HEADERSSOURCES biến trong file .pro, tức là

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

nơi tôi implicity cho rằng message.pb.cc và tin nhắn. pb.h là các tệp được tạo bởi protoc (trình biên dịch đệm giao thức). Nếu bạn muốn thêm makefile để chạy protoc cho bạn, bạn có thể thực hiện điều đó bằng chức năng system (http://doc.trolltech.com/4.6/qmake-function-reference.html#system-command).

Tôi hy vọng điều đó sẽ hữu ích.

+0

Điều này xuất hiện tự động khi tôi chạy lệnh qmake -project Sau khi tôi chạy qmake để lấy Makefile khi thực hiện makefile, tôi nhận được vô số lỗi. Tôi đoán thư viện protoc không được đưa vào. Ai đó có thể cho tôi biết ở đâu và làm thế nào để đưa thư viện protoc vào tệp makefile hoặc pro được tạo bởi qmake – user269037

+0

Bạn chấp nhận điều này làm câu trả lời, nhưng như bạn đã nêu trong phần bình luận, vẫn có vấn đề liên kết, bạn đã giải quyết vấn đề này bằng cách nào? –

+1

Vâng, LIBS + = -lprotoc –

Các vấn đề liên quan