User Tools

Site Tools


Joomla says you aren't logged in
development:setting_up_build_env

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
development:setting_up_build_env [2016/04/30 07:45]
PhracturedBlue
development:setting_up_build_env [2019/03/04 20:06]
csujun update gcc-8
Line 1: Line 1:
-===== Setting ​UP the Deviation Build Environment =====+===== Setting ​Up the Deviation Build Environment =====
  
 **NOTE: It is now strongly recommended that you use Docker images to build Deviation. ​ Instructions for building can be found [[development:​docker | here]]** **NOTE: It is now strongly recommended that you use Docker images to build Deviation. ​ Instructions for building can be found [[development:​docker | here]]**
  
- 
-    Only the official embedded-arm build system is supported now 
-    Get the most recent release from here: 
-    https://​launchpad.net/​gcc-arm-embedded 
-    Current build version: gcc-arm-none-eabi-4_8-2013q4-20131204 
-#################################​ 
  
 ==== Building for ARM (on Linux) ==== ==== Building for ARM (on Linux) ====
-  ​1) download and install the precompiled linux compiler from here: ''​https://launchpad.net/gcc-arm-embedded''​ +  ​download and install the pre-compiled Linux compiler from here: https://developer.arm.com/open-source/gnu-toolchain/​gnu-rm/​downloads 
-    * Note that the only supported compiler for Deviation is gcc-arm-none-eabi-4_8-2013q4-20131204.  You can find the link to this from the [[All Downloads | https://launchpad.net/gcc-arm-embedded/​+download]] page+    * Note that the only supported compiler for Deviation is gcc-arm-none-eabi-8-2018-q4.  You can find the link to this from here: https://developer.arm.com/​-/​media/​Files/​downloads/​gnu-rm/​8-2018q4/gcc-arm-none-eabi-8-2018-q4-major-linux.tar.bz2 
-  ​2) Add the path to the '​bin'​ directory to your PATH+  ​Add the path to the '​bin'​ directory to your PATH
  
 ==== Building for ARM (on Windows) ==== ==== Building for ARM (on Windows) ====
-  ​1) Download and install the precompiled windows compiler from here: ''​https://launchpad.net/gcc-arm-embedded''​ +  ​Download and install the precompiled windows compiler from here: https://developer.arm.com/open-source/gnu-toolchain/​gnu-rm/​downloads 
-     ​* Note that the only supported compiler for Deviation is gcc-arm-none-eabi-4_8-2013q4-20131204.  You can find the link to this from the [[All Downloads | https://launchpad.net/​gcc-arm-embedded/​+download]] page+    * Note that the only supported compiler for Deviation is gcc-arm-none-eabi-8-2018-q4.  You can find the link to this from here: https://armkeil.blob.core.windows.net/​developer/​Files/​downloads/​gnu-rm/​8-2018q4/gcc-arm-none-eabi-8-2018-q4-major-win32.zip 
-  ​2) Add path to '​bin'​ directory to your PATH (I like to put this into ~/.profile so it is there each time I start msys): ''​export PATH=/​mingw/​stm32/​bin:​$PATH''​ +  ​Add path to '​bin'​ directory to your PATH (I like to put this into ~/.profile so it is there each time I start msys): ''​export PATH=/​mingw/​stm32/​bin:​$PATH''​ 
-  ​3) Ensure python is installed. ​ If not install it from here: ''​http://​www.python.org/​download/​releases/​2.7.3/​''​ +  ​Ensure python is installed. ​ If not install it from here: http://​www.python.org/​download/​releases/​2.7.3/​ 
-  ​4) Add python to your msys path: ''​export PATH="/​c/<​path to python>":​$PATH''​+  ​Add python to your msys path: ''​export PATH="/​c/<​path to python>":​$PATH''​
     * For example: ''​export PATH="/​c/​Program Files/​Python27":​$PATH)''​     * For example: ''​export PATH="/​c/​Program Files/​Python27":​$PATH)''​
  
-==== Builing ​the Windows binary on Linux ====+==== Building ​the Windows binary on Linux ====
 First install fltk: First install fltk:
-<​code>​ +  ​apt-get install mingw32 mingw32-binutils mingw32-runtime 
-apt-get install mingw32 mingw32-binutils mingw32-runtime +  <​Download and unpack fltk source code> 
-<​Download and unpack fltk source code> +  ./configure --disable-largefile --enable-localjpeg \
-./configure --disable-largefile --enable-localjpeg \+
            ​--enable-localzlib --enable-localpng \            ​--enable-localzlib --enable-localpng \
            ​--disable-gl --host=i586-mingw32msvc \            ​--disable-gl --host=i586-mingw32msvc \
            ​--prefix=/​opt/​fltk-w32            ​--prefix=/​opt/​fltk-w32
-make +  ​make 
-sudo make install +  sudo make install
-</​code>​+
  
 Next install portaudio: Next install portaudio:
-<​code>​ +  ​<​Download and unpack portaudio source code> 
-<​Download and unpack portaudio source code> +  ./configure --prefix=/​opt/​portaudio-w32 
-./configure --prefix=/​opt/​portaudio-w32 +  make 
-make +  sudo make install
-sudo make install +
-</​code>​+
  
 ==== Building the Windows binary on Windows ==== ==== Building the Windows binary on Windows ====
Line 70: Line 60:
   * make install   * make install
  
-Finall, install Deviation:+Finally, install Deviation:
   * Download the source code for deviation. You'll need mercurial to keep track of changes (which will require installing python), but you can manually download a zip of the source from bitbucket.org/​PhracturedBlue/​deviation   * Download the source code for deviation. You'll need mercurial to keep track of changes (which will require installing python), but you can manually download a zip of the source from bitbucket.org/​PhracturedBlue/​deviation
   * cd ~/src   * cd ~/src
   * cp -pf <path to deviation src code> deviation   * cp -pf <path to deviation src code> deviation
   * cd deviation/​src   * cd deviation/​src
 +
 +==== Building Deviation ====
 +
 +  * The default build target is the devo8 transmitter. ​ If you type ''​make''​ in the deviation/​src directory this is what you will get.
 +
 +  * Other transmitters can be specified on the make cmdline: ​ ''​make devo10 devo7e''​
 +
 +  * Creating packaged zip files can be done by pre-pending '​zip_':​ ''​make zip_devo10''​
 +
 +  * Building the emulator is done by pre-pending '​emu_':​ ''​make emu_devo8''​ or ''​make zip_emu_devo8''​
 +
 +  * Building the windows version of the emulator can be done vie: ''​make win_emu_devo8'' ​ or ''​make zip_win_emu_devo8''​
development/setting_up_build_env.txt (17301 views) · Last modified: 2019/03/04 20:06 by csujun