NULL-ZERO.COM

Good Things Come to Those Who Wait…

Statyczna biblioteka Bullet

1 Star2 Stars3 Stars4 Stars5 Stars (No Ratings Yet)

Jeżeli ktoś miałby ochotę pobawić się Bullet’em z kompilatorem innym niż VC++ (np. mój ukochany Code::Blocks) to podaję jak skompilować statyczną wersję tej biblioteki. Tak przy okazji to Visual Express ma coś nie tak z nagłówkami (funkcja exit) i się elegancko wykrzacza podczas kompilacji (przynajmniej u mnie).

Kompilator gcc korzysta z trochę innych plików pośrednich niż m$vc, plus ustawienia projektów mogą być różne, najlepiej więc zacząć od zera.

Zrobimy sobie 3 projekty pod C::B:

  • Bullet Library
  • OpenGL Bullet Library
  • Test Demo

Bullet Library:

Tworzymy nowy projekt (nazwijmy go BulletLib) wybierając opcję Static Library w C::B. Wywalamy z niego main.c, następnie kopiujemy całe /src z Bulleta do naszego katalogu i dodajemy do projektu (recursive!). Konfigurujemy ścieżki przeszukiwania w projekcie tak, aby przeglądały /src. Kompilujemy – jeżeli nie działa to usuwamy podkatalog /BulletMultiThreaded z naszego projektu – trudno, nie będzie wykorzystywać wielowątkowości ;) Otrzymujemy bibliotekę którą będziemy poźniej linkować do naszych projektów.

OpenGL Bullet Library:

Analogicznie do poprzedniego (nazwijmy go BulletOpenGL), z tym że powinniśmy dodać jeszcze jeden krok – kopiujemy foldery Demos/OpenGL oraz Extras/freeglut do katalogu naszego projektu, w ścieżkach wyszukiwania dodajemy katalogi /OpenGL, /freeglut, /freeglut/GL/ oraz /src z poprzedniego projektu. Kompilujemy i otrzymujemy następną bibliotekę do linkowania.

Test Demo:

Tworzymy sobie projekt Console Executable, w konfiguracji linkera dodając obie powyższe biblioteki, jako kod możemy wziąść sobie przykład z Hello World – działa, chociaż nie wizualizuje ;)

Powyższe rozwiązanie jest "ku pamięci", ściągnięte z forum bulleta (thx projectileman)

http://rosetta.null-zero.com/wp-content/plugins/sociofluid/images/digg_32.png http://rosetta.null-zero.com/wp-content/plugins/sociofluid/images/reddit_32.png http://rosetta.null-zero.com/wp-content/plugins/sociofluid/images/delicious_32.png http://rosetta.null-zero.com/wp-content/plugins/sociofluid/images/newsvine_32.png http://rosetta.null-zero.com/wp-content/plugins/sociofluid/images/technorati_32.png http://rosetta.null-zero.com/wp-content/plugins/sociofluid/images/google_32.png http://rosetta.null-zero.com/wp-content/plugins/sociofluid/images/myspace_32.png http://rosetta.null-zero.com/wp-content/plugins/sociofluid/images/facebook_32.png

Nie ma podobnych postów.

1 Star2 Stars3 Stars4 Stars5 Stars (No Ratings Yet)
No comments

No comments yet. Be the first.

Leave a reply