Compiling on Fedora 9
#1
I've been having some limited success compiling XBMC on Fedora 9. To help any one else trying this, here is what I have had to do.

Install Fedora with full dev tools, then install the following packages.

Code:
sudo yum install SDL* glew glew-devel libmad-devel tre tre-devel libogg libogg-devel libvorbis libvorbis-devel boost boost-devel bzip2-devel bzip2-libs fribidi* lzo lzo-devel mysql-libs mysql-devel jasper jasper-devel faac faac-devel enca enca-devel hal hal-devel hal-libs cmake gperf nasm

Create this sym link:
Code:
sudo ln -s /usr/lib/mysql/libmysqlclient.so.15.0.0 /usr/lib/libmysqlclient.so

I also had to edit the following file from the latest svn (latest as of 40 minutes ago)
XBMC/xbmc/utils/CharsetConverter.h
from
Code:
#else
#include <iconv.h>
#include <fribidi/fribidi.h>
#include <fribidi/fribidi_char_sets.h>
#endif
to
Code:
#else
#include <iconv.h>
#include <lib/libfribidi/fribidi.h>
#include <lib/libfribidi/fribidi_char_sets.h>
#endif

So far, so good after all that. Hope that helps other Fedora users.
Reply
#2
libfribidi leaves something to be desired. Had to edit the following to keep the compile going:

XBMC/xbmc/utils/ArabicShaping.h

Same as above.
Reply
#3
You should really edit the makefile for that directory with -Ifribidi and -Ilib/libfribidi on the INCLUDES line rather than changing the pathes in the source. NOTE: [dash][capital i]
Reply
#4
althekiller Wrote:You should really edit the makefile for that directory with -Ifribidi and -Ilib/libfribidi on the INCLUDES line rather than changing the pathes in the source. NOTE: [dash][capital i]

Didn't know that, thanks.
Reply
#5
Hello, I haven't read any C program for the past decade so I'm kind of "messing around" with this one. I'm actually trying to compile XMBC on Fedora 9 and I'm struggling with the same problems.

My experience on C is so old that we can say it's null but anyway, I don't give up. I did what you wrote down here and I managed to ./configure

Of course I faced the same issue described above with XBMC/xbmc/utils/CharsetConverter.h and the other one. I read the message from AlTheKiller but I don't know how to sort this out so I changed the two .h files with vi. I knopw this is not correct but well... I told you I was not good at C.
So here I am, I modified the two .h files and did make.

Here comes a new issue with xbmc/utils/RegExp.h "pcre.h: No such file or directory" at the very beginning of the make process. So i vi-ed /xbmc/utils/CharsetConverter.h:

from
namespace PCRE {
#ifdef _WIN32
#define PCRE_STATIC
#include "lib/libpcre/pcre.h"
#elif defined (__APPLE__)
#include "lib/libpcre/pcre.h"
#else
#include <pcre.h>
#endif

to
namespace PCRE {
#ifdef _WIN32
#define PCRE_STATIC
#include "lib/libpcre/pcre.h"
#elif defined (__APPLE__)
#include "lib/libpcre/pcre.h"
#else
/*#include <pcre.h>*/
#include "lib/libpcre/pcre.h"
#endif

And I got further, it's still on the make process, but I just wanted to show you the progress with Fedora as I can't find anyone compiling this on Fedora. I'm glad I found that post :-)

Just in case, I did a checkout 1 hour ago and it was the first one I did.
The purpose of my post is not to fix the issues as I'm not capable of doing this, it's more like I want to point out the issues I have on Fedora. I understand you cannot check the compile process on Ubuntu, Suse, Debian, Fedora... so it might be good to have people telling the community how it is on several distros.

PS: While I was writing this, the make process eventualy finished in error:
/usr/bin/ccache g++ -MD -c -g -D_DEBUG -Wall -DDBUS_API_SUBJECT_TO_CHANGE -I/usr/include/dbus-1.0 -I/usr/lib/dbus-1.0/include -I/usr/include/hal -I/usr/include/lzo -D_LINUX -D_FILE_DEFINED -D_REENTRANT -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -DHAS_SDL_JOYSTICK -DHAS_XRANDR -D'SVN_REV="14729"' -DINSTALL_PATH="\"/usr/local/share/xbmc\"" -I. -I.. -I../linux -I../../guilib RegExp.cpp -o RegExp.o
RegExp.cpp:30:18: error: pcre.h: No such file or directory
make[1]: *** [RegExp.o] Error 1
make[1]: Leaving directory `/home/Ludo/XBMC/xbmc/utils'
make: *** [utils] Error 2


It took about 6 minutes to accomplish this on my E8300, I'm running Fedora 9, 2.6.25.11-97.fc9.i686
I'll put back the source files to what it was, go to sleep and then we'll see.
I hope my 2 cents were useful in any way, but I have a doubt.

Cheers
Reply
#6
So I did a new ./configure and then make -j2 that finally worked.
However while running make install as root, I still had the same error with pcre.h so I vi-ed xbmc/utils/RegExp.cpp and did the same change I mentioned above. And then I make install as root user.

And 5 minutes later...
(/usr/share/texmf/tex/latex/base/ts1enc.dfu))) (./doxygen.sty
(/usr/share/texmf/tex/latex/tools/calc.sty)
(/usr/share/texmf/tex/latex/tools/array.sty))
(/usr/share/texmf/tex/latex/base/fontenc.sty
(/usr/share/texmf/tex/latex/base/t1enc.def))
Writing index file refman.idx
No file refman.aux.
(/usr/share/texmf/tex/latex/base/ts1cmr.fd) [1] [2]
No file refman.toc.
[1] [2]
Chapter 1.
(./index.tex

LaTeX Warning: Reference `dvdcss_8h' on page 1 undefined on input line 5.

(/usr/share/texmf/tex/latex/base/t1cmtt.fd) [1]) [2]
Chapter 2.
(./files.tex

LaTeX Warning: Reference `dvdcss_8h' on page 3 undefined on input line 3.

) [3] [4]
Chapter 3.
(./dvdcss_8h.tex [5]

! Package inputenc Error: Unicode char \u8:�ph not set up for use with LaTeX.

See the inputenc package documentation for explanation.
Type H <return> for immediate help.
...

l.49 \item[Author:]St�ph
ane Borel $<${\tt [email protected]}$>$

Now I'm going to sleep, as it is 1 o'clock in the morning here.

Bye
Reply
#7
Just in case you haven't figured this out, I thought I would help:

Edit: XBMC/xbmc/cores/dvdplayer/Codecs/libDVDCSS/doc/latex/dvdcss_8h.tex

Line 49

There is a faulty character in there, remove the 'e' (with the forward tick over it) and replace with a normal 'e'

libdvdcss compiles just fine after that.

Hope that helps someone!
Reply
#8
This is how you can compile xbmc on fedora 9:

I have checked out svn code, and created link
su
ln -s /usr/lib/mysql/libmysqlclient.so.15.0.0 /usr/lib/libmysqlclient.so
exit

edited these two files as instucted:
xbmc/utils/CharsetConverter.h
xbmc/utils/ArabicShaping.h

and

then you need to copy jpegint.h file

su
cp xbmc/lib/cximage-6.0/jpeg/jpegint.h /usr/include/
exit

and now you can finally do

./configure
make
su
make install
Reply

Logout Mark Read Team Forum Stats Members Help
Compiling on Fedora 90