User login |
Development - Getting StartedThe AstLinux Development Environment (ADE) is hosted on Subversion servers provided by SourceForge. Subversion allows several developers to work on the AstLinux sources simultaneously all while tracking revisions and changes. Additonally, Subversion excels in working with branches and tags. Often times new features can be developed in a separate branch and later merged into the main codebase - known in Subversion-speak as "trunk". These instructions will show you how to build AstLinux from "trunk". First, you will need access to a Linux machine. Almost any Linux machine will do but some may have problems. Most of the developers use some version of CentOS or Ubuntu. You will probably have the best luck using some version of these distros. While most packages will compile if using a 64 bit host, some will not. It's recommended to use a 32 bit host OS for your builds. Once you have Linux setup you will need to install a Subversion client to access the AstLinux code. In a RedHat-based distro, you can use yum to grab subversion for you:
yum install subversion
If yum exits with an error, you may need to get a Subversion RPM manually or add a yum repository that has Subversion. On a Debian based system (Debian, Ubuntu) you can use apt-get:
apt-get install subversion
You will need to perform these commands as root, so if you are logged in as a regual user (you should be) switching to root with either su or sudo will be necessary. After you have installed Subversion, switch to a directory on your machine (home is good) AS A REGULAR USER (NON-ROOT):
cd ~
From this point on you should not be root. Being root while using the ADE is dangerous and unsupported. After all, the AstLinux Development Environment runs a lot of scripts and has potential to do serious damage to your system (it probably won't, but it is possible). You shouldn't trust us enough (yet) to do what we tell you to do as root. Now we will grab AstLinux from SVN:
svn co https://astlinux.svn.sourceforge.net/svnroot/astlinux/trunk astlinux-trunk
Explanation: svn - name of subversion binaryshould not be root. co - short for "checkout", grab source from url: https://... - URL of AstLinux SVN repository, an argument to co to specify the location of checkout astlinux-trunk - store the previous URL in a local directory on this machine in the current working directory
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 process has completed, you can cd into astlinux-trunk to look around:
cd astlinux-trunk
You will see a bunch of files scattered about. We won't pay any attention to most of them - for now. The AstLinux Development Environment is based off of the excellent builroot2 build system. It uses Kconfig to provide various preconfigured options to the user in an ncurses-based menu environment (provided by Kconfig). Next we will copy the default AstLinux config file and look for any new configure options. Whenever software packages are changed or added the default config needs to be updated. Sometimes the developers don't do that. Copy the default config file:
cp astlinux.config .config
Check for new configure options:
make oldconfig
If you get "make: command not found" or a similar error you will need to install some development tools before you can continue. On Debian based systems this is quite easy. The "build-essential" package provides most of what you need. On RedHat based systems you can start by installing make with yum. The AstLinux Development Environment includes a script that will check for the various packages required for building. It will help you as it goes along. If this is your first time compiling AstLinux I 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 run make:
make
The AstLinux Development Environment requires a lot of disk space, bandwidth and CPU time. If this is a shared user system I recommend that you run make with nice to prevent the ADE from dominating your system's processor:
nice -n21 make
The ADE can take a long time to compile. If you'd like to benchmark your system you can run it with time:
time make
or:
time nice -n21 make
The ADE can take anywhere from 10s of minutes to several hours (or even days) to compile, depending on the speed of your system and internet connection.
After building the complete system the first time, you can modify the package selections by issuing the following command prior to make. make menuconfig
TODO - NOTES: Building Images
|
Sponsors |