Compiling KODI v16 released and Stalker Middleware Client on Fedora 23 (and beyond)..
version 2.x is from the master git branch, which is for Krypton. check that you are compiling from the Jarvis git branch. the addon version on Jarvis is v1.x
HI Ken:
Yes, you were correct! It's been a while since we've corresponded. Nice to hear from you.
I corrected my script accordingly (with inline notes -- see below) to get the correct Git branch/tag, and now it succeeds.
And in case anyone is interested, below is the script that I have successfully been using for
several years now to compile
KODI and the
Stalker Middleware Client on
Fedora / Linux from GIT sources (
KODI 14, 15, 16 on
Fedora 20, 21, 22, 23). Sometimes you have to tweak things, but generally it just works if you have the right RPMs installed (and there are many required). I have posted this variously on this (and also on the KODI) forum before; but I recently modified it to no longer include compilations of
Kodi-Platform and the
Pulse-Eight Platform (both removed) since, apparently, separate compilation of those is no longer needed (perhaps because it's now included in the KODI and/or Stalker sources).
With thanks to
@wsnipex, @dvbken, @dara, @psycon, @puska (etc) who, over the years helped me piece things together when I came running here for help, here it is again (for
Fedora people). Hopefully it helps others.
Code:
#! /bin/bash
export PATH="/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/local/sbin:."
export LD_LIBRARY_PATH="/lib64:/usr/local/lib64:/lib:/usr/local/lib:/usr/lib64:/usr/lib"
export PREFIX="/opt/KODI.d"
export BUILD_DIR="/home/devnull/Downloads/KODI.d/BUILD.d"
#
# =====================================================================================
# STEP-0: Clean up the BUILD directory. Also save /opt/KODI.d (our previous build), just in case.
# =====================================================================================
cd /tmp
rm -rf ${BUILD_DIR}
mkdir -p ${BUILD_DIR}
cd ${BUILD_DIR}
#
sudo mv /opt/KODI.d /opt/_KODI.d # Save previous installation, just in case.
sudo mkdir /opt/KODI.d
# =====================================================================================
cd ${BUILD_DIR}
# =====================================================================================
# STEP-1: Get the FINAL-version of latest released KODI (no Beta or RC versions).
# Visit 'https://github.com/xbmc/xbmc' and select & copy the correct TAG/BRANCH string.
# =====================================================================================
KODI_TAG='16.0-Jarvis' # UPDATE-ME AS NECESSARY!
git clone --branch ${KODI_TAG} https://github.com/xbmc/xbmc.git xbmc
# =====================================================================================
# =====================================================================================
# STEP-2: Get the Stalker Client version that corresponds to the above KODI version.
# Visit 'https://github.com/kodi-pvr/pvr.stalker' and select & copy the correct TAG/BRANCH string.
# =====================================================================================
STALKER_TAG='Jarvis' # UPDATE-ME AS NECESSARY!
git clone --branch ${STALKER_TAG} https://github.com/kodi-pvr/pvr.stalker.git pvr.stalker
# =====================================================================================
# =====================================================================================
# STEP-3: Slipstream the Stalker Client software into the KODI source tree.
# =====================================================================================
mkdir -p pvr.stalker/build
(cd pvr.stalker/build;
cmake -DADDONS_TO_BUILD=pvr.stalker \
-DADDON_SRC_PREFIX=../.. \
-DCMAKE_BUILD_TYPE=Debug \
-DCMAKE_INSTALL_PREFIX=../../xbmc/addons \
-DPACKAGE_ZIP=1 ../../xbmc/project/cmake/addons)
#
(cd pvr.stalker/build; make)
# =====================================================================================
# =====================================================================================
# STEP-4: Finally, build KODI.
# =====================================================================================
cd ${BUILD_DIR}/xbmc
# =====================================================================================
# Compilation of KODI will fail if it cannot find the JsonSchemaBuilder binary in
# our PATH. So we first compile and copy a JsonSchemaBuilder binary to /usr/local/bin/.
# =====================================================================================
sudo make -C ./tools/depends/native/JsonSchemaBuilder/ PREFIX=${PREFIX}
sudo cp -p ./tools/depends/native/JsonSchemaBuilder/native/JsonSchemaBuilder /usr/local/bin/
sudo chmod 755 /usr/local/bin/JsonSchemaBuilder
# =====================================================================================
# =====================================================================================
# NOTE: Do not place this sub-section above the JsonSchemaBuilder section (above); as
# doing so will cause that part to not compile correctly. I don't know why. =:)
# =====================================================================================
export PKG_CONFIG_PATH=${PKG_CONFIG_PATH}:${PREFIX}/lib/pkgconfig \
CFLAGS="$CFLAGS -I${PREFIX}/include" \
CXXFLAGS="$CFLAGS -I${PREFIX}/include" \
LDFLAGS="-L${PREFIX}/lib -lcrossguid -luuid"
# =====================================================================================
./bootstrap
sudo make -C ./tools/depends/target/crossguid PREFIX=${PREFIX}
sudo make -C ./tools/depends/target/libdcadec PREFIX=${PREFIX}
./configure --prefix=${PREFIX}
make
sudo make install # Installs into ${PREFIX}
# ===================================================
exit
Run as follows:
On Optimus-based laptops (assumed to be properly configured):
Code:
$user /usr/bin/optirun [options] /opt/KODI.d/bin/kodi
On regular laptops:
Code:
$user /opt/KODI.d/bin/kodi