Tôi có một dự án Xcode đang hoạt động bao gồm Cocos2d trong một trong các giao diện. Bây giờ tôi cần thêm Box2d. Tôi đã cố gắng kéo thư mục Box2D vào thư mục libs của thư mục cocos2d-2.x-ARC-iOS của tôi và thêm vào mục tiêu đó, nhưng tôi nhận được điều này khi tôi biên dịch:Cách thêm Box2d vào Dự án Xcode/Cocos2d hiện có
(in b2BroadPhase.cpp)
'Box2D/Collision/b2BroadPhase.h' file not found
Tôi chắc chắn đây chỉ là lần đầu tiên của nhiều lỗi tôi sẽ nhận được. Tôi đang thiếu những bước nào để có được tất cả các tệp Box2d được biên soạn trong dự án của tôi?
Tất cả các tệp box2d được liệt kê trong Nguồn biên dịch cho mục tiêu thư viện cocos2d.
Và tại sao điều này lại khó thực hiện? Tại sao nó không hoạt động giống như bất kỳ thư viện nào khác?
VÀ - tôi có phải đổi tên từng đơn .m trong dự án của mình thành .mm? Đó là khá nhiều không thể vì đây là một dự án xcode lớn với nhiều tập tin. Tôi chỉ đang cố gắng sử dụng Box2d trong một chế độ xem.
thông tin bổ sung để đáp ứng với câu trả lời được đưa ra bởi LearnCocos2D-
cấu trúc thư mục của tôi (trong Finder) trông như thế này:
gốc = MyProject.xcodeproj, thư mục MyProject, cocos2d-2. Thư mục x-ARC-iOS Trong thư mục cocos2d-2.x-ARC-iOS có một thư mục có tên là libs. Bên trong thư mục mà tôi có thư mục Box2D, cùng với Cocos2d, CocosDenshion vv
Trong XCode Tôi có một DỰ ÁN (MyProject) Và 2 CÁC CHỈ TIÊU (cocos2d-thư viện, MyProject) Có "Header Search Paths" cho cả DỰ ÁN và MỤC TIÊU. Tôi đặt cái nào? Và nó nên được đệ quy hay không? Và khi tôi kéo thư mục Box2D vào Xcode, mục tiêu nào tôi đặt nó vào?
Tệp dự án của tôi được đặt tại/Users/me/Dropbox/iOS/MyProject. Vì vậy, chính xác những gì tôi nhập cho Đường dẫn tìm kiếm tiêu đề? /Users/me/Dropbox/iOS/MyProject/cocos2d-2.x-ARC-iOS/libs dường như không hoạt động.
Một Update - /Users/me/Dropbox/iOS/MyProject/cocos2d-2.x-ARC-iOS/libs như con đường Tiêu đề Tìm trong MyProject MỤC TIÊU dường như để làm cho tôi quá khứ lỗi Box2D. Sau đó, tôi đã có một tập tin 'cassert' không tìm thấy lỗi. Đã vượt qua điều đó bằng cách thay đổi bộ điều khiển xem, đó là phụ huynh và AppDelegate thành Loại tệp "Nguồn mục tiêu-C++" như bạn đã đề xuất. Và bây giờ ...
Bây giờ tôi đã có nhiều lỗi trong NSObjCRuntime.h NSZone.h, NSObject (Tên không đủ tiêu chuẩn dự kiến, Tên loại không xác định 'NSString', v.v.). Vì vậy, có vẻ như bạn hoặc là tạo ra một ứng dụng với Box2d/Cocos2d, hoặc một ứng dụng UIKit. Cố gắng để có cả hai là một cơn ác mộng hoàn chỉnh.
Cảm ơn bạn rất nhiều vì đã giúp đỡ. Tôi sẽ giải thích nỗ lực hiện tại của tôi ở đây trong một chỉnh sửa cho câu hỏi ban đầu của tôi, bởi vì tôi vẫn nhận được cùng một lỗi. – soleil
Tôi đã thực hiện các chỉnh sửa ở trên. Bạn cũng có thể xây dựng cách kiểm tra xem tôi có đúng đường dẫn tìm kiếm không? Tôi không hiểu phần đó của câu trả lời của bạn. Cảm ơn! – soleil
Trừ một cấp vì Box2D đã bao gồm thư mục Box2D trong đường dẫn tìm kiếm là những gì làm cho nó cuối cùng làm việc cho tôi! Và đừng quên đặt con đường serach giữa "" như nếu Box2D là trong thư mục dự án của bạn "$ (SRCROOT)" sẽ làm các trick –