• Quick Start
  • Booting
  • Platform
  • Portals
  • References
    • API Reference TOI3
    • IIP Reference
  • Resources
ARRIS Enterprises, Inc. Confidential Information

Using the KreaTV Toolchain

The following assumes that you are using make to handle the compilation of your code.

General setup

Variables

DK_DIR should be changed to point to the dir in which the development kit is installed.

The TOOLCHAIN variable is used to control which toolchain (e.g. bcm15 or bcm45) to build for. Use it this way:

TOOLCHAIN=bcm15 make


# Architecture handling

ifeq ($(TOOLCHAIN),bcm15)
  ARCH = arm-kreatv-linux-gnueabihf
endif
ifeq ($(TOOLCHAIN),bcm45)
  ARCH = mipsel-kreatv-linux-uclibc
endif

# Toolchain
DK_DIR = $(CURDIR)/../..
DIST_DIR = $(DK_DIR)/dist
TOOLCHAIN_PATH = $(shell cat $(DIST_DIR)/$(TOOLCHAIN)/toolchain_dir)
TOOLCHAIN_DIST_DIR = $(DIST_DIR)/$(TOOLCHAIN)

Compilation

Compilers

CC is used for C compilation and CXX for C++ compilation.


# Compilers
CC  = $(TOOLCHAIN_PATH)/bin/$(ARCH)-gcc
CXX = $(TOOLCHAIN_PATH)/bin/$(ARCH)-g++

Include paths

The following paths are needed for C++ compilation.


# Include paths
CPPFLAGS += -I$(TOOLCHAIN_DIST_DIR)/include
CPPFLAGS += -I$(TOOLCHAIN_DIST_DIR)/3pp/include

Linking

Library paths


LDFLAGS += -L$(TOOLCHAIN_DIST_DIR)/lib
LDFLAGS += -L$(TOOLCHAIN_DIST_DIR)/3pp/lib

Libraries

The following is an example of libraries that may be needed when building:


LDFLAGS += -lcommondbg
LDFLAGS += -lIpc
LDFLAGS += -ltoi

5.1.1.p8

Copyright (c) 2018 ARRIS Enterprises, LLC. All Rights Reserved. ARRIS Enterprises, LLC. Confidential Information.