Creating an Initial Build with the Timesys LinuxLink FREE Edition

This document was updated 16 April 2012.

download Creating an Initial Build with the Timesys LinuxLink FREE Edition Download a PDF of this document.

 

Contents

Introduction

1. Log in to LinuxLink

2. Assemble a Custom BSP/SDK

3. Download Your Build

4. Boot Your Target Board with the Build Output

5. Advanced Platform Customizations

6. Additional Resources

Introduction

Welcome to the Timesys LinuxLink FREE Edition. The LinuxLink FREE Edition is great for quickly starting your embedded Linux product development. With the LinuxLink FREE Edition, you can quickly assemble a custom Board Support Package (BSP) and matching Software Development Kit (SDK) using the Web Factory wizard. The Web Factory wizard interface will guide you through a few easy steps to create a Linux platform that is customized to meet your choices of kernel, toolchain, and packages, and is built from source to ensure consistency. You'll be running a bootable image on your target on day one!

1. Log in to LinuxLink

1.1 Your LinuxLink Login

The first step in booting your board is to log in to LinuxLink. To log in to LinuxLink, visit https://linuxlink.timesys.com, and enter the username and password that was emailed to you.

  • 1.1.1 If you have not received your LinuxLink user name and password:

    Send an email to linuxlink-help@timesys.com.

  • 1.1.2 If you have forgotten your password and cannot log in:

    Visit https://linuxlink.timesys.com/login/help, and enter your email address to have the password reset.

  • 1.1.3 If you want to change your password:
    1. 1. Login to your LinuxLink account at https://linuxlink.timesys.com.
    2. 2. Click on your user name (located next to 'Welcome' in the masthead of your custom dashboard page).
    3. 3. Click on the first green button which will read ‘Edit ’.
    4. 4. From within the ‘Edit ’ page, type your new password in the applicable field and confirm your new password by entering it again a second time.
    5. 5. Click the 'Update User' button.
       
      * NOTE: Once you have changed your password, you will be logged out of LinuxLink and will need to login again using your new password.

1.2 Your Custom Dashboard

Once logged into LinuxLink, you’ll be taken to your custom dashboard where you’ll find links to resources that will help you with your embedded Linux development. An example of a personal dashboard is shown in Figure 1, below.
 

Figure 1
 

1.3 Web Factory UI Overview

The illustration (Figure 2) below outlines the Web Factory UI and the steps through which the wizard will guide you.
 

Figure 2

2. Assemble a Custom BSP/SDK

From your personal dashboard, click on either the green 'Build Custom BSP/SDK' button in the left column or on 'Build BSP/SDK' in the top menu, and you'll be taken to the Web Factory.

From within the Web Factory, the wizard will guide you through the following steps as outlined in Figure 2, above.

2.1 Create a Project

The first step to creating your custom BSP is to create a project.

  • A project can define a product for which you evaluate specific hardware. For example, a home automation device or a medical device.
  • A project is a container to hold your workorders, which is explained in Section 2.2.
  • A project is a container where you can define multiple versions of the same BSP. For example, you can have the same BSP with different versions of APIs.
  • You can have as many projects as necessary.

At this step you’ll be asked to select your application, such as multimedia, industrial controller, networking device, etc. Selecting an application is optional; you don’t have to make a selection if you don’t want, however, doing so will help Timesys assist you with your choices.

To create a project, from the Web Factory, click on the 'Create a Project' button, then:

  • 1. Enter a project name,
  • 2. Enter a project description,
  • 3. Select your board,
  • 4. Select an application (optional), and
  • 5. Click the 'Create Project' button.

2.2 Create a Workorder

The second step in creating your custom BSP/SDK is to create a workorder. A ‘workorder’ is a set of specifications for your platform. It defines all the Linux components that are in the final, functional product.

  • The Linux components defined in a workorder include kernel, toolchain and package versions as well as package license information, and it contains your selected root filesystem optimization and build output options.
  • You can have multiple workorders per project, with each workorder describing a specific BSP. For example, you may choose to have both a debug configuration and a production configuration.

