vuurrobins devblog

A place to dump my development stuff.

Tag Archives: library

Boost on DS (0)

August 9th, 2010 by vuurrobin, under DS-dev.

This is a guide on how to compile boost for ARM processors using the devkitARM compiler. I’ll asume you already have devkitARM installed and that the DEVKITPRO and DEVKITARM environment variables set. I have the latest boost version (1.43.0) compiled with the latest devkitARM (r31) as a download at the botom of this post, if you want to use that.

First thing to do is download the latest boost and bjam version from the boost website, and unzip them to some directory. Next, create a file called user-config.jam and put “using gcc : 4.5.0 : arm-eabi-g++ ;” in it, without the quotes (change the version number if needed). You can use the default one at BOOST_DIR/tools/build/v2/user-config.jam, but personally I prefer not to change anything in the boost directory.

Next, change your PATH environment variable to include $(DEVKITPRO)/msys/bin/, $(DEVKITARM)/bin/ and the path to bjam (the first may already be in your PATH variable). It doesn’t really matter how you do it, as long as the PATH variable contains those directories when you execute bjam (I personally use a makefile to change the path and execute bjam).

Now open up a command shell, change the directory to the boost directory, and execute the following command:

bjam –user-config=”$CONFIG” –build-dir=”$BUILD_DIR” –layout=system –toolset=gcc variant=release link=static threading=single runtime-link=static –prefix=”$DEVKITPRO/boost” install

If you use a custom user-config.jam file, then change $CONFIG with the location of the file (including the filename) or if you use the default one, you can remove the –user-config=”$CONFIG” part. $BUILD_DIR should be the directory where all the intermediary files are stored. If you use a shell other than bash, then you should change $DEVKITPRO to the correct way of using environment variables. e.g. %DEVKITPRO% for cmd.exe etc. You can use –with-XXX or –without-XXX to compile just a few libraries or to omit libraries from compiling.

Compiling boost takes a while, so I suggest you do something else in the mean time. after its done, it should output something like this:

…failed updating 8 targets…
…skipped 159 targets…
…updated 8136 targets…

and the library should be installed in $DEVKITPRO/boost. Do note that some libraries have errors during compiling, and therefore aren’t available.

And now you can use boost in all your DS projects. Just don’t forget to to add boost in the makefile and remove -fno-exceptions from the CXXFLAGS, because boost uses exceptions pretty heavily.

boost 1.43.0 for devkitARM r31

Tagged with , , , , .

DSOL version 0.01 (4)

September 10th, 2009 by vuurrobin, under DS-dev, DSOL.

It took me a bit longer than expected, but a new version of DSOL is out.


  • added code for using keys and touchscreen
  • changed IUpdater name to IUpdate, to be consistend with the update function
  • changed the update function so that it returns a reference of itself
  • changed AffineMatrix to have more functions, like getting the scale of a sprite
  • improved documentation

download is on the DSOL page.

Tagged with , , .

DSOL version 0.00 (0)

August 8th, 2009 by vuurrobin, under DSOL.

A new version of DSOL has been released (or actually the first version, because the other version didn’t had the DSOL name). this version also is an actual library, instead of a bunch of header files. there is also some documentation generated with doxygen added with the library in the docs directory (and on this site), as well as some examples in the example directory.

as for the library itself, I can’t really think of anything that is really new, but pretty much everything has been improved and a lot of bugs has been fixed.

I have also created a page about DSOL, which contains download links to the new version (as well as the older version), a link to an online version of the docs and steps on installing the library.

because the library is still very incomplete, I just gave it v0.00. the version number will increase when I have done some more stuff.

now, onto button and touchscreen input. :)

Tagged with , , .