2012-10-09, 13:48
Hi there people.
I decided to post here for everyone's benefit, a script to compile Kodi from GIT, I found it in the forums but needed updating (mostly dependencies). I have no experience or desire to support the script.
If you use it and find errors in the script logic, let me know what errors or logic and I will try to update it.
Support:
If something goes wrong please provide full config.logs and pastebins of the output of the errors or issues so I can try to help, else I cant help at all.
FIXED:
Last Update: Thu Mar 5 23:24:31 GMT 2015
This is released with no warranty of any kind and by using it, you assume responsibility for the benefits and damages to your system.
Most of all, you should backup your system before using it.
To use you should "NOT" login as root (unless you know what your doing) execute script with sudo
Dependencies:
These should provide all required dependencies but given nature of master these can change at any time without notice. simply add them to the DEPS line and re-run script with the option you require, script checks for any missing dependencies on DEPS variable it will install any you added there at any stage via the automatic check it does before compiling anything at various stages via CHECK_DEPS() function.
libgnutls-dev Is not a required dependency, as such is not here, but some distros not Ubuntu may require it due to way they package their stuff if you need it install it manually or add it to DEPS line as explained above.
NOTE
If you dont install libnfs1-dev via ppa run sudo ./gcs.sh libnfs previous to running sudo ./gcs.sh compile. Minimum required is 1.3.0 but the script compiles 1.8.0 at time of writing, it performs slightly faster and has many bug fixes.
Configure options (list for options you may want to enable or disable on the ./configure line
Default=yes ( meaning that by default this is enabled even if not defined in ./configure)
Default=no ( meaning the opposite of the above )
Default=auto ( meaning if a library is installed and detected it will be enabled otherwise if not detected it is not enabled )
Default is enabled ( meaning the option is enabled Note: usually it is dependent on a library being installed, if it is not, the compile will fail )
Some options dont have either of the yes/no/auto When in doubt look at was being enabled or disabled.
Options that can be enabled can usually also be disabled.
Syntax
--disable-option-checking ignore unrecognized --enable/--with options
--disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no)
--enable-FEATURE[=ARG] include FEATURE [ARG=yes]
Options ( A complete list of options are available when running ./configure --help inside the XBMC git directory in this case /home/setup/xbmc )
--enable-shared-lib build libxbmc. helpful for tests (default is no)
--enable-gl enable OpenGL rendering (default is yes)
--enable-vdpau enable VDPAU decoding (default is auto)
--enable-vaapi enable VAAPI decoding (default is auto)
--enable-xrandr enable XRandR support (default is yes)
--enable-goom enable GOOM visualisation (default is no)
--enable-rsxs enable really slick X screensavers (default is yes)
--enable-projectm enable ProjectM visualisation (default is yes)
--enable-ccache enable building with ccache feature (default is auto)
--disable-alsa disable ALSA support (only for linux/freebsd)
--enable-pulse enable PulseAudio support (default is no)
--disable-ssh disable SSH SFTP support (default is enabled)
--enable-rtmp enable RTMP support via librtmp (default is auto)
--disable-samba disable SAMBA support (default is enabled)
--enable-nfs enable NFS support via libnfs (default is auto)
--enable-afpclient enable AFP support via libafpclient (default is auto)
--enable-airplay enable AirPlay support(default is auto)
--enable-airtunes enable AirTunes support(default is auto)
--disable-upnp disable UPnP support (default is enabled)
--enable-ffmpeg-libvorbis enable FFmpeg vorbis encoding (default is no)
--enable-dvdcss enable DVDCSS support (default is yes)
--enable-mid enable MID support (default is no)
--disable-hal disable HAL support (default is enabled if hal and hal-storage is found)
--disable-avahi disable Avahi support (default is enabled if libavahi-common and libavahi-client is found)
--disable-non-free disable componentents with non-compliant licenses
--enable-asap-codec enable ASAP ADPCM support
--disable-mysql disable mysql
--disable-webserver disable webserver
--disable-optical-drive disable optical drive
--enable-libbluray enable libbluray support
--enable-udev enable udev support (default is auto)
--enable-libusb enable libusb support (default is auto)
--enable-libcec enable libcec support (default is auto)
--enable-libcap enable libcap support (default is auto)
READMES: Hope these help I have removed some options as to not get people enabling/disabling things that are not clear if their platforms support, if you are not sure consult your platform compile readme.
F.A.Q. (Frequently Asked Questions
Q - The script says it only INTEL compatible what do I do?
A - You downloaded wrong script for your system, SYS_CHECK() prevents you from running wrong script and end up with broken compile.
Q - The script says it only NVIDIA compatible what do I do?
A - See above answer.
Q - Do you have AMD GPU compile scripts or will you make one?
A - Never. No, Don't even bother asking, I refuse. Intel script was already some exception made for friends. In order to be my friend you need to buy me beer and bacon.
Q - I had some error, or script failed what do I do?
A - If something goes wrong please provide full config.logs and pastebins of the output of the errors or issues so I can try to help, else I cant help at all.
I decided to post here for everyone's benefit, a script to compile Kodi from GIT, I found it in the forums but needed updating (mostly dependencies). I have no experience or desire to support the script.
If you use it and find errors in the script logic, let me know what errors or logic and I will try to update it.
Support:
If something goes wrong please provide full config.logs and pastebins of the output of the errors or issues so I can try to help, else I cant help at all.
Code:
sudo pastebinit < /home/setup/kodi-git/config.log
- Loads of updates and new/improved versions now in gist @ github.
- Updated to V15.x Isengard's depends/removed dead depends
Last Update: Thu Mar 5 23:24:31 GMT 2015
This is released with no warranty of any kind and by using it, you assume responsibility for the benefits and damages to your system.
Most of all, you should backup your system before using it.
To use you should "NOT" login as root (unless you know what your doing) execute script with sudo
Dependencies:
These should provide all required dependencies but given nature of master these can change at any time without notice. simply add them to the DEPS line and re-run script with the option you require, script checks for any missing dependencies on DEPS variable it will install any you added there at any stage via the automatic check it does before compiling anything at various stages via CHECK_DEPS() function.
libgnutls-dev Is not a required dependency, as such is not here, but some distros not Ubuntu may require it due to way they package their stuff if you need it install it manually or add it to DEPS line as explained above.
NOTE
If you dont install libnfs1-dev via ppa run sudo ./gcs.sh libnfs previous to running sudo ./gcs.sh compile. Minimum required is 1.3.0 but the script compiles 1.8.0 at time of writing, it performs slightly faster and has many bug fixes.
Code:
NVIDIA ONLY - no pulseaudio (if you use desktop you going to need it)
wget https://gist.github.com/un1versal/88db95a67f69a072ef9a/raw -O ~/gcs.sh
INTEL ONLY - no pulseaudio (if you use desktop you going to need it)
wget https://gist.github.com/un1versal/bb410bd76d0cc7fb7524/raw -O ~/gcs.sh
chmod 755 gcs.sh
sudo ./gcs.sh compile (for first run)
or
sudo ./gcs.sh update (everytime after)
Configure options (list for options you may want to enable or disable on the ./configure line
Default=yes ( meaning that by default this is enabled even if not defined in ./configure)
Default=no ( meaning the opposite of the above )
Default=auto ( meaning if a library is installed and detected it will be enabled otherwise if not detected it is not enabled )
Default is enabled ( meaning the option is enabled Note: usually it is dependent on a library being installed, if it is not, the compile will fail )
Some options dont have either of the yes/no/auto When in doubt look at was being enabled or disabled.
Options that can be enabled can usually also be disabled.
Syntax
--disable-option-checking ignore unrecognized --enable/--with options
--disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no)
--enable-FEATURE[=ARG] include FEATURE [ARG=yes]
Options ( A complete list of options are available when running ./configure --help inside the XBMC git directory in this case /home/setup/xbmc )
--enable-shared-lib build libxbmc. helpful for tests (default is no)
--enable-gl enable OpenGL rendering (default is yes)
--enable-vdpau enable VDPAU decoding (default is auto)
--enable-vaapi enable VAAPI decoding (default is auto)
--enable-xrandr enable XRandR support (default is yes)
--enable-goom enable GOOM visualisation (default is no)
--enable-rsxs enable really slick X screensavers (default is yes)
--enable-projectm enable ProjectM visualisation (default is yes)
--enable-ccache enable building with ccache feature (default is auto)
--disable-alsa disable ALSA support (only for linux/freebsd)
--enable-pulse enable PulseAudio support (default is no)
--disable-ssh disable SSH SFTP support (default is enabled)
--enable-rtmp enable RTMP support via librtmp (default is auto)
--disable-samba disable SAMBA support (default is enabled)
--enable-nfs enable NFS support via libnfs (default is auto)
--enable-afpclient enable AFP support via libafpclient (default is auto)
--enable-airplay enable AirPlay support(default is auto)
--enable-airtunes enable AirTunes support(default is auto)
--disable-upnp disable UPnP support (default is enabled)
--enable-ffmpeg-libvorbis enable FFmpeg vorbis encoding (default is no)
--enable-dvdcss enable DVDCSS support (default is yes)
--enable-mid enable MID support (default is no)
--disable-hal disable HAL support (default is enabled if hal and hal-storage is found)
--disable-avahi disable Avahi support (default is enabled if libavahi-common and libavahi-client is found)
--disable-non-free disable componentents with non-compliant licenses
--enable-asap-codec enable ASAP ADPCM support
--disable-mysql disable mysql
--disable-webserver disable webserver
--disable-optical-drive disable optical drive
--enable-libbluray enable libbluray support
--enable-udev enable udev support (default is auto)
--enable-libusb enable libusb support (default is auto)
--enable-libcec enable libcec support (default is auto)
--enable-libcap enable libcap support (default is auto)
READMES: Hope these help I have removed some options as to not get people enabling/disabling things that are not clear if their platforms support, if you are not sure consult your platform compile readme.
F.A.Q. (Frequently Asked Questions
Q - The script says it only INTEL compatible what do I do?
A - You downloaded wrong script for your system, SYS_CHECK() prevents you from running wrong script and end up with broken compile.
Q - The script says it only NVIDIA compatible what do I do?
A - See above answer.
Q - Do you have AMD GPU compile scripts or will you make one?
A - Never. No, Don't even bother asking, I refuse. Intel script was already some exception made for friends. In order to be my friend you need to buy me beer and bacon.
Q - I had some error, or script failed what do I do?
A - If something goes wrong please provide full config.logs and pastebins of the output of the errors or issues so I can try to help, else I cant help at all.
Code:
sudo pastebinit < /home/setup/kodi-git/config.log