User:PhoenixTank/Setting up Eclipse for Wii Development

From WiiBrew
< User:PhoenixTank
Jump to navigation Jump to search

The Eclipse Platform is a modern open source IDE with a built-in debugger GUI and support for several programming languages via plug-ins. Plug-ins can also be used to extend functionality. For many, programmer's notepad and insight will suffice, but others may find it a little out of date. This wiki will guide you through each stage in the setup process, but assumes that you are using Windows, have already installed DevkitPro and are relatively familiar with the concepts of developing Wii Homebrew. I hope it is of use to others ~ PhoenixTank | talk | contribs |

Requirements

Getting Started

  • Extract the eclipse zip to a directory of your choice. I recommend C:\eclipse\ N.B. There is no installer. Create yourself a shortcut to C:\eclipse\eclipse.exe, for convenience.
  • Fire up Eclipse, and if all goes to plan you should be greeted with a box asking you to select a workspace. Pick wherever you like, but for the sake of this guide, we will choose C:\WiiDev\projects\. You should choose to make this the default if you aren't interested in using Eclipse for any other development projects.
  • You are greeted with the Welcome splash screen. There are some tutorials on using Eclipse, but leave them for now. Head to File > New > C++ project (Or C Project, if you prefer, but this guide will reference C++ primarily)
  • In the dialogue box, name your project "HelloWorld" and chose Makefile ¬ Empty Project, then hit Finish.
  • Head to the workbench by clicking the far right arrow icon.
  • You now see the main IDE with Project Explorer, File Editor, Console and others panes.
  • There will be an error and a probably warning in the problems pane. Don't worry about them for now, and open C:\devkitPro\examples\wii\template\source in Windows Explorer. Select the Source folder and makefile, and copy them to clipboard. Return to Eclipse, right click the HelloWorld project in Project Explorer, and paste. The files should now be a part of your project.
  • Head to Projects > Properties, or do the same from the right click menu of helloworld. Click C/C++ Build then choose the behaviour tab. Here, change the value of Build (Incremental Build) to build, then hit OK.
  • With default settings, Eclipse will immediately build your project. The error should no longer be there to pester you.
  • If you have a warning like: Error launching external scanner info generator (gcc -E -P -v -dD C:/WiiDev/projects/.metadata/.plugins/org.eclipse.cdt.make.core/specs.cpp) then the easiest way to fix this is to add C:\devkitPro\devkitPPC\powerpc-gekko\bin; to the start of your path environment variable.

More Settings

Setting Environment Variables

Head to Control Panel, then (using classic view) System. Click the Advanced tab, then Environment Variables. After making changes here you may need to restart.

WIILOAD

This variable allows the wiiload program to send your .dol/.elf file over the network to be loaded by HBC (or other supporting loaders). Far simpler than removing a SD card and updating the file every time you want to test. Alternatively, there are GUI versions of Wiiload that do not require the variable to be set.

Under System Variables, add a new variable named "WIILOAD", with the value "tcp:xxx.xxx.xxx.xxx" where "xxx.xxx.xxx.xxx" signifies the IP of your Wii. For me, the value is "tcp:192.168.0.5", and thanks to my router, I can force my Wii to use that IP every time it connects (Look for something like "Address Reservation" in the router settings)

Path

This variable contains a list of paths, separated by a semi colon (;). The length and contents will vary but a fresh Windows XP install looks something like this:

%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem

The devkitpro installer should add "c:\devkitPro\msys\bin;" to the start, but you will likely have other paths added by other programs too. Be careful not to remove any of the existing paths.

Enabling Auto Complete

Unfortunately, auto complete (known as "content assist" in Eclipse), needs a helping hand in order to work correctly. Open your project's properties, head to C/C++ General, then Paths and Symbols. You then need to add the following paths, making sure to select "Add to all languages". Note that the folder names you need may vary, such as the 4.2.4 being higher or lower, and of course you need to correctly alter the paths to point to the location that you installed devkitPro to.

C:\devkitPro\libogc\include\
C:\devkitPro\devkitPPC\lib\gcc\powerpc-gekko\4.2.4\include\
C:\devkitPro\devkitPPC\powerpc-gekko\include\
C:\devkitPro\devkitPPC\powerpc-gekko\include\c++\4.2.4\
C:\devkitPro\devkitPPC\powerpc-gekko\include\c++\4.2.4\powerpc-gekko\

If you have subfolders within your project that contain source files, you may also need to add a path to your source folder. This should set up the majority of the locations for auto complete to work with. Default triggers are "." , "->" and "::" , but ctrl + space will also bring up auto complete.

Some Preferences

Eclipse is quite customisable, but the large amount of settings can be a struggle to wade through, in order to find what you are looking for. I have some personal preferences that may be of interest to others. From Window > Preferences:

  • General ¬ Workspace. Build automatically unchecked, Save automatically before build checked.
  • C/C++ ¬ Code Style. I use BSD/Allman, but the other most common styles are there too.
  • C/C++ ¬ Editor ¬ Content Assist. Drop the delay to 200 ms.
  • C/C++ ¬ New CDT project wizard ¬ Makefile Project : Behaviour tab. Uncheck Build on resource save, change value of 'Build (Incremental Build) to build