At the 'Create a Workorder' stage of building your BSP/SDK, you can choose to Create a New Workorder, Modify an Existing Workorder, Copy an Existing Workorder or Upload a Workorder. The steps for each option are outlined below however, if you are building an initial BSP, you’ll want to follow the steps to 'Create a New Workorder.'

  • 2.2.1 Create a New Workorder
    1. 1. Click 'Create a Workorder' button
    2. 2. Enter a Workorder name
    3. 3. Enter a Workorder description
    4. 4. Click the 'Next' button
  • 2.2.2 Modify/Edit an Existing Workorder
    1. 1. Click on the name/link of the workorder you want to edit
    2. 2. Click on any of the 'Edit' buttons to begin modifying/editing the components
  • 2.2.3 Copy an Existing Workorder (for additional customization)
    1. 1. Click the icon
    2. 2. Enter a Workorder name
    3. 3. Enter a Workorder description
    4. 4. Click the 'Save' button
  • 2.2.4 Upload a Workorder from Your Desktop*
    (* Note: This feature is in alpha testing. Workorders uploaded from your desktop may not be viewable in Web Factory.)
    1. 1. Enter a Workorder name
    2. 2. Enter a Workorder description
    3. 3. Select the .config file to upload
    4. 4. Click the 'Upload' button

Once the workorder process has been initiated, the wizard will continue to guide you through the remaining steps for building your custom BSP/SDK. Or, you can choose to navigate manually through the steps by clicking on the applicable workorder component in the top menu of the Web Factory UI.

2.3 Select a Kernel

After creating a workorder, you’ll be prompted to select a Linux kernel. In most cases, you’ll have multiple kernel versions from which to choose. Depending on your product requirements, you can select from any of the kernel versions presented or you can choose to use a Timesys recommended kernel, which is based on alignment with community and those provided by the semiconductor.

  • 2.3.1 View Kernel Information & Device Drivers Enabled

    At any time, you can view the kernel version and revision number as well as licensing information and install size by clicking on the kernel version link. Within the kernel information window (Figure 3), you’ll also see the device drivers enabled for the particular kernel version.
     

    Figure 3
     

  • 2.3.2 Download Kernel Configuration File *

    If you are a kernel developer, you can download the kernel .config file, allowing you to inspect the options as they are configured in the Linux kernel. To download the kernel configuration file, click on the download link to the right of the kernel.

    * NOTE: This option is available to full/paid subscribers only.

2.4 Select a Toolchain Configuration

After selecting a kernel, you’ll be taken to the 'Select a Toolchain' page.

At this stage of building your custom BSP/SDK, you can choose from the following toolchain options:

  • Select a Timesys recommended glibc or uClibc toolchain — Timesys makes recommendations which are based on a specific reference platform. Timesys guarantee sthat builds will be optimized for the architecture and reference platform with which you are working.
  • Customize your own toolchain by selecting your preferred versions of glibc or uClibc, gcc, binutils and gdb.

If you want to know more about any of the toolchain components, click on the component link to bring up the information window.

2.5 Select Required Packages for Your Application

After selecting a toolchain, the next step is to select the packages/APIs required for your application.

All available packages are displayed in a clean, table layout that details package names, version, license, and size information.

  • 2.5.1 Package Categories

    Packages are organized by categories which include: Desktop, Development, Graphics, Multimedia, Networking, Runtimes, System, and Utilities.

    If you know in which category a package is, you can click on the symbol to expand the package list for that category.

  • 2.5.2 Selecting Packages

    To select a package, check the box next to the package name.

    2.5.2.1 View Package Details

    To view the details for any package, including version, estimated build time and license information, click on the package name.
     

    2.5.2.2 Select Package Dependencies

    Once you’ve selected a package, the Web wizard will automatically select all package dependencies for you.

    The number of dependencies that have been automatically selected will appear under ‘Dependencies Selected’ in the left column of the page.

    The dependencies that have been automatically selected for you can be viewed in the 'Selected Packages' table in the left column of the page.
     

    2.5.2.3 Configure Package Build Options

    To modify the package build options for a given package, click on the package name and then click on the associated icon in the package table.

    * NOTE: This option is available to full/paid subscribers only.
     

  • 2.5.3 SmartSearch Feature

    The 'SmartSearch' feature allows you to search for a package within the package name or description — without knowing the package name.

    To search for a package using SmartSearch, type any search term you wish to search under (for example, you can search under 'ssh') into the search box, and then click the search icon. As you’ll see in the main package table, the search will return/display all packages containing the search term.

  • 2.5.4 Deselecting Packages

    To deselect a package, check the box next to the package name either from within the package window or in the 'Selected Packages' table in the left column. Note that once a package is deselected, all dependencies are automatically deselected for you.

