This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision Last revision Both sides next revision | ||
installing_gnu_on_osx [2009/11/03 22:17] admin |
installing_gnu_on_osx [2011/05/21 20:41] admin Improved MIOS32 toolchain doc for MacOS |
||
---|---|---|---|
Line 1: | Line 1: | ||
====How to set up the toolchain for coding MIOS32 apps with OS X==== | ====How to set up the toolchain for coding MIOS32 apps with OS X==== | ||
- | You have probably already installed the developper tools provided by apple. You need them before going further. (if you have installed XCode, that's fine). | + | You have probably already installed the developer tools (Xcode) provided by Apple. You need them before going further. |
+ | Xcode is located on the MacOS Installation DVD, but the most recent version can also be downloaded from [[http://developer.apple.com/technologies/tools/]] | ||
===steps:=== | ===steps:=== | ||
0- about the terminal\\ | 0- about the terminal\\ | ||
1- get the mios32 files from the repository server\\ | 1- get the mios32 files from the repository server\\ | ||
- | 2- install the STM32 toolchain\\ | + | 2- install the MIOS32 toolchain\\ |
3- configure the paths\\ | 3- configure the paths\\ | ||
+ | 4- other derivatives\\ | ||
===0- about the terminal=== | ===0- about the terminal=== | ||
Line 26: | Line 28: | ||
===1- get the files from the repository server=== | ===1- get the files from the repository server=== | ||
- | The simplest way to do this is to get the "svnX" software, launch it, in the "repositories" window click on the "+" sign, give a name to the repository, put the repository path in the path field: [[svn://svnmios.midibox.org/mios32|svn://svnmios.midibox.org/mios32]] and double clic on the repository name to get a connexion.\\ | + | TK proposes to use the "svn" command inside a Terminal. This command is already part of the Xcode toolchain, so that no further installations are required. A nice installation and usage guide can be found under [[http://www.rubyrobot.org/tutorial/subversion-with-mac-os-x]] |
+ | |||
+ | After the installation just create a svn directory:\\ | ||
+ | mkdir svn | ||
+ | thereafter checkout the repository with: | ||
+ | svn co svn://svnmios.midibox.org/mios32 | ||
+ | done! | ||
+ | Applications will be located under svn/mios32/trunk/apps | ||
+ | |||
+ | |||
+ | If you prefer a GUI (but TK states that this will be more confusing), install a client like "svnX", launch it, in the "repositories" window click on the "+" sign, give a name to the repository, put the repository path in the path field: [[svn://svnmios.midibox.org/mios32|svn://svnmios.midibox.org/mios32]] and double clic on the repository name to get a connexion.\\ | ||
Then you are able to drag and drop the "trunk" folder from the server to wherever you want on your computer. I suggest that you create an "snv" folder in your home directory, then a "mios32" folder and to put the dragged "trunk" folder inside that folder. | Then you are able to drag and drop the "trunk" folder from the server to wherever you want on your computer. I suggest that you create an "snv" folder in your home directory, then a "mios32" folder and to put the dragged "trunk" folder inside that folder. | ||
Now the Unix path of your mios32 files is "~/svn/mios32/trunk" ( "~" stands for "home directory"). | Now the Unix path of your mios32 files is "~/svn/mios32/trunk" ( "~" stands for "home directory"). | ||
Line 36: | Line 48: | ||
In the "SCM" menu choose "repositories", you now have the repository window where you can access to the mios32 files. | In the "SCM" menu choose "repositories", you now have the repository window where you can access to the mios32 files. | ||
- | ===2- install the STM32 toolchain=== | + | ===2- install the MIOS32 toolchain=== |
- | A nice pre-built binaries archive can be found at this page: "www.paintyourdragon.com/uc/osxstm32/index.html".\\ | + | The MIDIbox community have created a modified GNU Compiler Collection, ready for use with the ARM Cortex M3 platform. The toolchain contains all of the tools required to build MIOS32 applications including GCC and NEWLIB. |
- | You don't need to do everything written on this page as we won't use Circle OS and FatFryer.\\ | + | |
- | Just download the pre-built binaries in the section "acquiring the software". These will work on OS X 10.5, for earlier OS version you'll probably have to download the source files and compile them, I haven't checked how you do that.\\ | + | |
- | Expand the archive, you will then have a "stm32-bin" folder containing another archive file and a "README" file. Follow the instructions given in the "README" file to set up the toolchain.\\ | + | |
- | Check that all the files expanded properly in your /usr folder.\\ | + | |
- | The trick is that the /usr folder is hidden by the finder so if you want to open it, in the finder's menu click on "go" -> "go to folder" and just type "/usr" in the pop up window, your "/usr" folder will open and you'll be able to check the files. You should have a folder called "stm32" inside the "local" folder. | + | |
- | Personally I tried to expand the files with the terminal as said in the "README" but it didn't work, don't know why. I just double clicked the archive and it all expanded in a new "usr" directory made in the same folder as the archive. I then opened this folder and its "local" subfolder, copied the "stm32" subfolder inside the real "/usr/local" folder of my computer and it worked fine. | + | The Toolchain has currently been compiled for Windows (2000+), Mac OS X (Leopard or newer) and Linux x86 (built on Ubuntu 10.10). |
- | You now need to set the path variable for the toolchain, see the next section about this | + | |
+ | The download directory for the toolchain is ftp://ftp.lansystems.co.uk/pub/midibox | ||
+ | |||
+ | Download the latest "macos" file and unzip into your favorite directory, If you unzip into /usr/local the toolchain will create /usr/local/mios32_toolchain and various sub-directories containing the toolchain files. | ||
+ | |||
+ | You now need to set the path variable for the toolchain bin directory (/usr/local/mios32_toolchain/bin), see the next section about this | ||
===3- set up the paths variables=== | ===3- set up the paths variables=== | ||
Line 65: | Line 77: | ||
to check that the path variable has been assigned. | to check that the path variable has been assigned. | ||
- | In our case, we need to set up the path variable for the STM32 toolchain: | + | In our case, we need to set up the path variable for the MIOS32 toolchain for STM32: |
type in the terminal\\ | type in the terminal\\ | ||
- | ''export PATH=$PATH:/usr/local/stm32/bin''\\ | + | ''export PATH=$PATH:/usr/local/mios32_toolchain/bin''\\ |
and then we need to set up variables for mios32 itself:\\ | and then we need to set up variables for mios32 itself:\\ | ||
''export MIOS32_PATH=~/svn/mios32/trunk\\ | ''export MIOS32_PATH=~/svn/mios32/trunk\\ | ||
Line 101: | Line 113: | ||
then copy and paste these lines inside the pico editor:\\ | then copy and paste these lines inside the pico editor:\\ | ||
- | ''export PATH=$PATH:/usr/local/stm32/bin\\ | + | ''export PATH=$PATH:/usr/local/mios32_toolchain/bin\\ |
export MIOS32_PATH=~/svn/mios32/trunk\\ | export MIOS32_PATH=~/svn/mios32/trunk\\ | ||
export MIOS32_BIN_PATH=$MIOS32_PATH/bin\\ | export MIOS32_BIN_PATH=$MIOS32_PATH/bin\\ | ||
Line 124: | Line 136: | ||
[[http://macdevcenter.com/pub/a/mac/2004/02/24/bash.html|http://macdevcenter.com/pub/a/mac/2004/02/24/bash.html]]\\ | [[http://macdevcenter.com/pub/a/mac/2004/02/24/bash.html|http://macdevcenter.com/pub/a/mac/2004/02/24/bash.html]]\\ | ||
+ | |||
+ | ===4- other derivatives=== | ||
+ | |||
+ | For STM32 running on a MBHP_CORE_STM32 board use following setup: | ||
+ | |||
+ | ''export MIOS32_PATH=~/svn/mios32/trunk\\ | ||
+ | export MIOS32_BIN_PATH=$MIOS32_PATH/bin\\ | ||
+ | export MIOS32_GCC_PREFIX=arm-none-eabi\\ | ||
+ | export MIOS32_FAMILY=STM32F10x\\ | ||
+ | export MIOS32_PROCESSOR=STM32F103RE\\ | ||
+ | export MIOS32_BOARD=MBHP_CORE_STM32\\ | ||
+ | export MIOS32_LCD=clcd''\\ | ||
+ | |||
+ | |||
+ | For LPC17 running on a MBHP_CORE_LPC17 (or LPC1769 based LPCXPRESSO) board use following setup: | ||
+ | |||
+ | ''export MIOS32_PATH=~/svn/mios32/trunk\\ | ||
+ | export MIOS32_BIN_PATH=$MIOS32_PATH/bin\\ | ||
+ | export MIOS32_GCC_PREFIX=arm-none-eabi\\ | ||
+ | export MIOS32_FAMILY=LPC17xx\\ | ||
+ | export MIOS32_PROCESSOR=LPC1769\\ | ||
+ | export MIOS32_BOARD=MBHP_CORE_LPC17\\ | ||
+ | export MIOS32_LCD=clcd''\\ | ||