How to compile ArduCopter-2.9?

I want to compile ArduCopter-2.9 branch from github, but have problems. I have tried many ways but still no success.

Get source:

---------------------------------

$ git clone https://github.com/diydrones/ardupilot.git

Cloning into 'ardupilot'...
remote: Counting objects: 60082, done.

...

$ cd ardupilot

$ git checkout ArduCopter-2.9

---------------------------------

Branch ArduCopter-2.9 set up to track remote branch ArduCopter-2.9 from origin.
Switched to a new branch 'ArduCopter-2.9'

1. Mac OS 10.8.2, ArduPilot-Arduino-1.0.3-Mac, HAL Board=ArduPilot Mega 2.x, using Arduino GUI -> Can't build

---------------------------------

Building for ArduPilot Mega 2.x
Excluding arduino core from include paths
In file included from /Users/ton/Copter/ardupilot/libraries/FastSerial/BetterStream.h:16,
from /Users/ton/Copter/ardupilot/libraries/FastSerial/FastSerial.h:56,
from ArduCopter.pde:66:
/Users/ton/Copter/ardupilot/libraries/FastSerial/../AP_Common/AP_Common.h:20:22: error: Arduino.h: No such file or directory
In file included from /Users/ton/Copter/ardupilot/libraries/FastSerial/FastSerial.h:56,
from ArduCopter.pde:66:
/Users/ton/Copter/ardupilot/libraries/FastSerial/BetterStream.h:18: error: expected class-name before '{' token
/Users/ton/Copter/ardupilot/libraries/FastSerial/BetterStream.h:30: error: 'va_list' has not been declared

...

---------------------------------

2. The same as 1 but HAL Board=None -> Can't build

---------------------------------

avr-gcc: : No such file or directory

---------------------------------

3. The same as 3 but with original Arduino -> builds successful, but after uloading only CLI works but very buggy (suspends after running some tests), when connecting only parameters transfered - nothing else work

Tried to upload with MissionPlanner clicking "custom firmware" - the same result.

4. Mac OS 10.8.2, ArduPilot-Arduino-1.0.3-Mac, using make -> builds successful, but after uloading only CLI works but very buggy (suspends after running some tests), when connecting only parameters transfered - nothing else work

Edit config.mk:

---------------------------------

ARDUINO=/Applications/Arduino.app/Contents/Resources/Java
ARDUINOS=${ARDUINO}
BUILDROOT=build

# Select 'mega' for the original APM, or 'mega2560' for the V2 APM.
BOARD=mega2560
# The communication port used to communicate with the APM.
PORT=/dev/tty.usbmodemfa131

---------------------------------

Make

---------------------------------

$ cd ArduCopter

$ make

<builds OK>

$ make upload

<Upload and verify successful>

---------------------------------

Tried to upload with MissionPlanner clicking "custom firmware" - the same result.

When I'm uploading ArduCopter 2.9 firmare from MP - it works nice.

I tried also master branch - it builds and works fine with methods 1 and 4 (other methods not tested). But is it safe to use master branch, now many experimental functions it contains?

I just want to fix a bug in 2.9-release...

You need to be a member of diydrones to add comments!

Join diydrones

Email me when people reply –

Replies

  • where can I find full documentation for config.mk  ?

This reply was deleted.

Activity