GNU/Linux Uniform Environment Distribution
This repository has been archived on 2023-08-20. You can view files and clone it, but cannot push or open issues or pull requests.
Go to file
Pedro Gonçalves b736d3158c rules/elfutils: create package rule. 2020-07-31 12:50:00 +01:00
architectures architectures/cortex-a8-hardfp: change flags name for GCC 5.4.0 . 2020-07-24 22:38:39 +01:00
docker docker/Makefile: fix bash style. 2020-07-31 12:45:09 +01:00
rules rules/elfutils: create package rule. 2020-07-31 12:50:00 +01:00
systems systems/lauv-atom/cfg: Renamed config file to linux-4.4.66.cfg 2018-02-27 09:01:49 +00:00
utils GLUED: Updated Copyright. 2017-01-16 10:30:25 +00:00
.gitignore gitignore: Ignore lauv-atom build folder. 2018-02-26 17:23:27 +00:00
LICENCE.md Added licence. 2013-07-13 22:48:14 +01:00
README.md README.md: Escaped angle bracket symbol for correct display on GitHub. 2013-09-10 11:07:04 +01:00
functions.bash GLUED: Updated Copyright. 2017-01-16 10:30:25 +00:00
mkconfig.bash mkconfig: update glued tag version to 2020.07. 2020-07-31 12:45:45 +01:00
mkdisk.bash GLUED: Updated Copyright. 2017-01-16 10:30:25 +00:00
mkpackage.bash mkpackage: change order of servers, LSTS -> upstream URL -> OMST. 2020-07-31 12:47:57 +01:00
mksystem.bash GLUED: Updated Copyright. 2017-01-16 10:30:25 +00:00
mkupdate.bash mkupdate: Set update folder according to vendor. 2017-06-29 16:44:32 +01:00
pkrootfs.bash GLUED: Updated Copyright. 2017-01-16 10:30:25 +00:00
pktoolchain.bash GLUED: Updated Copyright. 2017-01-16 10:30:25 +00:00

README.md

Introduction

GLUED (GNU/Linux Uniform Environment Distribution) is a minimal Linux distribution targeted at embedded systems.

Configuration

The first step to build GLUED for a particular system is to create a configuration file. This configuration file contains details about the system's architecture, packages that will be part of the distribution, network configuration, etc.

To list all available systems issue the following command on a terminal:

./mkconfig.bash list

Once you have identified the name of the system you want to build, issue the following command, replacing <system_name> with the name of that system:

./mkconfig.bash <system_name>

Building

After creating a configuration file, you are ready to compile all the necessary packages.

To start the compilation process, issue the following command:

./mksystem.bash <config_file>

Archives

After the system is compiled you can create archives for distributing, developing or upgrading existing installations.

Toolchain Archive

To create a package containing all the necessary tools to cross-compile C/C++ programs for you target system, issue the following command:

./pktoolchain.bash <config_file>

Root Filesystem Archive

The root filesystem archive contains all files necessary to run a GLUED system. It allows you to upgrade existing GLUED systems and initialize storage devices. To create a root filesystem archive, issue the following command:

./pkrootfs.bash <config_file>

Initializing Storage Devices

Initializing storage devices for GLUED involves:

* Partitioning the storage device
* Creating filesystems
* Populating filesystems
* Installing a bootloader if applicable

To perform all of the previous steps, you must first identify the target block device file and then issue the following command (as root):

./mkdisk.bash <config_file> <block_device>

Example

Building GLUED for the system LAUV Seacon 1 and initializing a compact flash card with the block device file /dev/sdd:

./mkconfig.bash lauv-seacon-1 && ./mksystem.bash lctr-a6xx/lauv-seacon-1.bash && ./pktoolchain.bash lctr-a6xx/lauv-seacon-1.bash && ./pkrootfs.bash lctr-a6xx/lauv-seacon-1.bash && sudo ./mkdisk.bash lctr-a6xx/lauv-seacon-1.bash /dev/sdd