The best thing to do is to patch the most recent stable sdl 1.2 source code, and get some kind of force feedback effects with sdl1.2. This is an interim measure until the next stable version of sdl comes out, but might be acceptable for your purposes.
However, it is best to install your compiled version in
/opt and not in path locations such as
/usr/local. Thereby you can still keep the original
libsdl1.2debian and only call your compiled version by using
LD_LIBRARY_PATH (see later explanation).
First, get the dependencies with
sudo apt-get build-dep libsdl1.2
sudo apt-get install build-essential checkinstall
build-dep to work, go to software sources and enable source code by checking the box. Then run
sudo apt-get update and any
build-dep commands should work.
The full list of dependencies is listed here with further information on compilation.
Now, download the sdl source code and extract it, then download the patch from icculus.org, extract the patch, and move it to the sdl source code folder, and from that folder run:
patch -p1 < sdl_1.2-haptic.diff
./configure --prefix=/opt/sdl-1.2 && make
It is not necessary to add
--enable-haptic (haptic is the term used for force feedback), as the patch should have enabled that. More on haptic is available here and here.
To install it in
/opt (or the place specified with configure), run
sudo checkinstall from the same folder.
To use this version of sdl, you need to run your game in a wrapper like this:
To check the correct sdl version is being loaded, run in terminal
and then run
ldd on a game you know uses sdl:
which shows you it is using your compiled sdl:
libSDL-1.2.so.0 => /opt/sdl-1.2/lib/libSDL-1.2.so.0 (0xb7695000)
The force feedback effects will vary greatly, and sometimes might not be present at all, but this is about the only way to get some effects at the moment. It is reported to work with the open source port of
FreespaceOpen, as this post shows relating to Linux-based systems (not Mac OS X as it suggests).