Installing the Arduino Development Environment on LINUX 2



After a few of us discovered how needlessly complicated many of the setup guides were for Debian/Ubuntu systems, we decided to do a quick tutorial on the steps to get started with Arduino as a public service.

Quick install directions for people using a Debian based LINUX distro, like Ubuntu:
sudo apt-get install openjdk-6-jre gcc-avr avr-libc
Then get the package for your platform from, 32 or 64 bit linux.
Unpack the archive:
tar xvf Downloads/arduino*.tgz

Put a symbolic link to …/arduino???/arduino on your path:
cd /usr/local/bin
sudo ln -s ~/arduino-0023/arduino

Open the IDE, arduino& on the command line, and select the correct serial port possibly ttyACM0.

Bam Done!

Install a launcher for /usr/local/bin/arduino if desired.

About Mr.What

Electrical Engineer, working in Software Engineering for 20+ years. Wants to do more low level hardware and embedded work. Also interested in metal work.

Leave a comment

2 thoughts on “Installing the Arduino Development Environment on LINUX

  • Aaron Birenboim

    Having some issues with global classes.  Not sure what the issue is, but here are some collected suggestions.
    * don’t call delay from startup(), it will hang
    * don’t use non-null constructors.  (I’m having trouble with constructors period)
    **Arduino convention is a null constructor, with a begin() method called from startup
    * new and delete are not fully supported.  I’m not so sure there aren’t issues with malloc/free too.  memory on AVR is different
    * static variables in functions seemed problematic.  Moved them to globals.

  • Aaron Birenboim

    I wanted to take a look at the AVR binary image to see if my embedded version code made it to the AVR executable.  Here’s how I did it:

      avr-objcopy -I ihex /tmp/build5473499130791137642.tmp/tempPID.cpp.hex -O binary t.bin

    I was able to run “strings” on this binary, and recover my secret embedded constants.  Seems like this might be a good thing to keep in case you want to download an image of code loaded into an AVR, and compare it to the original.