2011-03-30 42 views
5

hey tiêu đề khá nhiều nói lên tất cả. tôi đã thử các phương pháp khác nhau từ các nguồn internet, nhưng bất cứ khi nào tôi thử điều gì đó sai ... đây là nơi tôi đã nhận được Box2DLàm thế nào tôi có thể xây dựng Box2D để làm việc trong Code :: Blocks/Mingw32 (Windows)

trong cMake, tôi nhận được một loạt lỗi khi xây dựng nó (tôi đang thực hiện các bước trong readme.txt, nhưng không may, chúng dành cho Visual C++ ...)

vì vậy tôi tự hỏi mình có thể thiết lập thư viện này (tôi hoặc .a) và sử dụng nó trong dự án của mình không? thư viện của mình và khi tôi nạp nó vào và cố gắng #include ing các tiêu đề box2D, họ didnt đọc ở tất cả (tôi có một danh sách các lỗi không xác định) cũng box2d của ông là tôi tin rằng làm cho linux/unix vì vậy tôi nghĩ rằng đó là lý do ...)

nếu có ai đó có thể giúp cung cấp một số bước sẽ tốt đẹp.

cảm ơn bạn đã đọc.

Trả lời

10

Giả định: Bạn đã cài đặt cmake. Bạn đã cài đặt Mã :: Blocks/MinGW thành C: \ codeblocks. Bạn đã tải xuống Box2D và giải nén nó vào C: \ Box2D_v2.1.2.

Nếu có bất kỳ lỗi nào trong số đó sai, hãy sửa đổi đường dẫn để khớp với những gì bạn có.

Bắt đầu-> Chạy-> cmd.

Điều hướng đến Box2D "Xây dựng" thư mục:
cd C:\Box2D_v2.1.2\Box2D\Build

Tạo makefiles:
cmake -G "MinGW Makefiles" ..

Do đó:
mingw32-make

này sẽ ném một số cảnh báo, nhưng nên làm việc gần như hoàn toàn. Sau đó, gần cuối, nó sẽ sai lầm khi cố gắng biên dịch Testbed. AFAIK, không có cách nào để biên dịch Testbed bằng cách sử dụng MinGW (bạn phải sử dụng Visual Studio, tôi tin). May mắn thay, một .exe của nó có sẵn trên trang Box2D.

Trong thư mục Box2D \ Build \ Box2D, bây giờ sẽ có một tệp có tên là libBox2D.a. Sao chép tệp này vào C: \ codeblocks \ mingw \ lib.

Sao chép thư mục Box2D \ Box2D (hộp chứa Box2D.h) vào C: \ codeblocks \ mingw \ include. [Vì vậy, sau bước này, bạn nên có một tệp C: \ codeblocks \ mingw \ include \ Box2D \ Box2d.h, và KHÔNG C: \ codeblocks \ mingw \ include \ Box2d.h]

Và đó là nó . Bạn sẽ có thể biên dịch và chạy ví dụ "Hello Box2D". Đừng quên liên kết đến thư viện.

[EDIT]

Từ giao diện lỗi của bạn, tôi sẽ đoán rằng biến môi trường MinGW Path của bạn không được thiết lập chính xác. Đó là điều bất thường, vì khi bạn cài đặt Code :: Blocks/MinGW, nó thường đặt nó cho bạn, tôi tin.

Dù sao, (các bước sau có thể thay đổi chút ít tùy thuộc vào phiên bản của Windows):

Nhấp chuột phải vào "Computer [My]" -> Properties -> System Advanced Settings
Bấm "Environment Variables"
Tùy thuộc vào Windows bạn có, bạn có thể thấy Biến người dùng và Biến hệ thống hoặc có thể chỉ là một nhóm (Tôi không thể nhớ tên). Dù sao, hãy tạo Biến môi trường hệ thống mới có tên MINGDIR, với giá trị C:\codeblocks\mingw hoặc bất cứ nơi nào bạn đã cài đặt nó. Sau đó, tìm biến có tên là Đường dẫn (hoặc PATH) và nối kết này vào cuối: C:\codeblocks\mingw\bin. Đặt dấu chấm phẩy ở cuối mục nhập trước đó và không sử dụng dấu cách.
Cũng đảm bảo rằng C:\CMake\bin có mặt trong Biến hệ thống được gọi là Đường dẫn hoặc biến người dùng được gọi là Đường dẫn. Nếu không, hãy nối nó vào cuối.
Tôi nghĩ là vậy.

+0

hey. [this] (http://pastebin.com/vdQ7ZFxV) là lỗi mà tôi đã có khi sử dụng 'cmake -G" MinGW Makefiles "..' các lỗi này trông giống như các lỗi mà tôi đã có khi sử dụng các cmake gui .. .im nghĩ điều gì đó không được thiết lập đúng .. – Molmasepic

+0

WOOHOO !! nó đã làm việc! cảm ơn rất nhiều! bây giờ tôi có thể sử dụng cmake một cách tự do. một lần nữa cảm ơn bạn – Molmasepic

+0

+1 cho điều này. Theo Eclipse CDT đã có vấn đề trong việc tìm kiếm tiêu đề khi tôi đã xây dựng lib bằng cách sử dụng các chỉ dẫn của bạn. Có thể là một điều noob, nhưng quá trình xây dựng đã tạo ra một thư mục "Box2D" khác trong "Box2D/Build" vì vậy tôi đã chỉ trình liên kết tới "/Box2D/Build/Box2D" trong đường dẫn tìm kiếm thay vì "/Box2D/Build" mà tìm thấy lib ngay lập tức (rõ ràng, với đường dẫn bao gồm thích hợp và các cờ liên kết được thiết lập). –

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