Please note as of Wednesday, August 15th, 2018 this wiki has been set to read only. If you are a TI Employee and require Edit ability please contact x0211426 from the company directory.

DVSDK 3.10 Makefile usage

From Texas Instruments Wiki
Jump to: navigation, search


The DVSDK make system helps users build and install images for different components and platforms. This page describes some of the features and usages of the DVSDK 3.10 main Makefile found in the dvsdk_3_10_##_## directory.

Common usage

  • The help command provides a complete overview of the make features supported in the release
host $ make help
  • The DVSDK makefile uses paths for each component set in Rules.make. If the paths in this file are not correct for a particular component, edit the file to correct the paths to that component. The following command check if the paths in Rules.make are correct
host $ make check
  • The DVSDK component version information can be obtained from
host $ make info
  • All DVSDK components, except psp_examples, can be cleaned using
host $ make clobber
  • All DVSDK components, except psp_examples, can be built using
host $ make everything
  • All DVSDK components required to build the included demonstration applications (except for the Linux kernel) can be cleaned and built with commands
host $ make clean
host $ make

  • To install the included demonstration applications and other supported files, use the command
host $ make install

Note: The value of EXEC_DIR variable in Rules.make is used as installation directory.

Building Linux kernel

  • The following command builds the Linux kernel
host $ make linux

Note: The path to uImage will be provided at the end of the build stage.

  • Use the following command to make changes in the Linux configuration (using menuconfig)
host $ make linux MENUCONFIG=true

This command will open a menuconfig editor and allow you to change kernel configurations.

Note: make does not change .config if already present. Thus, if the kernel configuration has changed, the MENUCONFIG=true option needs to be provided the next time you build; the exception is if it needs to be changed or the configuration needs to be viewed.

  • The Linux kernel can be cleaned (including .config) using following command
host $ make linux_clean

Building individual components

  • The make system provides options to clean, build, or install some of the individual components; consult make help for further details.
host $ make dmai_clean
host $ make dmai
host $ make dmai_install
  • Some of the components support VERBOSE=true flag. If this flag is used, the make system will display the complete commands that were run for the build.
host $ make dmai VERBOSE=true

Building PSP examples

This version of DVSDK does not require PSP examples to be installed during installation process. If you need to build PSP examples do the following

  • 1) Download examples-davinci.tar.gz from the DVSDK 3.10 download page and untar it in the host to the components installation directory (e.g., /home/user/dvsdk)
host $ tar -xzf examples-davinci.tar.gz -C /home/user/dvsdk
It will untar to a directory /home/user/dvsdk/examples-r37
  • 2) Edit Rules.make, line LINUXEXAMPLES_INSTALL_DIR=$(DVSDK_INSTALL_DIR)/../examples-r37 so that it points to right directory (e.g., /home/user/dvsdk/examples-r37 in above case).
  • 3) To clean, build, and install the PSP examples use following commands
host $ make psp_examples_clean
host $ make psp_examples
host $ make psp_examples_install

Building/Generating Kernel Modules (KOs)

The make system provides options to clean and build individual kernel modules; consult make help for further details. All the KOs can be build using below command.

  • 1) Build cmemk
host $ make cmem_clean
host $ make cmem		/* Build cmemk.ko */
  • 2) Build edmak
host $ make edmak_clean
host $ make edmak		/* Build edmak.ko */
  • 3) Build irqk
host $ make irqk_clean
host $ make irqk		/* Build irqk.ko */
  • 4) Build dmammapk
host $ make dmammapk_clean
host $ make dmammapk		/*  Build dmammapk kernel module e.g dm365mmap.ko */

Note: Kernel Modules (KOs) can be found under $(DVSDK_INSTALL_DIR)/kernel_binaries/$(PLATFORM) directory.