XBMC port for Solaris or OpenSolaris UNIX based based operating-system?
#16
spiff Wrote:at the end of the day, all that matters is;

do YOU want to invest the time to have xbmc run on a rather fringe platform? cause nobody currently on the team will ever do it. we have enough shit to do as it is.

nah, i don't know how to do that. I would if i did, i honestly am not asking anyone on the dev team to do this. I think the original question was just whether or not it was possible, and if so how to do it.

I'm only responding to why someone would want it. I'm perfectly happy to use xbmc on my media center pc's using linux. Having said that, if it was available on FreeBSD or OpenSolaris, i would use it on those platforms as well, and that's all i'm saying,.
Reply
#17
wonslung Wrote:nah, i don't know how to do that. I would if i did, i honestly am not asking anyone on the dev team to do this. I think the original question was just whether or not it was possible, and if so how to do it.

I'm only responding to why someone would want it. I'm perfectly happy to use xbmc on my media center pc's using linux. Having said that, if it was available on FreeBSD or OpenSolaris, i would use it on those platforms as well, and that's all i'm saying,.

It's possible and I've already outlined how to start doing it. Your task is to find someone who can perform the required work.
Reply
#18
Hey there, I was wondering if you've managed to make any further progress with this?
Reply
#19
Hi Tobi11

See the AudioEngine branch, it has OSS support, just be aware that as a branch, AudioEngine has bugs, is not stable and gets NO support, however I will try to assist as it is my pet project.
I am not scared of SVN - Cutting my hands open on the bleeding edge.
Reply
#20
Hey guys,
I didn't pursue this any further. I first tried to compile XBMC under OpenSolaris and then wanted to look at the Sound problem. I managed to get it to compile but it always crashed when launching it. In the end I decided not to use OpenSolaris for other reasons and did not look into this any more.
The AudioEngine branch looks very promising, but before it can be used/tested under OpenSolaris, a bunch of errors have to be fixed so that XBMC runs on OpenSolaris. It is more work than I thought and I didn't had the time.
Maybe I will try to complete it in the future. If someone wants to give it a try, I can try to help with what I already found out.
Reply
#21
If you don't mind me asking, what advantages did you see to attempting to use open solaris over linux? You weren't trying to run on a SPARC machine were you?
HTPC Rig:
Acer Revo 1600 /Tira2 IR rcvr
NAS: UNRAID
Reply
#22
I wanted to use ZFS, but since encryption still isn't implemented and with the Oracle takeover OpenSolaris' future was unknown for a long time, I am now using Linux with ext4 and lvm.

EDIT:
no wasn't a SPARC machine, normal x86
Reply
#23
Hey tobi, I'm also attempting to get xbmc to run under opensolaris (well, nexenta) for the power of zfs. At the moment I'm struggling to get basic dependencies like libsdl compiled. Do you have a list of patches/fixes that you may have had to come up with to get it all to compilation?
Reply
#24
paperkut Wrote:Hey tobi, I'm also attempting to get xbmc to run under opensolaris (well, nexenta) for the power of zfs. At the moment I'm struggling to get basic dependencies like libsdl compiled. Do you have a list of patches/fixes that you may have had to come up with to get it all to compilation?
Sure, I documented everything what I did, but unfortunately I lost most of what I did with the source code, because of a HDD failure. I have a list of files I needed to edit. I will look if I can reconstruct some of it. Getting all the dependencies was very time-consuming so this should help you getting this done faster.
I did this with the source code of 9.11-b1 Camelot, so maybe some things are not needed anymore or there are some additional dependencies.

