Setting up Development Environment: Difference between revisions
Jump to navigation
Jump to search
Update for devkitARM r43 |
added instructions for Linux |
||
Line 1: | Line 1: | ||
= Setup = | |||
* Install [http://devkitpro.org/ devkitARM]. If it's already installed, update it. On Windows there's a GUI installer. On Linux/Mac there's a perl-script. Make sure you also select ctrulib when installing. | * Install [http://devkitpro.org/ devkitARM]. If it's already installed, update it. On Windows there's a GUI installer. On Linux/Mac there's a perl-script. Make sure you also select ctrulib when installing. | ||
* Download the files in the [https://github.com/smealum/ctrulib/archive/master.zip ctrulib repository] (even though the library has already been installed) because the repository contains a 3DS project template and examples. | * Download the files in the [https://github.com/smealum/ctrulib/archive/master.zip ctrulib repository] (even though the library has already been installed) because the repository contains a 3DS project template and examples. | ||
== Building the examples | ==Linux== | ||
* First get the devkitARM updater Perl script for Linux. | |||
* Run it with superuser privileges if your /opt directory is not marked world read-writeable. | |||
* Get ctrulib from Smealum's GitHub repository, build and install it. | |||
<pre>sudo -s | |||
curl -L http://sourceforge.net/projects/devkitpro/files/Automated%20Installer/devkitARMupdate.pl/download -o devkitARMupdate.pl | |||
chmod +x ./devkitARMupdate.pl | |||
./devkitARMupdate.pl | |||
cd /opt/devkitpro | |||
git clone git@github.com:smealum/ctrulib.git | |||
cd ctrulib/libctru | |||
make | |||
make install | |||
</pre> | |||
= Building the examples = | |||
3DS examples are still being created. Currently there are a few examples in the separate ctrulib download under the "examples" folder. | 3DS examples are still being created. Currently there are a few examples in the separate ctrulib download under the "examples" folder. | ||
Line 11: | Line 28: | ||
* '''gpu:''' demonstrates how to render 3D geometry with the GPU | * '''gpu:''' demonstrates how to render 3D geometry with the GPU | ||
= Building homebrew for distribution = | |||
To build your homebrew open a terminal, browse to your homebrew's folder and run make. | To build your homebrew open a terminal, browse to your homebrew's folder and run make. | ||
Revision as of 12:37, 23 November 2014
Setup
- Install devkitARM. If it's already installed, update it. On Windows there's a GUI installer. On Linux/Mac there's a perl-script. Make sure you also select ctrulib when installing.
- Download the files in the ctrulib repository (even though the library has already been installed) because the repository contains a 3DS project template and examples.
Linux
- First get the devkitARM updater Perl script for Linux.
- Run it with superuser privileges if your /opt directory is not marked world read-writeable.
- Get ctrulib from Smealum's GitHub repository, build and install it.
sudo -s curl -L http://sourceforge.net/projects/devkitpro/files/Automated%20Installer/devkitARMupdate.pl/download -o devkitARMupdate.pl chmod +x ./devkitARMupdate.pl ./devkitARMupdate.pl cd /opt/devkitpro git clone git@github.com:smealum/ctrulib.git cd ctrulib/libctru make make install
Building the examples
3DS examples are still being created. Currently there are a few examples in the separate ctrulib download under the "examples" folder.
- arm11u: simple homebrew example
- sdmc: demonstrates how to access files on the SD card
- mic: demonstrates how to read sound from the microphone
- gpu: demonstrates how to render 3D geometry with the GPU
Building homebrew for distribution
To build your homebrew open a terminal, browse to your homebrew's folder and run make.
- This will build a .elf file and a .3dsx file together with an icon. The icon and .3dsx file are the format required for the Homebrew Channel.
- To build a Gateway-compatible .3ds file you need to strip the .elf file and use makerom on it (with the provided RSF file):
arm-none-eabi-strip [ELF file] makerom -f cci -o [.3ds file] -rsf [RSF file] -target d -exefslogo -elf [ELF file] -icon [icon file] -banner [banner file]