Chapter 4. Using Sourcery G++ from the Command Line
Prev |  | Next

## Chapter 4. Using Sourcery G++ from the Command Line

This chapter demonstrates the use of Sourcery G++ Lite from the command line.

## 4.1. Building an Application

This chapter explains how to build an application with Sourcery G++ Lite using the command line. As elsewhere in this manual, this section assumes that your target system is mips-sde-elf, as indicated by the mips-sde-elf command prefix.

Using an editor (such as notepad on Microsoft Windows or vi on UNIX-like systems), create a file named `main.c` containing the following simple factorial program:

    #include <stdio.h>

    int factorial(int n) {
      if (n == 0)
        return 1;
      return n * factorial (n - 1);
    }

    int main () {
      int i;
      int n;
      for (i = 0; i < 10; ++i) {
        n = factorial (i);
        printf ("factorial(%d) = %d\n", i, n);
      }
      return 0;
    }

Compile and link this program using the command:

    > mips-sde-elf-gcc -o factorial main.c -T script

Sourcery G++ requires that you specify a linker script with the `-T` option to build applications for bare-board targets. Linker errors like `undefined reference to `read'` are a symptom of failing to use an appropriate linker script. Default linker scripts are provided in `mips-sde-elf/lib`. Refer to Chapter 5, “CS3™: The CodeSourcery Common Startup Code Sequence” for information about the boards and linker scripts supported by Sourcery G++ Lite.

There should be no output from the compiler. (If you are building a C++ application, instead of a C application, replace mips-sde-elf-gcc with mips-sde-elf-g++.)

Prev |  | Next
3.8. Additional Documentation | Home | 4.2. Running Applications on the Target System