Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Simple shell script to install Parallax-Propeller toolchain, including the BST tools and the Propeller GCC.
branch: master

Fetching latest commit…

Cannot retrieve the latest commit at this time

Failed to load latest commit information.
extra/vim
patches
tests
LICENSE
README.md
config.inc
install-propeller-toolchain.sh

README.md

Parallax Tool-Chain Installer Script for Linux

(c) 2012 Stefan Wendler sw@kaltpost.de http://gpio.kaltpost.de/

Introduction

Simple shell script to install a Parallax-Propeller tool-chain, including:

  • BST tools (compiler, PropBasic, loader, IDE + Propeller TTF)
  • Propeller GCC
  • open-source-spin-compiler
  • Python based spin-loader from the propeller forums (Loader.py)
  • spin2cpp, a SPIN to C++ compiler

For more information on the BST tools see this the BST homepage

For more information on porp GCC see the propgcc homepage

For more information on the open-source-spin-compiler see the project page

The Python based loader is from Remy Blank and I was not able to find a web-page for that tool.

For more information on spin2cpp see the project page

The latest version of this script was tested with Ubuntu 14.04 LTS (64bit, but 32bit shoudl work too). It looks like the "makeinfo" on Ubuntu 14.04 is not happy with the ".texi" files of the binutils and gcc provided by Parallax. Thus some patches are applied to fix this issue. I am not sure if the patch works with older "makeinfo" versions too.

Non Intel Build Hosts

Using this scripts on a non Intel build host does only work partially. This is because the propeller-loader tool relays on the bstc.Linux binary which is a Intel binary. At the moment the loader fails to build, no propeller-gdb will be build since it relays on the loader library. However, on a ARM machine you will end up with a working propeller-gcc including working C-libraries and binutils, but you will not get the loader nor gdb.

Requirements

  • A working GCC environment on the host system you are building is required for gcc.
  • Mercurial needs to be installed to build gcc.
  • Internet connection is required.
  • For the python based loader, python2.6 with py-serial is required
  • SVN is required to build the open-source-spin-compiler.

NOTE: if you are on a 64bit platform an you are going to install BST Tools, you need to make sure to install the required i386 libraries since BST binaries are 32bit only. On Ubuntu 14.04 the following should do the trick:

sudo apt-get install libgtk2.0-0:i386

Usage

For various user setting see "config.inc".

To build and install the whole tool-chain:

./install-propeller-toolchain.sh install

NOTE: the script may ask you for your root password to make the install dir with "sudo".

NOTE: the script removes everything installed previously under "/opt/parallax/bin".

After the script installed everything, you might want to add "/opt/parallax/bin" to your path.

To clean up all temporary stuff:

./install-propeller-toolchain.sh clean

Check the Result

Check Propeller GCC

Change to the "tests/gcc" subdirectory containing a simple "hello-world" which blinks all the build in LEDs of the Parallax Quick-Start board and prints out some message through the serial line and build the sources:

cd ./tests/gcc
export PATH=/opt/parallax/bin:$PATH
make

This should produce a "main.elf" binary. Load this to the propeller with:

make load

Check open-source-spin-compiler and spin-loader

Change to "test/spin/oss" subdirectory containing a simple SPIN program which blinks the LED on P16:

cd ./tests/spin/oss
export PATH=/opt/parallax/bin:$PATH
make

This should produce a "blinky.binary" binary. Load this to the propeller with:

make load

Check BST Spin Command-line

Change to "test/spin/bst" subdirectory containing a simple SPIN program which blinks the LED on P16:

cd ./test/spin/bst
export PATH=/opt/parallax/bin:$PATH
make

This should produce a "blinky.binary" binary. Load this to the propeller with:

make load

Check BST Spin GUI

The above SPIN code (blinky.spin) could also be compiled and uploaded to the propeller through the GUI. To start the GUI:

bst

Then, in the file-explorer on the left navigate to the sample code and open it. Then go to compile, to compile and upload your program.

Note: in the editor, check if the font looks "right" otherwise something went wrong withe the installation of the Propeller TTF-font.

Check spin2cpp

Change to "tests/spin2cpp" subdirectory containing a simple SPIN program which blinks the LED on P16:

cd ./tests/spin2cpp
export PATH=/opt/parallax/bin:$PATH
make

This should produce a "blinky.h", "blink.cpp" and the "blink.elf" binary from the file "blink.spin". Load this to the propeller with:

make load
Something went wrong with that request. Please try again.