Difference between revisions of "Odroid"

From Free Pascal wiki
Jump to navigationJump to search
(→‎Overview: surely xubuntu has it?!?)
(update known issues)
Line 41: Line 41:
 
* currently fpcup will do a make distclean before installing/updating, which may stress your memory card. Contributions for relevant settings in fpcupodroid.ini welcome.
 
* currently fpcup will do a make distclean before installing/updating, which may stress your memory card. Contributions for relevant settings in fpcupodroid.ini welcome.
 
* (general fpcup problem) you may have to rebuild Lazarus yourself (Tools/Build Lazarus) to get all packages/controls fpcup installed for you.
 
* (general fpcup problem) you may have to rebuild Lazarus yourself (Tools/Build Lazarus) to get all packages/controls fpcup installed for you.
* (general fpcup problem) when rebuilding lazarus, you may get a warning about missing startlazarus. You can ignore it.
+
* (fpc problem) Problems building LazReport package with current FPC trunk: see bug http://bugs.freepascal.org/view.php?id=25639. Workaround: disable LazReport and rebuild Lazarus manually
  
 
== See also ==
 
== See also ==

Revision as of 17:29, 28 January 2014

Overview

Odroid are ARM devices manufactured by HardKernel.

U2, U3

These devices contain a Samsung ARM chip

  • instruction set: ARMv7A
  • floating point coprocessor (FPU): VFPv3

Operating systems: Xubuntu (ARMHF; hardfloat), Android.

Installing FPC/Lazarus using fpcup

This section focuses on using Linux on the Odroids.

  • FPC 2.6.x

As the provided Linux is ARMHF, standard FPC 2.6.x is not suitable (insufficient ARMHF support0. The included Xubuntu Linux probably supplies modified FPC 2.6.x+Lazarus (much like the Raspbian distribution).

  • FPC trunk

The easiest way to install FPC trunk and Lazarus is to run fpcup which will use a 2.6.x bootstrap compiler to build a trunk ARMHF intermediate compiler. Now the regular FPC and Lazarus environments are built by fpcup.

Note that fpcup is a thin wrapper around the regular svn/make FPC/Lazarus install process, so if you're uncomfortable with this process, it may not be for you.

Instructions - to be run as a regular user:

  • Install prerequisites for Lazarus and subversion, e.g. something like:
sudo apt-get install libgtk2.0-dev libgdk-pixbuf2.0-dev libpango1.0-dev subversion
#build-essential may also be necessary
  • Download fpcup_linux_armhf (or perhaps fpcup_linux_arm) and fpcupodroid.ini into a directory (say ~)
  • Make fpcup executable:
chmod ug+rx fpcup_linux_armhf #replace filename with proper name if different
  • Run fpcup, telling it to use the [General] profile in fpcupodroid.ini:
./fpcup_linux_armhf --inifile=fpcupodroid.ini #replace filename with proper name if different

Use the same command for updating.

fpcup will create desktop shortcuts etc. For more details, please see the fpcup wiki page.

Notes:

  • currently fpcup will do a make distclean before installing/updating, which may stress your memory card. Contributions for relevant settings in fpcupodroid.ini welcome.
  • (general fpcup problem) you may have to rebuild Lazarus yourself (Tools/Build Lazarus) to get all packages/controls fpcup installed for you.
  • (fpc problem) Problems building LazReport package with current FPC trunk: see bug http://bugs.freepascal.org/view.php?id=25639. Workaround: disable LazReport and rebuild Lazarus manually

See also

  • fpcup Main fpcup page. Details on settings, troubleshooting, bug reporting, cross compilers etc.
  • Lazarus on Raspberry Pi Raspbian also is ARMHF but has an older ARM processor architecture.