View Full Version : Compiling on Fedora 9
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.
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:
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
#else
#include <iconv.h>
#include <fribidi/fribidi.h>
#include <fribidi/fribidi_char_sets.h>
#endif
to
#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.
libfribidi leaves something to be desired. Had to edit the following to keep the compile going:
XBMC/xbmc/utils/ArabicShaping.h
Same as above.
althekiller
2008-08-06, 19:10
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]
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.
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
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 stef@via.ecp.fr}$>$
Now I'm going to sleep, as it is 1 o'clock in the morning here.
Bye
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!
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