2008-01-09, 10:23
I'm trying to get XBMC to work on my Gentoo distribution.
The first problem I encountered was related to libmms (mms_seek compile error). It was because of gentoo's libmms version (0.3) doesn't support mms_seek, so I was lucky to find the solution, which came thru updating to version 0.4 (http://forum.xbmc.org/showthread.php?p=162159 and http://bugs.gentoo.org/show_bug.cgi?id=203647).
After that I found another problem in NetworkLinux.cpp: IWEVGENIE, IWEVCUSTOM and IW_EV_POINT_OFF not declared in this scope. I found it has something to do with Wifi and since I don't use Wifi in this box I commented out those lines just to try if it worked.
So this way I was able to compile and produce the XboxMediaCenter executable.
But now I'm clueless on how to get xbmc-xrandr.c to compile. The compilation produced this output:
gcc -g -o xbmc-xrandr xbmc-xrandr.c -lXrandr -lXrender -lX11
xbmc-xrandr.c:79: error: 'RR_HSyncPositive' no se declaró aquí (no en una función)
xbmc-xrandr.c:80: error: 'RR_HSyncNegative' no se declaró aquí (no en una función)
xbmc-xrandr.c:81: error: 'RR_VSyncPositive' no se declaró aquí (no en una función)
xbmc-xrandr.c:82: error: 'RR_VSyncNegative' no se declaró aquí (no en una función)
xbmc-xrandr.c:83: error: 'RR_Interlace' no se declaró aquí (no en una función)
xbmc-xrandr.c:84: error: 'RR_DoubleScan' no se declaró aquí (no en una función)
xbmc-xrandr.c:85: error: 'RR_CSync' no se declaró aquí (no en una función)
xbmc-xrandr.c:86: error: 'RR_CSyncPositive' no se declaró aquí (no en una función)
xbmc-xrandr.c:87: error: 'RR_CSyncNegative' no se declaró aquí (no en una función)
xbmc-xrandr.c:1467: error: expected ')' before '*' token
xbmc-xrandr.c:1480: error: expected ')' before '*' token
xbmc-xrandr.c: En la función 'pick_crtcs':
xbmc-xrandr.c:1549: error: 'output_t' no se declaró aquí (primer uso en esta función)
xbmc-xrandr.c:1549: error: (Cada identificador no declarado solamente se reporta una vez
xbmc-xrandr.c:1549: error: ara cada funcion en la que aparece.)
xbmc-xrandr.c:1549: error: 'output' no se declaró aquí (primer uso en esta función)
xbmc-xrandr.c:1549: error: operadores inválidos para el binario *
xbmc-xrandr.c:1554: error: 'outputs' no se declaró aquí (primer uso en esta función)
xbmc-xrandr.c:1554: error: 'const struct <anonymous>' no tiene un miembro llamado 'next'
xbmc-xrandr.c:1556: error: 'const struct <anonymous>' no tiene un miembro llamado 'changes'
xbmc-xrandr.c:1556: error: 'const struct <anonymous>' no tiene un miembro llamado 'mode_info'
xbmc-xrandr.c:1556: error: 'const struct <anonymous>' no tiene un miembro llamado 'crtc_info'
xbmc-xrandr.c:1558: error: 'const struct <anonymous>' no tiene un miembro llamado 'crtc_info'
xbmc-xrandr.c:1559: error: 'const struct <anonymous>' no tiene un miembro llamado 'crtc_info'
xbmc-xrandr.c:1572: error: 'const struct <anonymous>' no tiene un miembro llamado 'next'
xbmc-xrandr.c:1573: error: 'const struct <anonymous>' no tiene un miembro llamado 'current_crtc_info'
xbmc-xrandr.c:1573: error: 'const struct <anonymous>' no tiene un miembro llamado 'crtc_info'
xbmc-xrandr.c:1575: error: 'const struct <anonymous>' no tiene un miembro llamado 'next'
xbmc-xrandr.c:1577: error: 'const struct <anonymous>' no tiene un miembro llamado 'mode_info'
xbmc-xrandr.c:1577: error: 'const struct <anonymous>' no tiene un miembro llamado 'crtc_info'
xbmc-xrandr.c:1578: error: 'const struct <anonymous>' no tiene un miembro llamado 'output'
xbmc-xrandr.c:1578: error: petición del miembro 'string' en algo que no es una estructura o unión
xbmc-xrandr.c:1579: error: 'const struct <anonymous>' no tiene un miembro llamado 'changes'
xbmc-xrandr.c:1579: error: 'const struct <anonymous>' no tiene un miembro llamado 'crtc_info'
xbmc-xrandr.c:1579: error: 'const struct <anonymous>' no tiene un miembro llamado 'current_crtc_info'
xbmc-xrandr.c:1580: error: 'const struct <anonymous>' no tiene un miembro llamado 'changes'
xbmc-xrandr.c:1580: error: 'changes_crtc' no se declaró aquí (primer uso en esta función)
xbmc-xrandr.c: En la función 'main':
xbmc-xrandr.c:1640: error: 'dryrun' no se declaró aquí (primer uso en esta función)
xbmc-xrandr.c:1992: error: 'setit_1_2' no se declaró aquí (primer uso en esta función)
xbmc-xrandr.c:1993: error: 'query_1' no se declaró aquí (primer uso en esta función)
make[1]: *** [xbmc-xrandr] Error 1
make[1]: Leaving directory `/mnt/120gb/XBMC'
make: *** [all] Error 2
make: Leaving directory `/mnt/120gb/XBMC'
If i try to execute the XboxMediaCenter exucutable it complains about not being able to find xbmc-xrandr and the screen goes black.
Could anyone shed some light on this?
The first problem I encountered was related to libmms (mms_seek compile error). It was because of gentoo's libmms version (0.3) doesn't support mms_seek, so I was lucky to find the solution, which came thru updating to version 0.4 (http://forum.xbmc.org/showthread.php?p=162159 and http://bugs.gentoo.org/show_bug.cgi?id=203647).
After that I found another problem in NetworkLinux.cpp: IWEVGENIE, IWEVCUSTOM and IW_EV_POINT_OFF not declared in this scope. I found it has something to do with Wifi and since I don't use Wifi in this box I commented out those lines just to try if it worked.
So this way I was able to compile and produce the XboxMediaCenter executable.
But now I'm clueless on how to get xbmc-xrandr.c to compile. The compilation produced this output:
gcc -g -o xbmc-xrandr xbmc-xrandr.c -lXrandr -lXrender -lX11
xbmc-xrandr.c:79: error: 'RR_HSyncPositive' no se declaró aquí (no en una función)
xbmc-xrandr.c:80: error: 'RR_HSyncNegative' no se declaró aquí (no en una función)
xbmc-xrandr.c:81: error: 'RR_VSyncPositive' no se declaró aquí (no en una función)
xbmc-xrandr.c:82: error: 'RR_VSyncNegative' no se declaró aquí (no en una función)
xbmc-xrandr.c:83: error: 'RR_Interlace' no se declaró aquí (no en una función)
xbmc-xrandr.c:84: error: 'RR_DoubleScan' no se declaró aquí (no en una función)
xbmc-xrandr.c:85: error: 'RR_CSync' no se declaró aquí (no en una función)
xbmc-xrandr.c:86: error: 'RR_CSyncPositive' no se declaró aquí (no en una función)
xbmc-xrandr.c:87: error: 'RR_CSyncNegative' no se declaró aquí (no en una función)
xbmc-xrandr.c:1467: error: expected ')' before '*' token
xbmc-xrandr.c:1480: error: expected ')' before '*' token
xbmc-xrandr.c: En la función 'pick_crtcs':
xbmc-xrandr.c:1549: error: 'output_t' no se declaró aquí (primer uso en esta función)
xbmc-xrandr.c:1549: error: (Cada identificador no declarado solamente se reporta una vez
xbmc-xrandr.c:1549: error: ara cada funcion en la que aparece.)
xbmc-xrandr.c:1549: error: 'output' no se declaró aquí (primer uso en esta función)
xbmc-xrandr.c:1549: error: operadores inválidos para el binario *
xbmc-xrandr.c:1554: error: 'outputs' no se declaró aquí (primer uso en esta función)
xbmc-xrandr.c:1554: error: 'const struct <anonymous>' no tiene un miembro llamado 'next'
xbmc-xrandr.c:1556: error: 'const struct <anonymous>' no tiene un miembro llamado 'changes'
xbmc-xrandr.c:1556: error: 'const struct <anonymous>' no tiene un miembro llamado 'mode_info'
xbmc-xrandr.c:1556: error: 'const struct <anonymous>' no tiene un miembro llamado 'crtc_info'
xbmc-xrandr.c:1558: error: 'const struct <anonymous>' no tiene un miembro llamado 'crtc_info'
xbmc-xrandr.c:1559: error: 'const struct <anonymous>' no tiene un miembro llamado 'crtc_info'
xbmc-xrandr.c:1572: error: 'const struct <anonymous>' no tiene un miembro llamado 'next'
xbmc-xrandr.c:1573: error: 'const struct <anonymous>' no tiene un miembro llamado 'current_crtc_info'
xbmc-xrandr.c:1573: error: 'const struct <anonymous>' no tiene un miembro llamado 'crtc_info'
xbmc-xrandr.c:1575: error: 'const struct <anonymous>' no tiene un miembro llamado 'next'
xbmc-xrandr.c:1577: error: 'const struct <anonymous>' no tiene un miembro llamado 'mode_info'
xbmc-xrandr.c:1577: error: 'const struct <anonymous>' no tiene un miembro llamado 'crtc_info'
xbmc-xrandr.c:1578: error: 'const struct <anonymous>' no tiene un miembro llamado 'output'
xbmc-xrandr.c:1578: error: petición del miembro 'string' en algo que no es una estructura o unión
xbmc-xrandr.c:1579: error: 'const struct <anonymous>' no tiene un miembro llamado 'changes'
xbmc-xrandr.c:1579: error: 'const struct <anonymous>' no tiene un miembro llamado 'crtc_info'
xbmc-xrandr.c:1579: error: 'const struct <anonymous>' no tiene un miembro llamado 'current_crtc_info'
xbmc-xrandr.c:1580: error: 'const struct <anonymous>' no tiene un miembro llamado 'changes'
xbmc-xrandr.c:1580: error: 'changes_crtc' no se declaró aquí (primer uso en esta función)
xbmc-xrandr.c: En la función 'main':
xbmc-xrandr.c:1640: error: 'dryrun' no se declaró aquí (primer uso en esta función)
xbmc-xrandr.c:1992: error: 'setit_1_2' no se declaró aquí (primer uso en esta función)
xbmc-xrandr.c:1993: error: 'query_1' no se declaró aquí (primer uso en esta función)
make[1]: *** [xbmc-xrandr] Error 1
make[1]: Leaving directory `/mnt/120gb/XBMC'
make: *** [all] Error 2
make: Leaving directory `/mnt/120gb/XBMC'
If i try to execute the XboxMediaCenter exucutable it complains about not being able to find xbmc-xrandr and the screen goes black.
Could anyone shed some light on this?