Git Product home page Git Product logo

opx-build's Introduction

opx-build

This repository contains build information for OpenSwitch OPX.

Get OpenSwitch

There are two ways to get the image:

  • Download and install binaries โ€” see Installation below for complete information, or
  • Build from scratch โ€” see the step-by-step instructions below to build the project.

Build environment recommendations

  • Intel multi-core
  • Ubuntu 16.04 or later (desktop edition with Python installed)
  • 20G available free disk space

Build environment prerequisites

Updated environment: sudo apt-get update

  • GIT: sudo apt-get install git
  • Repo: sudo apt-get install repo
  • apt-utils: sudo apt-get install apt-utils
  • Docker: sudo apt-get install docker.io

Clone the source code

To get the source files for the OpenSwitch OPX repositories, run the commands in an empty directory (root directory). For example: ~/dev/opx/:

repo init -u https://github.com/open-switch/opx-manifest.git
repo sync

The repo sync command downloads all of the source files that you need to build OpenSwitch. In addition to the source files, you will also need some binary libraries for the SAI. The SAI is currently not open sourced entirely, as it is based on Broadcom's SDK and there is no open source SAI implementation from Broadcom at this time.

All build scripts are found in the opx-build repo and will be downloaded as part of the above repo sync.

Build the code

Setup your path to include opx-build/scripts folder (if you plan to run this command often, you could optionally add it to the .bashrc):

cd opx-build/scripts
export PATH=$PATH:$PWD

OpenSwitch Docker environment

To setup your Docker OPX image, use the script in the opx-build/scripts folder called opx_setup. This script builds a Docker container called docker-opx which will be used by the build scripts:

cd opx-build/scripts/
./opx_setup

Build one repository

Go to the root directory where you installed the OPX repositories and run the OPX Docker container:

cd ~/dev/opx
opx-build/scripts/opx_run

To build a single repository, go to the repository and build. For example, to build opx-logging:

opx-dev@077f7b30f8ef:/# cd /mnt
opx-dev@077f7b30f8ef:/mnt# opx-build/scripts/opx_build opx-logging

Build all repositories

Issue the opx_build all command from the root directory to build all repos and create packages in the same root directory.

opx-dev@077f7b30f8ef:/# cd /mnt
opx-dev@077f7b30f8ef:/mnt# opx-build/scripts/opx_build all

Installation

Once all of the repositories have been built, you can install the created ONIE Debian x86_64 image. You can then install all of the build packages, along with other Debian files you downloaded earlier in the root directory.

See Install OpenSwitch OPX on Dell S6000 Platform for complete information.

(c) 2017 Dell

opx-build's People

Contributors

johntconklin avatar jghalam avatar manumala avatar mabnhdev avatar amybuck avatar deltasierra avatar

Watchers

James Cloos avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.