SDL was already installed as a standard package on OpenSolaris, but since it was the cause for the crashes, I compiled it on my own and it did not complain (the crashes didn't disappear -.-). When you post some error messages, maybe I can help you.
Also most problems in the beginning occured because OpenSolaris hasn't installed several GNU tools or because you need to explicity say that you want the GNU version (gmake instead of make). Since Nexenta seams to use GNU tools you shouldn't have some of these problems.

First I needed the following packages from the OpenSolaris Package Management (don't know what Nexenta uses or if they are all available):
Code:
SUNWgcc
SUNWxorg-header
SUNWgnu-automake-110
SUNWmysql51
SUNWmysql51lib
SUNWsvn-java
SUNWsvn-python
SUNWsvn-perl
SUNWsvn
SUNWcmake
SUNWgmake
SUNWGlib
SUNWaconf
SUNWaudh
SUNWgit
SUNWmercurial
SUNWlibtool
SUNWonbld
SUNWgnu-libiconv
SUNWiconv-extra
SUNWiconv-unicode
SUNWgnu-gperf
SUNWgnu-mpfr
SUNWruby18
SUNWsmba
SUNWsmbs
SUNWgdb
SUNWlang-en
SUNWlang-en-extra
SUNWlang-de
SUNWlang-de-extra
SUNWlang-common-extra
Some of the packages are just for getting the source (git, svn) or debugging (gdb), but not necessarily needed.

Some Symlinks etc are missing:
Code:
pfexec ln -s /usr/bin/automake-1.10 /usr/bin/automake
pfexec ln -s /usr/bin/aclocal-1.10 /usr/bin/aclocal
pfexec ln -s /usr/lib/libCrun.so.1 /usr/lib/libCrun.so
pfexec ln -s /usr/mysql/bin/mysql_config /usr/bin/mysql_config
pfexec crle -l /usr/mysql/lib/mysql/ -u
pfexec crle -64 -l /usr/mysql/lib/64/mysql/ -u

For most of the dependencies there was no package, so I had to compile them manually (Compile the libraries in this order because there are some dependencies between them):
Code:
pkg-config-0.23
  ./configure --prefix=/usr
  gmake
  gmake check
  pfexec gmake install

glew-1.5.2
  gmake CFLAGS="-O2  -Iinclude -I/usr/openwin/include" LIB.LDFLAGS="-L/usr/openwin/lib -lXmu -lXi -lGL -lXext -lX11"
  pfexec gmake install INSTALL=ginstall

boost_1_41_0
  ./bootstrap.sh
  pfexec ./bjam toolset=sun stdlib=sun-stlport address-model=64 --prefix=/usr install

nasm-2.07
  ./autogen.sh
  ./configure --prefix=/usr
  gmake everything
  pfexec gmake install_everything

libmad-0.15.1b
  ./configure --prefix=/usr
  gmake
  gmake check
  pfexec gmake install
  nano mad.pc    # contents of the file below
  pfexec mv mad.pc /usr/lib/pkgconfig/

  mad.pc:
    prefix=/usr
    exec_prefix=${prefix}
    libdir=${prefix}/lib
    includedir=${prefix}/include
    Name: mad
    Description: MPEG Audio Decoder
    Requires:
    Version: 0.15.1b
    Libs: -L${libdir} -lmad
    Cflags: -I${includedir}

libsndlfile-1.0.20
  ./configure --prefix=/usr
  gmake
  gmake check
  pfexec gmake install

libsamplerate-0.1.7
  ./configure --prefix=/usr
  gmake
  gmake check
  pfexec gmake install

lzo-2.03
  ./configure --prefix=/usr
  gmake
  gmake check
  gmake test
  pfexec gmake install

fribidi-0.10.9
  ./configure --prefix=/usr
  gmake
  gmake check
  pfexec gmake install

libmms-0.5
  add in src/mmsio.h at line 6
    typedef uint16_t u_int16_t; // inserted
    typedef uint32_t u_int32_t; // inserted
    typedef uint64_t u_int64_t; // inserted
  ./configure --prefix=/usr
  gmake
  gmake check
  pfexec gmake install

enca-1.12
  ./configure --prefix=/usr
  gmake
  gmake check    # 2 tests fail
  pfexec gmake install

faad2-2.7
  add in libfaad/Makefile.in @ line 198
    AM_CFLAGS = -I$(top_srcdir)/include
  ./configure --prefix=/usr --with-drm
  gmake
  gmake check
  pfexec gmake install
  pfexec cp include/neaacdec.h /usr/include/

SDL_mixer-1.2.11
  ./configure --prefix=/usr --enable-music-mp3-mad-gpl
  gmake
  pfexec gmake install

jasper-1.900-1
  ./configure --prefix=/usr
  gmake
  pfexec gmake install

SDL_image-1.2.10
  ./configure --prefix=/usr CFLAGS="-I/usr/include/libpng10"
  gmake
  pfexec gmake install

libcdio-0.82
  comment out line 117 in /usr/include/sys/regset.h
  ./configure --prefix=/usr --disable-cddb --disable-vcd-info
  gmake
  gmake check    # some tests fail
  pfexec gmake install
  uncomment line 117 in /usr/include/sys/regset.h

faac-1.2.8
  ./configure --prefix=/usr --with-mp4v2
  gmake
  gmake check
  pfexec gmake install

lame-398-2
  ./configure --prefix=/usr
  gmake
  pfexec gmake install

a52dec-0.7.4
  ./configure --prefix=/usr --enable-shared
  gmake
  pfexec gmake install

libdca-0.0.5
  ./configure --prefix=/usr --enable-shared
  gmake
  pfexec gmake install

libmpeg2-0.5.1
  ./configure --prefix=/usr
  gmake
  pfexec gmake install

wavpack-4.0.1
  ./configure --prefix=/usr
  gmake
  pfexec gmake install

libass-0.9.8
  ./configure --prefix=/usr
  gmake
  pfexec gmake install

ffmpeg-git-2010-01-23
  replace install with ginstall in following files
    Makefile
    subdir.mak
  ./configure --prefix=/usr --enable-pthreads --enable-shared --enable-vdpau --enable-gpl --enable-postproc --enable-nonfree --enable-avfilter --extra-cflags="-fPIC" --extra-ldflags="-mimpure-text -lrt" --disable-mmx --enable-libvorbis --enable-libmp3lame --enable-libfaac --cc=gcc-4.3.2
  gmake
  pfexec gmake install

mplayer-checkout-2010-01-23
  ./configure --prefix=/usr --cc=gcc-4.3.2
  gmake
  pfexec gmake install INSTALL=ginstall

openssl-0.9.8l
  ./Configure solaris-x86-gcc shared threads zlib --prefix=/usr
  gmake
  gmake test
  pfexec gmake install
Most of the times you just configure and make but sometimes there are some tricks. I just wanted the libraries to compile, so some of them are a bit strange.

Finally the XBMC compilation:
Code:
xbmc-9.11-b1
  pfexec crle -l /usr/sfw/lib -u
  pfexec ln -s /usr/lib/libstdc++.so.6 /usr/lib/libstdc++.so
  pfexec ln -s /usr/lib/libgcc_s.so.1 /usr/lib/libgcc_s.s
  ./bootstrap
  bash ./configure CFLAGS="-I/usr/mysql/include" LDFLAGS="-L/usr/lib -L/usr/mysql/lib/mysql -L/usr/sfw/lib -R/usr/lib -R/usr/sfw/lib -R/usr/mysql/lib/mysql -L/usr/X11/lib -R/usr/X11/lib -lXext" --prefix=/usr --enable-external-libraries --enable-debug CC=gcc-4.3.2 CXX=g++-4.3.2 INSTALL=ginstall
  gmake
Reply
#25
Hello everyone. many years later, here is an initial xbmc port to OpenIndiana.

You can find patches and build script here:
https://github.com/phorcys/kodi_OI

Just a initial version,kodi can be build and fireup without crash

steps:

1. update to latest OI version hipster-2015
Quote:sudo pkg update
2. install depends pkg by
Quote: sudo pkg set-publisher -O http://pkg.openindiana.org/hipster-encumbered hipster-encumbered
sudo pkg install build-essential doxygen boost nasm mariadb-55 fribidi libass libmpeg2 libdca libmicrohttpd libpthread-stubs mesa glu glw libsmbclient video/ffmpeg gperf libdvdread libsmbclient system/header/header-audio

3. run depends script build_kodi_OI_depends.sh

4. build kodi with build_kodi_OI.sh

5. run it run_kodi_OI.sh

Update Jan.12

kodi can successfully run under OpenIndiana
basic playback function works ok.
Reply

Logout Mark Read Team Forum Stats Members Help
XBMC port for Solaris or OpenSolaris UNIX based based operating-system?0