2.6 Select Build Output Options

The next step in assembling your custom BSP/SDK is to select your build output options. From within the build output options, you can you select the preferred format for the root file system output and application output. You can also optimize the size of the file root file system image.

  • 2.6.1 Include Native Toolchain in the RFS

    You have the option of including the native toolchain in the root filesystem. If you want to include the native toolchain in the root filesystem, check the box.

  • 2.6.2 Include Kernel in the RFS

    You can specify whether or not you want the kernel included in the root filesystem. If you want to include the kernel in the root filesystem, check the box.

  • 2.6.3 RFS Image Format

    This section will allow you to select the file format for the root filesystem — the components in the Linux distribution which are not part of the boot process. File format options include TAR, JFFS2 Cramfs, Squashfs, and Initramfs.

  • 2.6.4 RFS Size Optimization

    By default, all root filesystem footprint optimization options (such as stripping all libraries and binaries in the RFS, removing all static files, etc.) are selected for you. You can override a default selection by unchecking the box next to it.

  • 2.6.5 Application Output Format

    You have the option of selecting the specific binary file format for all the APIs you’ve selected in your workorder. The application output format options are Deb, RPM, Binary Tarball, IPKG and None.

2.7 Review Advice Recommendations

The Timesys Web Factory Advice Engine will return advice recommendations based on the selections you’ve made throughout the 'Assemble a Custom BSP/SDK' process. The advice returned is based on build and run dependency as well as on logic dependency.

You can choose to accept the Timesys recommendations or proceed with your selections as you’ve made them.

2.8 Workorder Summary

The final step in building your custom BSP/SDK is to review your workorder. This is the last chance you will have to make changes to any of the selections you’ve made and view the item details as related to the kernel, toolchain components and packages you’ve selected.

  • 2.8.1 Edit Workorder Components

    To edit any of your workorder components, click on the applicable 'Edit' link in the workorder summary. Note that you’ll be taken back to the page/step in the 'Build Your Custom BSP/SDK' process where you originally made your selections. Once you’ve modified your selection, you can navigate to any other component using the main menu at the top of the Web Factory UI. For example, if you are finished making a change to your kernel selection, you can click on 'Summary' at the top, right of the page to be taken back to the Build Summary page.

  • 2.8.2 BSP / SDK Build Time

    At the bottom of the Build Summary page, you’ll find the estimated/approximate build time for your custom board support package and matching software development kit.

    It’s important to remember that all builds done by means of the FREE Edition / Web Factory UI take longer as they are all done from scratch. Your entire workorder is built from source, a best practice for development.

2.9 Saving Your Workorder for Later Modification

Once you’ve initiated a workorder, you can save your workorder at any time during the process of assembling your custom BSP/SDK. To save your workorder so that you can return to it at a later time, simply click on the ‘Save’ button at the bottom of the page you are on.

When you return at a later time to finish selection of your workorder components, you’ll select ‘Modify/Edit Existing Workorder’ and proceed as outlined in Section 2.2.2.

2.10 Queue Your Workorder for Build

Once you’ve selected all of your workorder components and you are satisfied with your selections, you can queue your workorder for build on Timesys servers.

To initiate the build, click on the 'Build' button.

  • 2.10.1 Build Wait Time

    Again, the build time displayed on the Workorder Summary page was an estimated/approximate build time. Once your build is queued, there will be a short amount of time before the build process begins. The amount of time depends on the number of builds in the queue at the time you initiated the build.

  • 2.10.2 Build Complete Notification

    Once your build is complete and ready for download, you’ll receive an email notification with a link to the download.

    In addition to the email notification, your workorder will be visible on your personal dashboard page (Figure 4), along with information indicating whether your build was completed successfully or not.
     

    Figure 4
     

