2D Beschleunigung mit openGL
-
Okay ich hab mir jetzt mal ClanLib runtergeladen und auf dem Rechner ( Suse 9.2 ) installiert.
Jetzt habe ich ein Progrämmchen geschrieben was an das TicTacToe Tutorial auf der ClanLib Homepage angelehnt ist.
TestClanLib.h
#ifndef _TESTCLANLIB_H_ #define _TESTCLANLIB_H_ #include <ClanLib/core.h> #include <ClanLib/display.h> #include <ClanLib/gl.h> #include <ClanLib/appication.h> class TestClanLib : public CL_ClanApplication { public: virtual int main( int , char** ); } #endif
TestClanLib.cpp
#include "TestClanLib.h" #include <iostream> int TestClanLib::main( int argc , char** argv ) { CL_ConsoleWindow* console = new CL_ConsoleWindow("Testausgabe" , 300 , 150 ); console->redirect_stdio(); try { CL_SetupCore::init(); CL_SetupDisplay::init(); CL_SetupGL::init(); CL_DisplayWindow* window = new CL_DisplayWindow( "Title", 400 , 350 ); CL_SetupGL::deinit(); CL_SetupDisplay::deinit(); CL_SetupCore::deinit(); } catch ( CL_Error error ) { std::cout << error.message; console.display_close_message(); } return 0; }
Wie jag ich das jetzt am besten durch den Compiler ? Bzw mit g++ -c TestClanLib.cpp -o TestClanLib.o funktionierts nicht. Da fehlt ja schließlich noch was...
thx
Tom
-
Also meine Kristalkugel ist zwar ziemlich trueb, aber irgendwas sagt mir, dass du evtl. noch angeben musst, wo die includes fuer die Clanlib liegen
-
naja ich glaub so trüb war sie dann doch nicht
Allerdings mecker der Compiler jetz beim Linken:"g++ -c TestClanLib.cpp -I /pfad/zu/ClanLib -o TestClanLib.o" funktioniert fein
aber:
g++ TestClanLib.o -o TestClanLib /usr/lib/gcc-lib/i586-suse-linux/3.3.4/../../../crt1.o(.text+0x18): In function `_start': ../sysdeps/i386/elf/start.S:115: undefined reference to `main' TestClanLib.o(.text+0x55): In function `TestClanLib::main(int, char**)': : undefined reference to `CL_ConsoleWindow::CL_ConsoleWindow[in-charge](std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, int, int)' TestClanLib.o(.text+0xec): In function `TestClanLib::main(int, char**)': : undefined reference to `CL_ConsoleWindow::redirect_stdio()' TestClanLib.o(.text+0xf9): In function `TestClanLib::main(int, char**)': : undefined reference to `CL_SetupCore::init(bool)' TestClanLib.o(.text+0x106): In function `TestClanLib::main(int, char**)': : undefined reference to `CL_SetupDisplay::init(bool)' TestClanLib.o(.text+0x113): In function `TestClanLib::main(int, char**)': : undefined reference to `CL_SetupGL::init(bool)' TestClanLib.o(.text+0x170): In function `TestClanLib::main(int, char**)': : undefined reference to `CL_DisplayWindow::CL_DisplayWindow[in-charge](std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, int, int, bool, bool, int)' TestClanLib.o(.text+0x216): In function `TestClanLib::main(int, char**)': : undefined reference to `CL_SetupGL::deinit()' TestClanLib.o(.text+0x21b): In function `TestClanLib::main(int, char**)': : undefined reference to `CL_SetupDisplay::deinit()' TestClanLib.o(.text+0x220): In function `TestClanLib::main(int, char**)': : undefined reference to `CL_SetupCore::deinit()' TestClanLib.o(.text+0x279): In function `TestClanLib::main(int, char**)': : undefined reference to `CL_ConsoleWindow::display_close_message()' TestClanLib.o(.gnu.linkonce.t._ZN11TestClanLibD1Ev+0x16): In function `TestClanLib::~TestClanLib [in-charge]()': : undefined reference to `CL_ClanApplication::~CL_ClanApplication [not-in-charge]()' TestClanLib.o(.gnu.linkonce.t._ZN11TestClanLibD0Ev+0x16): In function `TestClanLib::~TestClanLib [in-charge deleting]()': : undefined reference to `CL_ClanApplication::~CL_ClanApplication [not-in-charge]()' TestClanLib.o(.gnu.linkonce.r._ZTI11TestClanLib+0x8): undefined reference to `typeinfo for CL_ClanApplication' collect2: ld returned 1 exit status
Irgendwie kann ich damit nix anfangen...
Tom
-
da sind .o oder .a oder .lib - dateien nicht referenziert, bzw. existieren nicht dort wo der compiler sie sucht..
Hast du nich ne IDE? gibt doch auch schöne für Linux.
-
Ausserdem musst du im Compiler RTTI anstellen.
-
ich benutz den Editor J. Hab schon einige IDEs ausprobiert (KDevelop, Eclipse etc) find ich aber alle unpraktisch.
DocJunioR schrieb:
da sind .o oder .a oder .lib - dateien nicht referenziert, bzw. existieren nicht dort wo der compiler sie sucht..
Und wie kann ich das beheben ?
btw: RTTI sagt mir nicht viel...
thx
Tom
-
tom07 schrieb:
ich benutz den Editor J. Hab schon einige IDEs ausprobiert (KDevelop, Eclipse etc) find ich aber alle unpraktisch.
DocJunioR schrieb:
da sind .o oder .a oder .lib - dateien nicht referenziert, bzw. existieren nicht dort wo der compiler sie sucht..
Und wie kann ich das beheben ?
g++ TestClanLib.o -o TestClanLib -i/pfad/zur/clanlib.a-Datei
-
-
tom07 schrieb:
ich benutz den Editor J. Hab schon einige IDEs ausprobiert (KDevelop, Eclipse etc) find ich aber alle unpraktisch.
DocJunioR schrieb:
da sind .o oder .a oder .lib - dateien nicht referenziert, bzw. existieren nicht dort wo der compiler sie sucht..
Und wie kann ich das beheben ?
Indem Du eine IDE benutzt...
-
nö nö ich benutzt lieber meinen J Editor den find ich ziemlich schick.
Ich hab das Prob jetzt aber anders gelöst indem ich einfach ein ClanLib Projekt genommen habe und mir das Makefile angeschaut habe.
Jetzt klappts auch mit dem Compilieren....
mfgTom
-
Dann RTFM.
Bye, TGGC (Keine Macht den Dummen)
-