-
Notifications
You must be signed in to change notification settings - Fork 238
How to build
Here we provide guidelines on how to build for some common systems, in a similar way it will be possible to build on other systems or distributions.
Choose the operating system on which to build the add-on:
Build on Windows (64 bit) [click to expand]
- Install Git for Windows
- Install Visual Studio (component needed "Desktop development with C++")
- Install CMake
- Make a new folder in your disk root e.g.
C:\<folder>
to use as main folder - Right click on the new folder, on the context menu select
Git Bash Here
, a terminal will be opened to this folder -
git clone --branch master https://github.com/xbmc/xbmc.git
*1 -
git clone --branch Nexus https://github.com/xbmc/inputstream.adaptive.git
*1 mkdir inputstream.adaptive/build/
cd inputstream.adaptive/build/
- Run the following command: *2
cmake -T host=x64 -DADDONS_TO_BUILD=inputstream.adaptive -DCMAKE_BUILD_TYPE=Release -DADDON_SRC_PREFIX=../.. -DCMAKE_INSTALL_PREFIX=../../xbmc/addons -DPACKAGE_ZIP=1 ../../xbmc/cmake/addons
-
cmake --build . --config Release --target inputstream.adaptive
*3 - At this point the add-on binary is builded inside
C:\<folder>\xbmc\addons
path, then:
- You can zip the
inputstream.adaptive
to make it installable via Kodi add-on browser
If you find many errors in the building of expat dependency, you are most likely using VisualStudio in a language other than English, or with more languages installed.
Unfortunately, the use of several languages leads to the localisation of CMake output, this cause the failing of check_c_compiler_flag
in expat/ConfigureChecks.cmake, that is the main cause of broken build.
One way to solve the problem is uninstall all language packs of Visual Studio and install/keep only the English language pack. After this you can build with success.
Build on Raspbian for Raspberry Pi (instructions may be outdated) [click to expand]
- Install tools:
sudo apt install autoconf bison build-essential curl default-jdk gawk git gperf libcurl4-openssl-dev zlib1g-dev cmake zip
Open the terminal and execute these commands in sequence:
- Make a new folder in your home directory
mkdir <folder>
to use as main folder cd <folder>
git clone https://github.com/raspberrypi/tools --depth=1
git clone https://github.com/raspberrypi/firmware --depth=1
-
git clone --branch master https://github.com/xbmc/xbmc.git
*1 -
git clone --branch Nexus https://github.com/xbmc/inputstream.adaptive.git
*1 mkdir inputstream.adaptive/build/
cd inputstream.adaptive/build/
- Run the following command: *2
cmake -DADDONS_TO_BUILD=inputstream.adaptive -DADDON_SRC_PREFIX=../.. -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=../../xbmc/addons -DPACKAGE_ZIP=1 ../../xbmc/cmake/addons
make
- At this point the add-on binary is builded inside
home/<folder>/xbmc/addons
path, then:
- To make an installable Kodi add-on zip:
zip -r ../../inputstream.adaptive.zip inputstream.adaptive
, you will find the zip inhome/<folder>
- To browse builded files:
cd ../../xbmc/addons/inputstream.adaptive
Build on Linux - Ubuntu [click to expand]
- GIT
- GCC
- CMAKE
- G++
To install the prerequisites run in the terminal:
sudo apt install git cmake gcc g++
Open the terminal and execute these commands in sequence:
- Make a new folder in your home directory
mkdir <folder>
to use as main folder cd <folder>
-
git clone --branch master https://github.com/xbmc/xbmc.git
*1 -
git clone --branch Nexus https://github.com/xbmc/inputstream.adaptive.git
*1 mkdir inputstream.adaptive/build/
cd inputstream.adaptive/build/
- Run the following command: *2
cmake -DADDONS_TO_BUILD=inputstream.adaptive -DADDON_SRC_PREFIX=../.. -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=../../xbmc/addons -DPACKAGE_ZIP=1 ../../xbmc/cmake/addons
make
- At this point the add-on binary is builded inside
home/<folder>/xbmc/addons
path, then:
- To make an installable Kodi add-on zip:
zip -r ../../inputstream.adaptive.zip inputstream.adaptive
, you will find the zip inhome/<folder>
- To browse builded files:
cd ../../xbmc/addons/inputstream.adaptive
You can also find others ways to build the add-on from Kodi repository documentation:
https://github.com/xbmc/xbmc/blob/master/docs/README.Linux.md#5-build-binary-add-ons
- *1: You can change the branch name according to the Kodi version to use.
- *2: If you have to debug the component
CMAKE_BUILD_TYPE
value must be set toDebug
(Kodi should also be built as Debug). - *3: If you have to debug the component
--config
value must be set toDebug
(Kodi should also be built as Debug).
User Documentation
Developer Documentation
- Integration
- Stream selection types properties
- How to test a stream
- How to provide custom manifest and license
- Supported containers and codecs
- Verified Media Path (VMP)
- Resolution limits for playable streams
- Audio Subtitles track properties
- Dev. FAQ
- Widevine ARM64 support
- Add‐on WIP status
Development