|
|
Wiki > Main > InterixDevelopment (compare)
|
Difference: InterixDevelopment (r3 vs. r2)Setting up a Rockbox development environment using Interix
OverviewThis is a description of how to set up a development environment using Interix. Interix is also known as Microsoft Services for Unix (SFU) resp. Microsoft Services for Unix Applications (SUA). %W% WARNING: This method is not recommended for users unfamiliar with the Unix command line. It is meant as an alternative to using Cygwin for users who want to experiment. Also, this method is only usable on the Windows versions stated in step 1, other versions won't work. Note that this environment is currently limited to making target builds. No simulator support, SAPI voice file build support, or manual build support yet. SAPI support will be added soon (requires adapting voice.pl). Step 1: Download the SFU main package and required hotfixesFor Windows 2000 Professional, Windows 2000 Server, Windows XP Professional, and Windows Server 2003 (non-R2) you will need to download SFU 3.5 from Microsoft. SFU 3.5 is what this description is based on. Windows Server 2003 R2 includes SUA 5.2, which can be enabled via Software->Add/Remove Windows features. It will prompt to download the tools package after enabling the basic functionality. You will need to adjust the following steps a bit, but the basic method should be the same. Likewise, Windows Vista Business and Ultimate include SUA 6.0. For SFU 3.5, you will also need to request and download the following hotfixes (they're provided free of charge, but you need to give a valid email address):
Step 2: Install the basic environment
Run the SFU installer. You need to perform a custom installation, and select the following components:
Deselect all others. Not selecting UNIX Perl here is on purpose. It's oudated, and we'll install a newer one later.
Now install the 3 hotfixes, in the order given above. Each hotfix requests a reboot after installation. After installing the hotfixes, check whether the following directories exist on the volume where you installed SFU: Now you need to check and (very likely) fix Step 3: Download and install the Interopsystems developer bundle
Download the developer bundle from www.suacommunity.com into a directory with no spaces in the path.
Install the package. It will take some time, and ask a few questions during the process:
Using Windows explorer, go to
Step 4: Configure and fix up the environment
Check whether perl is properly installed: Make a symlink so that perl is found where many scripts expect it: SFU 3.5 only: SFU 3.5 comes without inttypes.h and stdint.h, however, these are needed for rockbox tools and sims and all kinds of other stuff. Download inttypes-sfu3.5.zip, extract it and put both .h files into /usr/include. Edit
# Set a home directory within the SFU path if available
if [ -d /home/$USERNAME ]; then
export HOME="/home/$USERNAME"
cd $HOME
fi
# Shell dependent settings
case "`echo "_$0" | /usr/bin/tr '[:upper:]' '[:lower:]' | /usr/bin/sed -e 's/^_//'`" in
bash | -bash | */bash )
# Set a default prompt of: user@host and current_directory
export PS1='\[\e]0;\w\a\]\n\[\e[32m\]\u@\h \[\e[33m\]\w\[\e[0m\]\n\$ '
;;
* )
# Sorry, this shell has no defaults in /etc/profile.lcl
# feel free to add your own.
export PS1='$ '
;;
esac
Using a directory without spaces as the home directory for users will avoid a lot of trouble. You need to create the directories and set the proper permissions. Note that the username must be capitalized the exact same way as it is used for logging into windows.
The version of GNU make shipped with the Interopsystems developer bundle is outdated. We want GNU make 3.81 for optimum build performance. Check the installed version: Uninstall the bundled version of GNU make: Download the GNU make sources Unpack the source and cd into the directory Start bash, and check out rockbox SVN. Then cd into tools/. Since Interix already has a lot of stuff in /usr/local, and also puts its own GCC unter /opt, it is recommended to put the crosscompilers under /opt as well. Edit rockboxdev.sh accordingly.
Edit In order to be able to use non-ASCII characters in bash (e.g. German umlauts), edit set meta-flag on set convert-meta off set input-meta on set output-meta on Close bash and restart it. Done. happy hacking :-) r5 - 26 Jan 2012 - 06:19:14 - BorisGjenero
Revision r3 - 06 Oct 2008 - 19:30 - JensArnoldRevision r2 - 06 Oct 2008 - 18:43 - MaurusCuelenaere Copyright © by the contributing authors.
|