View Full Version : Installation Error
baDibere
2008-11-22, 23:25
After make command I have an error :
ArabicShaping.cpp: In function 'fribidi_boolean CharacterMapContains(FriBidiChar)':
ArabicShaping.cpp:151: error: 'FRIBIDI_TRUE' was not declared in this scope
ArabicShaping.cpp:154: error: 'FRIBIDI_FALSE' was not declared in this scope
ArabicShaping.cpp: In function 'fribidi_boolean IsTransparent(FriBidiChar)':
ArabicShaping.cpp:189: error: 'FRIBIDI_TRUE' was not declared in this scope
ArabicShaping.cpp:191: error: 'FRIBIDI_FALSE' was not declared in this scope
*** 4 errors, 0 warnings
make[1]: *** [ArabicShaping.o] Error 1
make[1]: Leaving directory `/home/guDa/Desktop/XBMC-8.10.src/XBMC/xbmc/utils'
make: *** [utils] Error 2
What's the problem and solution?
I'm using GCC 4.3.2
althekiller
2008-11-23, 04:11
Presumably you're missing the headers for fribidi. Install them. Your bare minimum info, results in a bare minimum diagnosis.
baDibere
2008-11-23, 04:22
Fribidi is installed. But I'll look for build files of it to check.
Here is the make output.. I'm lazy to type "make clean". :D If it is necessary to type "make clean", I'll do it.
guDa@baDibere XBMC $ LC_ALL="C" make
make -C guilib
make[1]: Entering directory `/home/guDa/Desktop/XBMC-8.10.src/XBMC/guilib'
make[1]: Nothing to be done for `lib'.
make[1]: Leaving directory `/home/guDa/Desktop/XBMC-8.10.src/XBMC/guilib'
make -C xbmc
make[1]: Entering directory `/home/guDa/Desktop/XBMC-8.10.src/XBMC/xbmc'
make[1]: Nothing to be done for `lib'.
make[1]: Leaving directory `/home/guDa/Desktop/XBMC-8.10.src/XBMC/xbmc'
make -C xbmc/FileSystem
make[1]: Entering directory `/home/guDa/Desktop/XBMC-8.10.src/XBMC/xbmc/FileSystem'
make[1]: Nothing to be done for `lib'.
make[1]: Leaving directory `/home/guDa/Desktop/XBMC-8.10.src/XBMC/xbmc/FileSystem'
make -C xbmc/FileSystem/MusicDatabaseDirectory
make[1]: Entering directory `/home/guDa/Desktop/XBMC-8.10.src/XBMC/xbmc/FileSystem/MusicDatabaseDirectory'
make[1]: Nothing to be done for `lib'.
make[1]: Leaving directory `/home/guDa/Desktop/XBMC-8.10.src/XBMC/xbmc/FileSystem/MusicDatabaseDirectory'
make -C xbmc/FileSystem/VideoDatabaseDirectory
make[1]: Entering directory `/home/guDa/Desktop/XBMC-8.10.src/XBMC/xbmc/FileSystem/VideoDatabaseDirectory'
make[1]: Nothing to be done for `lib'.
make[1]: Leaving directory `/home/guDa/Desktop/XBMC-8.10.src/XBMC/xbmc/FileSystem/VideoDatabaseDirectory'
make -C xbmc/cores
make[1]: Entering directory `/home/guDa/Desktop/XBMC-8.10.src/XBMC/xbmc/cores'
make[1]: Nothing to be done for `lib'.
make[1]: Leaving directory `/home/guDa/Desktop/XBMC-8.10.src/XBMC/xbmc/cores'
make -C xbmc/cdrip
make[1]: Entering directory `/home/guDa/Desktop/XBMC-8.10.src/XBMC/xbmc/cdrip'
make[1]: Nothing to be done for `lib'.
make[1]: Leaving directory `/home/guDa/Desktop/XBMC-8.10.src/XBMC/xbmc/cdrip'
make -C xbmc/cores/paplayer
make[1]: Entering directory `/home/guDa/Desktop/XBMC-8.10.src/XBMC/xbmc/cores/paplayer'
make[1]: Nothing to be done for `lib'.
make[1]: Leaving directory `/home/guDa/Desktop/XBMC-8.10.src/XBMC/xbmc/cores/paplayer'
make -C xbmc/cores/DllLoader/exports
make[1]: Entering directory `/home/guDa/Desktop/XBMC-8.10.src/XBMC/xbmc/cores/DllLoader/exports'
make[1]: Nothing to be done for `lib'.
make[1]: Leaving directory `/home/guDa/Desktop/XBMC-8.10.src/XBMC/xbmc/cores/DllLoader/exports'
make -C xbmc/cores/DllLoader/exports/util
make[1]: Entering directory `/home/guDa/Desktop/XBMC-8.10.src/XBMC/xbmc/cores/DllLoader/exports/util'
make[1]: Nothing to be done for `lib'.
make[1]: Leaving directory `/home/guDa/Desktop/XBMC-8.10.src/XBMC/xbmc/cores/DllLoader/exports/util'
make -C xbmc/cores/DllLoader
make[1]: Entering directory `/home/guDa/Desktop/XBMC-8.10.src/XBMC/xbmc/cores/DllLoader'
make[1]: Nothing to be done for `lib'.
make[1]: Leaving directory `/home/guDa/Desktop/XBMC-8.10.src/XBMC/xbmc/cores/DllLoader'
make -C xbmc/xbox
make[1]: Entering directory `/home/guDa/Desktop/XBMC-8.10.src/XBMC/xbmc/xbox'
make[1]: Nothing to be done for `lib'.
make[1]: Leaving directory `/home/guDa/Desktop/XBMC-8.10.src/XBMC/xbmc/xbox'
make -C xbmc/linux
make[1]: Entering directory `/home/guDa/Desktop/XBMC-8.10.src/XBMC/xbmc/linux'
make[1]: Nothing to be done for `lib'.
make[1]: Leaving directory `/home/guDa/Desktop/XBMC-8.10.src/XBMC/xbmc/linux'
make -C xbmc/utils
make[1]: Entering directory `/home/guDa/Desktop/XBMC-8.10.src/XBMC/xbmc/utils'
/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 -DHAS_PCRE -D'SVN_REV="exported"' -DINSTALL_PATH="\"/usr/share/xbmc\"" -DDLL_PATH_LIBCURL="\"/usr/lib/libcurl.so.4\"" -I. -I.. -I../linux -I../../guilib ArabicShaping.cpp -o ArabicShaping.o
ArabicShaping.cpp: In function 'fribidi_boolean CharacterMapContains(FriBidiChar)':
ArabicShaping.cpp:151: error: 'FRIBIDI_TRUE' was not declared in this scope
ArabicShaping.cpp:154: error: 'FRIBIDI_FALSE' was not declared in this scope
ArabicShaping.cpp: In function 'fribidi_boolean IsTransparent(FriBidiChar)':
ArabicShaping.cpp:189: error: 'FRIBIDI_TRUE' was not declared in this scope
ArabicShaping.cpp:191: error: 'FRIBIDI_FALSE' was not declared in this scope
*** 4 errors, 0 warnings
make[1]: *** [ArabicShaping.o] Error 1
make[1]: Leaving directory `/home/guDa/Desktop/XBMC-8.10.src/XBMC/xbmc/utils'
make: *** [utils] Error 2
althekiller
2008-11-23, 06:36
Whatever distro you're using must put the headers somewhere other than where we're looking. Symlink them to one of the paths preceded by -I (capital i) in the last g++ command.
baDibere
2008-11-23, 15:29
Fribidi headers are located in /usr/include
I've installed Fribidi from Pisi Package and then from source and I've got same error.
Might help if you would reveal the secret of the Distro you're using? 32bit? 64bit?
baDibere
2008-11-23, 17:25
Might help if you would reveal the secret of the Distro you're using? 32bit? 64bit?
:D
Sorry,
My distro is Pardus 2008.1, using GCC 4.3.2, KDE 3.5.10, Fribidi 0.19.1, make 3.81
larstobi
2009-03-25, 12:45
Whatever distro you're using must put the headers somewhere other than where we're looking.
I don't think so.
fribidi-0.19.1 doesn't define FRIBIDI_(TRUE|FALSE). I can make it work with this patch:
--- xbmc/utils/ArabicShaping.h.orig 2009-03-24 20:01:30.965343857 +0100
+++ xbmc/utils/ArabicShaping.h 2009-03-24 20:01:45.367968410 +0100
@@ -30,7 +30,9 @@
#include "lib/libfribidi/fribidi.h"
#else
#include <fribidi/fribidi.h>
-#include <fribidi/fribidi_char_sets.h>
+#include <fribidi/fribidi-char-sets.h>
+#define FRIBIDI_TRUE 1
+#define FRIBIDI_FALSE 0
#endif
/**