Build magic lantern firmware
I am using Xubuntu 16.04.3 64 bit
for this build.
To download code we will need mercurial
(hg
). To make toolchain work on 64 bit OS we will also need some 32-bit libraries, and docutils
for rst2html
command (for build ML modules)
sudo apt install mercurial gcc-multilib lib32z1 docutils-common
Lets clone repo:
cd ~
hg clone -u unified https://bitbucket.org/hudson/magic-lantern
Then checkout to branch for your camera, I have Canon 1200D also known as Rabel T5.
cd magic-lantern
hg checkout 1200D
Installing toolchain
To find out the native toolchain version that developers use by default we can do
cat Makefile.user.default | grep gcc-arm
Which is ARM_PATH=~/gcc-arm-none-eabi-4_8-2013q4
now. Let's find a link here and install it to home dir:
cd ~
wget https://launchpad.net/gcc-arm-embedded/4.8/4.8-2013-q4-major/+download/gcc-arm-none-eabi-4_8-2013q4-20131204-linux.tar.bz2
tar xjf gcc-arm-none-eabi-4_8-2013q4-20131204-linux.tar.bz2
Building
cd platform/1200D.101/
make clean && make zip
Result zip
is here:
~/magic-lantern/platform/1200D.101$ ls *.zip
magiclantern-Nightly.2017Oct01.1200D101.zip
Extract it to formatted SD card and run the firmware update.
You need exactly same Canon firmware version as your ML build support (Here we have 101). So update/downgrade your Canon official firmware from official site (download FIR file and copy it to clean SD card), and only then update to ML
CAUTION Never eject SD card from camera earlier than 5 seconds before insert
CAUTION If you are installing ML first time please pay attention that installer asks you backupROM0
andROM1
files from SD card (ML\LOGS
folder) to a reliable place. You may need it in future. Also, please don't request one and don't share it online - it is Canon IP