|This page is reserved for feature requests, and general discussion about the page itself. Please ask questions on the WiiBrew Forums, and please report bugs on the official Google Code site.|
How to port?
Hi. How do I port games with this? Would I be able to port e.g. SuperTux? What is need and what is to do? Ehhhm, I just read I should use my good old friend google to find out. --Woku 13:07, 12 January 2009 (UTC)
To port a game, you must first have its source code. Then change the events that use the keyboard or the mouse and replace them with wiimote controls from wiiuse. --Sal3000 11:20, 24 April 2009 (UTC)
- Someone should write a more thorough tutorial! There's still lots of SDL stuff people could port. --Tantric 15:34, 24 April 2009 (UTC)
- As someone who just finished re-writing a great portion of SDL-Wii I think you're a great candidate! ;) Seriously though I would love to see a good tutorial or even just an API reference written. I am madly reading the main SDL tutorial in the hope of figuring out if I can attempt to port the Intellivision emulator jzInTV to the Wii, a programme that thankfully already uses SDL. My biggest problem, aside from never using SDL before, is emulation of the 12+ button keypad. Anyway bring on a good tutorial / reference it would certainly help me in my quest - if I ever really start it. Ensign R 02:07, 1 May 2009 (UTC)
When my program is about to begin linking it gets this error:
File:main.o: In function `__static_initialization_and_destruction_0': j:/D0g_Engine/source/main.cpp:11: undefined reference to `Timer::Timer()' main.o: In function `SDL_main': j:/D0g_Engine/source/main.cpp:15: undefined reference to `cGFXCore::cGFXCore()' j:/D0g_Engine/source/main.cpp:22: undefined reference to `cObjectController::cObjectController()' j:/D0g_Engine/source/main.cpp:25: undefined reference to `initInput()'
And so on...
So in short, basically every function/class I've defined doesn't appear to exist to the linker, this code compiles fine for Windows so is there a setting in the makefile or something else I missed to avoid this?
Thanks in advance, Doogie 10:31, 3 May 2009 (UTC)
Cannot compile the template
I copied the template and all the sdl includes with the libs and dependencies into the libogc folder. I tried to compile it using programmers notepad.
This is the output:
> "make" template.c linking ... SDL_template.elf c:/devkitPro/libogc/lib/wii\libSDL.a(SDL_wii_main.o): In function `main': C:\Users\Daryl\Desktop\Projects\sdl-wii\SDL/src/main/wii/SDL_wii_main.c:68: undefined reference to `MOUSE_Init' C:\Users\Daryl\Desktop\Projects\sdl-wii\SDL/src/main/wii/SDL_wii_main.c:69: undefined reference to `KEYBOARD_Init' c:/devkitPro/libogc/lib/wii\libSDL.a(SDL_wiievents.o): In function `PumpEvents': C:\Users\Daryl\Desktop\Projects\sdl-wii\SDL/src/video/wii/SDL_wiievents.c:64: undefined reference to `KEYBOARD_GetEvent' C:\Users\Daryl\Desktop\Projects\sdl-wii\SDL/src/video/wii/SDL_wiievents.c:65: undefined reference to `MOUSE_GetEvent' collect2: ld returned 1 exit status make: *** [/c/devkitPro/examples/wii/SDL_template/SDL_template.elf] Error 1 "make": *** [build] Error 2 > Process Exit Code: 2 > Time Taken: 00:02
That question was asked on my SDL Tutorial talk page. I also had that error so I reinstalled Devkit with the older SDL version. How do I update Libogc to the SVN version the right way? So without having this error? GabberNL 17:02, 18 June 2009 (UTC)
- Just do a checkout with this path: https://devkitpro.svn.sourceforge.net/svnroot/devkitpro/trunk/libogc
It's explain here:https://sourceforge.net/scm/?type=svn&group_id=114505 -Crayon 18:45, 18 June 2009 (UTC)
- Very important is order of libs. If wiikeyboard is before SDL it does not work
Try this: -lSDL_ttf -lSDL_gfx -lSDL_mixer -lsmpeg -lSDL_image -lfreetype -ljpeg -lpng -lSDL -lz -lfat -lwiiuse -lwiikeyboard -lbte -logc -lm -Slappy 14:08, 31 July 2009 (UTC)
SDL_mixer not in the root makefile
Had to make / make install it separately - caused me some pain until I figured it out.Madmanguruman 02:07, 28 July 2009 (UTC)