Differences
This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
devdoc:documentation [2019/06/22 18:04] abelbeck [First Build] |
devdoc:documentation [2024/02/26 06:43] abelbeck [Linux Build System] |
||
---|---|---|---|
Line 1: | Line 1: | ||
====== Development Environment ====== | ====== Development Environment ====== | ||
- | The AstLinux Development Environment (ADE) is maintained in a repository on GitHub | + | The AstLinux Development Environment (ADE) is maintained in a repository on GitHub. |
- | AstLinux is cross-compiled, | + | AstLinux is cross-compiled, |
===== Linux Build System ===== | ===== Linux Build System ===== | ||
- | Building AstLinux requires using some version of Debian/Ubuntu or RHEL/ | + | Building AstLinux requires using some version of Debian Linux. |
- | Using a Virtual Machine is common practice, typical | + | Using a Virtual Machine is suggested, minimal |
- | * 40 GB Storage | + | * 64 GB Storage |
- | * 1 GB RAM | + | * 2 GB RAM |
* 1-2 CPU Cores | * 1-2 CPU Cores | ||
- | Linux Build Systems known to work: | + | Linux Build Systems known to work **(must be x86_64)**: |
- | * CentOS 6 - 32-bit / 64-bit | + | * Debian 11 |
- | * CentOS 7 - 64-bit | + | * Debian 12 - //(recommended)// |
- | * Debian 7 - 32-bit | + | |
- | * Debian 8 - 64-bit | + | |
- | * Ubuntu 14.04 - 64-bit | + | |
- | * Ubuntu 16.04 - 64-bit | + | |
!!Tip ->!! Use a somewhat older LTS (Long Term Support) Linux distro in a VM, that will be the most compatible with our version of Buildroot. | !!Tip ->!! Use a somewhat older LTS (Long Term Support) Linux distro in a VM, that will be the most compatible with our version of Buildroot. | ||
!!Tip ->!! Use a " | !!Tip ->!! Use a " | ||
+ | |||
+ | ===== Promox notes ===== | ||
+ | |||
+ | !!Tip ->!! To run Debian 10/11 in a LXC container on Proxmox 6/7/8, you need to enable " | ||
+ | |||
+ | !!Tip ->!! There seems to be a problem when running the "Linux Build System" | ||
+ | genext2fs: couldn' | ||
+ | although there is plenty of free space. It doesn' | ||
+ | |||
===== Prerequisites ===== | ===== Prerequisites ===== | ||
- | To build Astlinux you first need to install some packages, depending on your Linux distribution: | + | To build Astlinux you first need to install some additional |
**[[.packages|Package lists]]** | **[[.packages|Package lists]]** | ||
Line 46: | Line 51: | ||
!!Important ->!! You should **not be root**, login as a non-admin user. | !!Important ->!! You should **not be root**, login as a non-admin user. | ||
===== Checking out the Source ===== | ===== Checking out the Source ===== | ||
- | Now we will grab AstLinux via SVN: | + | Now we will grab AstLinux via '' |
- | | + | |
- | // | + | You should see a bunch of files scroll down your machine. Depending on the speed of your connection, this could take a few seconds or a minute. |
- | **Explanation: | + | Once the clone process has completed, cd into astlinux/ |
- | + | ||
- | '' | + | |
- | + | ||
- | '' | + | |
- | + | ||
- | '' | + | |
- | + | ||
- | '' | + | |
- | + | ||
- | You should see a bunch of files scroll down your machine. Depending on the speed of your connection, this could take a few minutes or a few hours (hopefully just a few minutes - we want to start building)! | + | |
- | + | ||
- | Once the checkout | + | |
cd astlinux/ | cd astlinux/ | ||
Line 72: | Line 65: | ||
Next we will copy the default AstLinux config file and look for any new configure options. | Next we will copy the default AstLinux config file and look for any new configure options. | ||
- | Copy the default AstLinux config file (example with Asterisk | + | Copy the default AstLinux config file (example with Asterisk |
- | cp astlinux-ast13.config .config | + | cp x86_64-configs/ |
- | + | ||
- | !!Note ->!! If you wish to build 64-bit x86_64 images, copy your '' | + | |
Check for new configure options: | Check for new configure options: | ||
Line 88: | Line 79: | ||
If this is your first time building AstLinux we suggest that you don't make any changes to the default AstLinux configuration. This will make it easier to troubleshoot any problems you might have. Now it's time to start the build: | If this is your first time building AstLinux we suggest that you don't make any changes to the default AstLinux configuration. This will make it easier to troubleshoot any problems you might have. Now it's time to start the build: | ||
- | ./ | + | ./ |
- | + | ||
- | !!Note ->!! If you wish to build 64-bit x86_64 images, use genx86_64 | + | |
The script '' | The script '' | ||
- | The option "geni586" is the board type, other board types are: geni586-serial, net5501, alix, (many more). If this option is omitted, the previous board type built will be used. The "geni586" board uses a VGA/video console, while the "geni586-serial" | + | The option "genx86_64" is the board type, other board types are: genx86_64-serial |
!!Info ->!! [[devdoc: | !!Info ->!! [[devdoc: | ||
Line 109: | Line 98: | ||
./ | ./ | ||
| | ||
- | Many board types use the same i586 toolchain, so after '' | + | All board types use the same x86_64 |
- | Of special note, there are three kernel configurations supported. | + | Of special note, there are two kernel configurations supported. |
- | For 32-bit SMP kernel builds: (boards with i586 multi-core or single-core processors) | ||
- | |||
- | project/ | ||
- | | ||
For 64-bit SMP kernel builds: (boards with x86_64 multi-core processors) | For 64-bit SMP kernel builds: (boards with x86_64 multi-core processors) | ||