Showing posts from November, 2017

Lazarus IDE on ARM Ubuntu (Raspberry Pi, Ubuntu Touch, etc)

Lazarus IDE runs on plethora of platforms but today we focus on ARM Linux: Embedded Linux, single board computers, smartphones and tablets. Native visual RAD development on ARM Linux. I wrote this post with the aspiration for it to become the most comprehensive practical guide for Lazarus IDE, and effectively Object Pascal software development on and for ARM Linux, but with focus specifically on Ubuntu. Table of content Introduction FPC compiler Method 1: installing with apt-get Method 2: building from sources (recommended) Method 3: copying from another device use-case 1: Raspberry Pi use-case 2: Ubuntu Touch use-case 3: All Things Ubuntu (true convergence) Switching widgetsets Known issues Introduction " Lazarus is a Delphi compatible cross-platform IDE for Free Pascal. It includes LCL which is more or less compatible with Delphi's VCL. Free Pascal is a GPL'ed compiler that runs on Linux, Win32/64, OS/2, 68K and many more. Free Pascal is desig

Desktop Apps on Ubuntu Phone

Table Of Content Clarification Tutorial Applications Limitations *also included in the Tutorial part is my digression  about Ubuntu Touch platform (my criticism), and how I explain Canonical's failure at selling the concept. Clarification The label "Desktop Apps on Ubuntu Phone" is ambiguous and can potentially mean many things. For example, it could refer to enabling ARM based phone running Ubuntu Touch OS to execute x86 or x64 binaries, similarily like it is possible the other way around with virtualization or emulation. Especially interesting aspect is emulation. On Intel based Linux (but also on OSX or Windows) one can run qemu-system-arm based chroot container, and ARM instructions will get translated into Intel's on the fly. On Linux systems you can even better use so called architectural chroot, which is even better than qemu-system-arm based container, because it does not limit how much RAM you can assign to it. I mentionned this technique in my