3. Download Your Build

3.1 Download Page

To download your build:

  • 1. Click on the download link as provided in your email notification, or log in to LinuxLink and click on 'Download BSP/SDK' from the main menu at the top of any LinuxLink page.
  • 2. Click on the Download icon for the build you want to download, and you’ll be taken to the Build Output page (Figure 5).

3.2 Build Output Files: What Files Are Included?

Building your BSP and matching SDK using LinuxLink guarantees that both your development host and runtime system are always in sync. We include the same libraries used in your BSP in the SDK cross toolchain.

In addition, the SDK that you get from LinuxLink also includes the source code for the Linux kernel, and it comes with a root filesystem so that an application developer can not only build an application but can also copy it over to the NFS mounted / network mounted root filesystem and test the application right away.

Figure 5, below, illustrates a typical Build Output page.
 

Figure 5 (Click on the image for a larger view)
 

On the build output page, you’ll find the following:

  • Download link for the Linux kernel binary image and a root filesystem — These are the components that make up a Timesys defined board support package (BSP). You can deploy them on the reference platform by following the 'read this doc' link located above the download table.
  • Download link for the software development kit installer (the file that ends with .sh) — Download this file to your Linux host platform and install it. The .sh file will install the complete cross build system, including the cross toolchain (with all the libraries that are in your BSP), the Linux kernel source tree and a root filesystem, so that you can start developing your application.
  • Download link for the Desktop Factory build system* (factory.tar.gz) — The link on your build output page is for a version of the Desktop Factory that is preconfigured for your processor and development board.
  • * NOTE: This option is available to full/paid subscribers only.
  • Download link for the Build Summary text file (the file that ends in .txt) — A text file will be included with every workorder that you design using LinuxLink. The summary lists all the packages/APIs and versions used in your board support package and matching software development kit, as well as licensing information, so that you’ll know what licensing schemes you have to acknowledge or follow in your product design.

3.3 Build Update Notifications

You’ll receive regular email communications alerting you of updates to any of the Linux components in your BSP/SDK. At any time, you can modify your Update Notification preferences by following these easy steps:

  1. Click on 'My Account’ located in the upper, right of the masthead on any LinuxLink page.
  2. Click on 'My Update Preferences.'
  3. Make changes as applicable.
  4. Click the ‘Save’ button.

4. Boot Your Target Board with the Build Output

To boot your target board using the build output, click on 'read this doc' at the top of the build Output page (shown in Figure 5) or visit https://linuxlink.timesys.com/docs/gsg for a complete list of Timesys Getting Started Guides.

5. Advanced Platform Customizations

More advanced platform customizations such as reconfiguring, patching or modifying the Linux kernel, adding, modifying or removing packages in the RFS design packages, integration of third-party software, and integration of your value-add application, can only be done using the LinuxLink Desktop Factory.

For questions relating to advanced platform customizations, visit http://www.timesys.com/embedded-linux/linuxlink/pro or contact sales@timesys.com.

6. Additional Resources

Additional resources can be found on the LinuxLink Website. For your convenience, we've included a few helpful links below.

6.1 Video Demos

Build Your Custom BSP / SDK: LinuxLink FREE Edition Overview (3 mins.)

This demo gives you a quick tour of our award-winning LinuxLink FREE Edition automated embedded Linux build system and touches on the key steps for building your custom board support package and matching software development kit.

5 Steps to Building Your Custom BSP / SDK with Timesys (17 mins.)

This step-by-step demo will walk you through the steps as outlined in Section 2 of this document and show you how to get the most out of your LinuxLink FREE Edition account and assemble your custom BSP / SDK in minutes with our easy-to-use Web wizard.

6.2 Documentation

LinuxLink Concepts and Terminology

This document introduces the inherent concepts and terminology important to getting the most out of and making the best use of the LinuxLink framework.

6.3 Other

Getting Help

Click the 'Support' link at the top of any LinuxLink page to find out how to contact Timesys for help, advice, and assistance.