Tiny Core Linux
Tiny Core Extensions => TCE Q&A Forum => Topic started by: cURIOUSgEORGE on September 13, 2012, 02:25:14 AM
-
I downloaded xbmc and it shows up in my menu, but, when I click on it nothing happens, and if I type xbmc in the terminal nothing happens at all, what so ever, in any which way, shape, or form.
I am running the latest and greatest Tinycore with Xorg.
Everything else works like a lucky charm, just not xbmc.
Any help would be greatly appreciated.
Thanks, George.
-
I am running the latest and greatest Tinycore with Xorg.
Please specify exact TC version instead of saying latest :(
-
Gotcha. For future references.
I am running version 4.6 and I just realized that I am wrong, because, 4.6.1 is the latest and greatest at the current moment.
I am running Tinycore version 4.6
Thanks, George.
-
check for missing dependencies by running xbmc in a terminal
-
I tried that, and when I did, nothing happened at all, BUT, when I exit to prompt and type xbmc, it says....... . .
"XBMC needs hardware accelerated OpenGL rendering.
Install an appropriate graphics driver."
So I downloaded xf86-video-all.tcz to ensure that I have the correct driver, but what OpenGL extension do I need?
-
I don't think output of trying to run XBMC outside of X would be of much relevance...
You could try:
ldd `which appname` |grep not
-
Okay, I just tried that, and it says no such file or directory.
-
you need hardware accelerated graphics drivers and direct rendering enabled
check for
lspci | grep VGA
and
glxinfo | grep rendering
-
lspci | grep VGA
I get........ "00:02.0 VGA compatable controller: Intel Corporation N10 Family Integrated Graphics Controller (rev 02)"
glxinfo | grep rendering
I get........... "direct rendering: Yes"
-
Hi cURIOUSgEORGE
Do you have xbmc installed ondemand by any chance?
-
load bash and try again please
-
@Rich, I have XBMC in onboot, and I double checked just for my own sanity.
@Arslan I just downloaded Bash.tcz and have that in onboot aswell. I'm not sure what it does, but I am guessing that it is automatically loaded after I downloaded under onboot? IDK.
It is as if XBMC does not even exist on my machine, but, it does.
-
Hi cURIOUSgEORGE
If you run:
hash -r
xbmc
Does it start then?
-
No. I'm sorry to say, but no. Still nothing.
It is what it is, I guess. No biggie. Just sucks, eh...
I appreciate all the help though, and for trying, but, I don't see this going anywhere.
I wonder if anybody else has it working.
Thanks again, George...... and I'm out.
-
xbmc is working on my system
here is what we can do to debug with xbmc messages
change log level to 3
cat > ~/.xbmc/userdata/advancedsettings.xml << EOF
<advancedsettings>
<loglevel>3</loglevel>
</advancedsettings>
EOF
start xbmc and post xbmc.log
it is under ~/.xbmc/temp/
-
Hi cURIOUSgEORGE
If you open a terminal and type the full path:
usr/local/bin/xbmc
does it start then?
-
@ Arslan S. ............. I have ~/.xbmc/temp/ but there is no log in there, the folder is empty. Must I be logged in as root in order too see it? I will try that and post back IF it is there within minutes.
EDIT: @Arslan S. ... I am posting back to avoid confusing, and to confirm once again that there is no log file. There is however, another empty "temp" folder inside "the" temp folder. Like this -> /home/tc/.xbmc/temp/temp and I just thought that was unnecessarily strange. Perhaps there was a problem when I downloaded it? Idk.
@Rich ................ I tried it, but, no, still nothing.
-
Hi cURIOUSgEORGE
If you enter:
ls -l usr/local/bin/xbmc
what response do you get?
-
Hi, Rich
I get "ls: usr/local/bin/xbmc: No such file or drirectory"
But it is there, I seen it with my own eyes, just a minute ago. I'm thinking about uninstalling xbmc and reinstalling, whaddaya think?
-
Hi cURIOUSgEORGE
My mistake, that should have been:
ls -l /usr/local/bin/xbmc
Also, what does:
echo $PATH
give as a response?
-
tc@box:~$ ls -l /usr/local/bin/xbmc
lrwxrwxrwx 1 root root 35 Sep 14 11:21 /usr/local/bin/xbmc -> /tmp/tcloop/xbmc/usr/local/bin/xbmc
tc@box:~$ echo $PATH
/home/tc/.local/bin:/usr/local/sbin:/usr/local/bin:/apps/bin:/usr/sbin:/usr/bin:/sbin:/bin:/etc/sysconfig/tcedir/ondemand
Does that mean it's in ondemand? Or it thinks it is? wtf... hmmmm because it's in onboot. Well, it's showing under onboot in the appbrowser.
-
@Arslan S. ........... I just found the crash logs, for some reason they were located under /home/tc, sitting scattered at the bottom, they were not in the xbmc folder, idk why. Anyhow, here is the latest................
############## XBMC CRASH LOG ###############
################ SYSTEM INFO ################
Date: Thu Sep 13 06:22:02 UTC 2012
XBMC Options:
Arch: i686
Kernel: Linux 3.0.21-tinycore #3021 SMP Sat Feb 18 11:54:11 EET 2012
Release:
Tiny Core Linux 4.6
############## END SYSTEM INFO ##############
############### STACK TRACE #################
gdb not installed, can't get stack trace.
############# END STACK TRACE ###############
################# LOG FILE ##################
Logfile not found in the usual place.
Please attach it seperately.
Use pastebin.com or similar for forums or IRC.
############### END LOG FILE ################
############ END XBMC CRASH LOG #############
-
Hi cURIOUSgEORGE
Your path and the link to the executable seem to be OK.
Does that mean it's in ondemand?
No, that's in the path to check ondemand if something can't be found in paths to the left of it.
The SYSTEM INFO is dated yesterday. Could it be leftover from when you exited to a prompt and tried to run it?
-
I noticed that too (the SYSTEM INFO).... So, I repeatedly just checked back too see if anymore logs have been created after attempting to start XBMC, but they haven't. Idk, what else to do, but I did a simple Google search using (xbmc won't start) and I see many people having or have had the same issue - under all different types of circumstances though. Idk, it's mind boggling.
-
Hi cURIOUSgEORGE
It's odd that you simply get no response, like your command is going to the bit bucket. Running out of ideas, but:
/tmp/tcloop/xbmc/usr/local/bin/xbmc
ldd /tmp/tcloop/xbmc/usr/local/bin/xbmc
Maybe one of those will elicit a response?
-
/tmp/tcloop/xbmc/usr/local/bin/xbmc <--- does nothing.
tc@box:~$ ldd /tmp/tcloop/xbmc/usr/local/xbmc
/tmp/tcloop/xbmc/usr/local/xbmc: error while loading shared libraries: /tmp/tcloop/xbmc/usr/local/xbmc: cannot open shared object file: No such file or directory
EDIT: I just checked that path, and it only goes as far as -> /tmp/tcloop/xbmc/usr/local WITHOUT ended as it should, with "xbmc."
I am going too just uninstall and try to reinstall, if that doesn't work then I'll just have too use xbmcbuntu.
I'll let ya know how it goes, thanks again Rich.
-
Hi cURIOUSgEORGE
That error message suggests that it does not exist. If you enter:
ls -l /tmp/tcloop/xbmc/usr/local/bin/xbmc
ls -l /tmp/tcloop/xbmc/usr/local/bin/
are the file or directory found?
-
I just uninstalled and reinstalled, same problem.........
tc@box:~$ ls -l /tmp/tcloop/xbmc/usr/local/bin/xbmc
-rwxr-xr-x 1 root root 4420 Jun 8 10:21 /tmp/tcloop/xbmc/usr/local/bin/xbmc
tc@box:~$ ls -l /tmp/tcloop/xbmc/usr/local/bin/
total 7
-rwxr-xr-x 1 root root 43 Jun 8 10:21 lsb_release
-rwxr-xr-x 1 root root 4420 Jun 8 10:21 xbmc
-rwxr-xr-x 1 root root 1810 Jun 8 10:21 xbmc-standalone
-
Hi cURIOUSgEORGE
Sorry, at this point I'm at a loss. Maybe someone else has some ideas.
-
That's completely understandable Rich, I expected you to give up by now anyhow, but, you didn't, you kept on trying too help, and help and help, and for that, I am grateful...
I'll just have to use xbmcbuntu, it is what it is... it's just for a notebook, all of my other computers will always use Tinycore, because, it's the greatest. Long live the core.
Take care, I'm outta here.
Thanks again, George.
-
Hi cURIOUSgEORGE
I expected you to give up by now anyhow, but, you didn't, you kept on trying too help, and help and help,
Yeah, I can be pretty stubborn at times.
-
I can also get XBMC compiled but not execute.
when I call xbmc, I can see that it runs the bash script in /usr/local/bin/xbmc all the way to the line where it runs /usr/local/lib/xbmc/xbmc.bin here
LOOP=1
while [ $(( $LOOP )) = "1" ]
do
echo $LOOP $SAVED_ARGS
LOOP=0
echo run
"$LIBDIR/xbmc/xbmc.bin" $SAVED_ARGS
RET=$?
echo $LOOP $SAVED_ARGS RET=$RET
if [ $(( $RET == 65 )) = "1" ]
then # User requested to restart app
LOOP=1
elif [ $(( ($RET >= 131 && $RET <= 136) || $RET == 139 )) = "1" ]
then # Crashed with core dump
print_crash_report
fi
which outputs:
1
run
But since xbmc.bin doesn't crash it just hangs there, I can't even find the log file in /home/tc
I can spend some time to dig into the XBMC source, but I wonder if there's a way to do this without putting fprintf in the code and recompiling (since xbmc has a lot of dependencies, compiling it is a pain) to find the cupid?
xbmc.cpp
int main(int argc, char* argv[])
{
int status = -1;
//this can't be set from CAdvancedSettings::Initialize() because it will overwrite
//the loglevel set with the --debug flag
#ifdef _DEBUG
g_advancedSettings.m_logLevel = LOG_LEVEL_DEBUG;
g_advancedSettings.m_logLevelHint = LOG_LEVEL_DEBUG;
#else
g_advancedSettings.m_logLevel = LOG_LEVEL_NORMAL;
g_advancedSettings.m_logLevelHint = LOG_LEVEL_NORMAL;
#endif
CLog::SetLogLevel(g_advancedSettings.m_logLevel);
#ifdef _LINUX
#if defined(DEBUG)
struct rlimit rlim;
rlim.rlim_cur = rlim.rlim_max = RLIM_INFINITY;
if (setrlimit(RLIMIT_CORE, &rlim) == -1)
CLog::Log(LOGDEBUG, "Failed to set core size limit (%s)", strerror(errno));
#endif
// Prevent child processes from becoming zombies on exit if not waited upon. See also Util::Command
struct sigaction sa;
memset(&sa, 0, sizeof(sa));
sa.sa_flags = SA_NOCLDWAIT;
sa.sa_handler = SIG_IGN;
sigaction(SIGCHLD, &sa, NULL);
#endif
setlocale(LC_NUMERIC, "C");
g_advancedSettings.Initialize();
#ifndef _WIN32
CAppParamParser appParamParser;
appParamParser.Parse((const char **)argv, argc);
#endif
g_application.Preflight();
if (!g_application.Create())
{
fprintf(stderr, "ERROR: Unable to create application. Exiting\n");
return status;
}
try
{
status = g_application.Run();
}
catch(...)
{
fprintf(stderr, "ERROR: Exception caught on main loop. Exiting\n");
status = -1;
}
return status;
}
-
Usually you'd use strace to see how far it gets.
-
Hi whoisterence
I don't know if it's relevant, but:
echo $LOOP $SAVED_ARGS
which outputs:
1
run
"$LIBDIR/xbmc/xbmc.bin" $SAVED_ARGS
You are passing an empty string to xmbc.bin.
-
Did the strace, attached.
Looks like xbmc scaned for hard drives and for some reason scan for an empty filename, and then it loops forever.
stat64("/dev/sr14", 0xbfc3ced4) = -1 ENOENT (No such file or directory)
stat64("/dev/sr15", 0xbfc3ced4) = -1 ENOENT (No such file or directory)
stat64("/dev/sr16", 0xbfc3ced4) = -1 ENOENT (No such file or directory)
stat64("/dev/sr17", 0xbfc3ced4) = -1 ENOENT (No such file or directory)
stat64("/dev/sr18", 0xbfc3ced4) = -1 ENOENT (No such file or directory)
stat64("/dev/sr19", 0xbfc3ced4) = -1 ENOENT (No such file or directory)
stat64("/dev/sr20", 0xbfc3ced4) = -1 ENOENT (No such file or directory)
stat64("/dev/sr21", 0xbfc3ced4) = -1 ENOENT (No such file or directory)
stat64("/dev/sr22", 0xbfc3ced4) = -1 ENOENT (No such file or directory)
stat64("/dev/sr23", 0xbfc3ced4) = -1 ENOENT (No such file or directory)
stat64("/dev/sr24", 0xbfc3ced4) = -1 ENOENT (No such file or directory)
stat64("/dev/sr25", 0xbfc3ced4) = -1 ENOENT (No such file or directory)
stat64("/dev/sr26", 0xbfc3ced4) = -1 ENOENT (No such file or directory)
stat64("/dev/sr27", 0xbfc3ced4) = -1 ENOENT (No such file or directory)
stat64(" \t\n\r", 0xbfc3ced4) = -1 ENOENT (No such file or directory)
stat64(" \t\n\r", 0xbfc3ced4) = -1 ENOENT (No such file or directory)
stat64(" \t\n\r", 0xbfc3ced4) = -1 ENOENT (No such file or directory)
stat64(" \t\n\r", 0xbfc3ced4) = -1 ENOENT (No such file or directory)
stat64(" \t\n\r", 0xbfc3ced4) = -1 ENOENT (No such file or directory)
stat64(" \t\n\r", 0xbfc3ced4) = -1 ENOENT (No such file or directory)
stat64(" \t\n\r", 0xbfc3ced4) = -1 ENOENT (No such file or directory)
stat64(" \t\n\r", 0xbfc3ced4) = -1 ENOENT (No such file or directory)
stat64(" \t\n\r", 0xbfc3ced4) = -1 ENOENT (No such file or directory)
stat64(" \t\n\r", 0xbfc3ced4) = -1 ENOENT (No such file or directory)
stat64(" \t\n\r", 0xbfc3ced4) = -1 ENOENT (No such file or directory)
stat64(" \t\n\r", 0xbfc3ced4) = -1 ENOENT (No such file or directory)
Attached ls /dev
Maybe this has something to do with all the loopbacks in /dev?
-
xbmc is available in the repository
if you want to compile it see tc-ext-tools
-
I tried to run it from xbmc.tcz before and it hanged just like the problems mentioned in this thread, which I believe is the same issue here.
I am looking at xbmc source now. Found for some reason I needed to copy these two files
/usr/local/share/xbmc/userdata/RssFeeds.xml > ~/.xbmc/userdata
/usr/local/share/xbmc/userdata/LCD.xml > ~/.xbmc/userdata
After copying I got further and now have a xbmc.log file, I am guessing that I got to the point where the log file can be flushed.
I believe the problem is xbmc not resolving some internal file paths properly due to /usr/share/xbmc is located in /usr/local/share.
But now it's looking for a guisettings.xml file that's probably dynamically generated....
-
I don't have any problems loading XBMC, but I do have issues running it in Xorg. too much lag to be useable, mouse curser moves incredibly slowly and inputs from the keyboard also responds slowly if not frozen up.
just an FYI
-
Seems XBMC has pretty bad code, using a lot of cpu to poll all devices:
https://lwn.net/Articles/532329/
-
It's a shame because it runs flawless in Windows and Mac's
-
Have you checked the cpu usage on those Windows and Macs? ;)
-
If you load graphics drivers fps should be fine
-
H'mmm will investigate.. but iirc have tried already using the nvidia drivers with an nvidia graphics card, I probably didn't configure Xorg anyhow.
The Windows machine has two monitors, one a systems monitor and the other "the Big screen' am not sure that cpu usage increased with XBMC, can't be sure about the Mac though. but will revisit both and report back