version 1.1.2.8, 2012/02/22 16:47:39
|
version 1.6.2.2, 2017/10/10 08:05:35
|
Line 15 sources like that "cd <where you put freebsd sources>;
|
Line 15 sources like that "cd <where you put freebsd sources>;
|
and GPLv2 "gpl/*" projects |
and GPLv2 "gpl/*" projects |
- Optional download of 3th party software for ELWIX firmware. Project name is embedaddon from ELWIX CVS |
- Optional download of 3th party software for ELWIX firmware. Project name is embedaddon from ELWIX CVS |
|
|
II. Build process | II. Fresh FreeBSD source tree |
| 1. When you get new FreeBSD source tree. You should apply patches |
| ./apply_patches.sh |
| |
| III. Build system process |
1. Init build structures with clean directory tree |
1. Init build structures with clean directory tree |
./build_init.sh | ./build_init.sh <filename of project config> |
| Result after its work is cleaned previous storage and created new structure for build process |
2. Cross compile entire userland software |
2. Cross compile entire userland software |
./build_world.sh |
./build_world.sh |
|
Result from build_world.sh. Cross built whole FreeBSD project and |
|
prepared cross build scripts for ELWIX further build processes. |
3. Cross compile ELWIX kernel |
3. Cross compile ELWIX kernel |
./build_kernel.sh |
./build_kernel.sh |
|
Result from ./build_kernel.sh. Cross built two kernels. One for ELWIX Base image without |
|
embedded RootFS and another with RootFS for ELWIX RootFS images. |
4. Cross compile ELWIX tools |
4. Cross compile ELWIX tools |
./build_tools.sh |
./build_tools.sh |
|
Result from ./build_tools.sh. Cross built ELWIX core tools, libraries and services. |
|
Produced ELWIX system package file elwix-pkg.frm |
5. Cross compile optional 3th party software |
5. Cross compile optional 3th party software |
./build_3thparty.sh |
./build_3thparty.sh |
6. Now moment comes to build big system binary and rootfs to embed into the kernel | Result from build_3thparty.sh. Cross built optional 3th party software for project. |
| Produced ELWIX system image file elwix-firmware2.sys |
| --------------------------------------------------------------------------------- |
| 6. Now is moment for build BaseFS ELWIX system |
| ./build_base.sh |
| Result from build_base.sh. Built ELWIX Base OS version. |
| All software will be installed directly on flash/disk storage. |
| Script leave ready to install archive and compressed kernel.gz |
| Example for ready for install archive: ELWIX-2.6_x86_base_128mb_i386_2017-10-10.tar.gz |
| --------------------------------------------------------------------------------- |
| 7. Moment comes for build big system binary and inject rootfs image into kernel |
./build_rootfs.sh |
./build_rootfs.sh |
7. Prepare fs image and populate /etc,/boot and others | Result from build_rootfs.sh. |
| Cross built and leave image rootfs.img which was been injected into kernel. |
| Script prepared compressed kernel with embedded zero stage image of ELWIX into kernel_rootfs.gz |
| 8. Make romfs image and build big fat second stage firmware image |
| ./build_romfs.sh |
| Result from build_romfs.sh. Script collected files and prepare first stage ELWIX image. |
| Produced ELWIX system image file elwix-firmware.sys |
| 9. Now is moment for build RootFS ELWIX system |
./build_fs.sh |
./build_fs.sh |
|
Result from build_fs.sh. Built ELWIX RootFS OS versions. |
|
All software will be installed as images on flash/disk storage. |
|
Script produced two version of ELWIX OS: |
|
- RootFS small image which consume more RAM because all software is into memory drives. |
|
Example for ready for install archive: ELWIX-2.6_x86_rootfs_64mb_i386_2017-10-10.tar.gz |
|
- RootFS image which partially installed base tools directly onto flash. |
|
Example for ready for install archive: ELWIX-2.6_x86_rootfsext_128mb_i386_2017-10-10.tar.gz |
|
--------------------------------------------------------------------------------- |
|
|
III. Information | Ok, now we did ELWIX version and placed to build/release directory like tar.gz file |
| |
| Example of produced tar balls:: |
| ELWIX_X.X_target_{base|rootfs|rootfsext}_size_arch_date.tar.gz |
| |
| III. Build storage image |
| 1. Build ELWIX system into binary fs image file |
| ./install2img <ELWIX_X.X_target_.....tar.gz> [image_size_in_KB] |
| 2. Build ELWIX system into direct device |
| ./install2dev </dev/daX> <ELWIX_X.X_target_.....tar.gz> |
| 3. Build ELWIX system into separate compressed binary images for u-boot embedded devices |
| ./install2uboot <kernel|kernel_rootfs|rootfs|bin|vendor> |
| |
| IV. Emergency default address |
| IP: 10.254.254.254/30 |
| VLAN: 4093 |
| |
| You should setup at your side 10.254.254.253/30 on VLAN 4093 |
| |
| IV. Information |
| For more information |
Michael Pounov <misho@elwix.org> or <support@elwix.org> |
Michael Pounov <misho@elwix.org> or <support@elwix.org> |
|
|
Best regards |
Best regards |