• 1
  • 2
  • 3
  • 4(current)
  • 5
  • 6
  • 48
[LINUX] XBMC for Linux port to ARM architecture CPU and SoC chips?
#46
As the dev who brought XBMC for Mac in-line with the make files, I highly recommend concentrating on getting configure/make working. If you don't understand the build process, then you should start there. XBMC is highly dependent on configure/make and hacking things into place is only going to get frustrating.
Reply
#47
I fucked up somewhere somehow!
Basically, I installed a load of dependency packages that the linker was moaning about, then did a clean/distclean and a configure... now when i make, it fails immediately, erroring on a realloc!

I tried installing libc and gcc and other stuff, but nothing worked... so decided to start again...
Noticed a few things have changed in the latest svn, and again a few issues regarding --disable-gl
you guys really dont like me using SDL instead of GL do you! lol.

The reason for this post is... do I bother highlighting the aspects that dont work when using --disable-gl, or is it a lost cause for you lot and i shouldnt bother bugging you about it?
¤ [McGeagh] ¤
Reply
#48
all reports are appreciated
Reply
#49
McGeagh Wrote:I fucked up somewhere somehow!
Basically, I installed a load of dependency packages that the linker was moaning about, then did a clean/distclean and a configure... now when i make, it fails immediately, erroring on a realloc!

I tried installing libc and gcc and other stuff, but nothing worked... so decided to start again...
Noticed a few things have changed in the latest svn, and again a few issues regarding --disable-gl
you guys really dont like me using SDL instead of GL do you! lol.

The reason for this post is... do I bother highlighting the aspects that dont work when using --disable-gl, or is it a lost cause for you lot and i shouldnt bother bugging you about it?

If make barfs trying to realloc a huge chunk of memory, your make is too old. "make --version" and post the version.
Reply
#50
spiff Wrote:all reports are appreciated

Even more so in patch form. Smile
Reply
#51
davilla: make version is 3.81

althekiller: im unsure how to do patches, will look into it... thanks for the quick reply!

EDIT: I fixed the problem.... i ashamedly never looked at config.log... it told me i was missing 1 more dependency package... why oh why didnt i see that!
¤ [McGeagh] ¤
Reply
#52
make version 3.81 smells right Smile
Reply
#53
Python is annoying... like the snake it is, its wrangled itself in places not encapsulated by a #ifdef HAS_PYTHON...libGoAhead, DllLoader/exports/exports_python_linux, FileSystem/PluginDirectory, etc...

Question.... How do i tell xbmc to look for samba in the /usr/ folders, rather than in xbmc itself...? Whats the reason why samba, along with some other libs, in xbmc and not in the /usr folder? I tried getting libsmbclient for armel, and place it in the xbmc folder, but then it looks for dependencies, and placing it in either /usr or xbmc folder doesnt work... so want to make xbmc look in /usr for it...
Also slightly confused on some other libs that seem to build one on make, such as libGoAhead has made an arm version (apparently due to its name... -arm.a) and libsmb doesnt?

Sorry to be a pain... you lot have been a real help. Thanks!
¤ [McGeagh] ¤
Reply
#54
McGeagh Wrote:Python is annoying... like the snake it is, its wrangled itself in places not encapsulated by a #ifdef HAS_PYTHON...libGoAhead, DllLoader/exports/exports_python_linux, FileSystem/PluginDirectory, etc...

Question.... How do i tell xbmc to look for samba in the /usr/ folders, rather than in xbmc itself...? Whats the reason why samba, along with some other libs, in xbmc and not in the /usr folder? I tried getting libsmbclient for armel, and place it in the xbmc folder, but then it looks for dependencies, and placing it in either /usr or xbmc folder doesnt work... so want to make xbmc look in /usr for it...
Also slightly confused on some other libs that seem to build one on make, such as libGoAhead has made an arm version (apparently due to its name... -arm.a) and libsmb doesnt?

Sorry to be a pain... you lot have been a real help. Thanks!

first thing you need to understand is just because a certain lib is used internally in xbmc does not mean that you can replace it with a system lib. If the lib is wrapped, you must use the internal version or xbmc will not work correctly. You can tell if a lib is wrapped by looking at its makefile and if you see refs to "wrapper" in the linkage, its wrapped.

next, xbmc loads .so libs from its system directory. if you want to build against a real system lib, then you have to change the makefile and the xbmc source code to link and reference the real system lib. So how OSX does this for ffmpeg.

Bottom line, it's not as simple as just pointing xbmc to just real system libs. Much more complex than that.
Reply
#55
Ive been trying to get past the Python hurdle, without success... Any help you lot can give would be wonderful!

Ill go in-depth of what I did:
I have 2 choices, remove python, or include it (obviously)
I looked into removing it first, as i assumed it be easy... to do this i removed mention of python from configure and the main makefile (and its .in). I also #undef HAS_PYTHON in system.h... In theory this should stop xbmc using python, but doesnt. Quite a few files then complain back when i 'make' saying it doesnt understand XBPythonsomethingoranother...
Question: What is Python used for, because a lot of these files 'make' complains about are GUI related and some are to do with DLL loader etc... is python a must for xbmc to function? or am i right in assuming its just for scripts and not neccessarily needed to work.

I then decided to look down the route of adding python instead. Obviously reverted back to allowing python, but when make is called, it doesnt understand the XBPythonDllFuncs.S file... I dont know how to make it understand it (unsure if relevant, but arm thinks .s files are assembler files) so added a && !defined(__arm__) to the top along with the powerpc ones.
Now when you make, i get a lot of undefined references to python stuff that that .s file had. I see that those are also defined in XBPythonDll.cpp, but other files cant see it??. I then extern them in the corresponding .h file for other files to see, but still undefined references... I then see theres a bunch of #defines for the already existing data_objects externed in this header file, so i crudely do the same for every one....
Code:
#define [i][b]NAME[/b][/i] (*((PyObject*)pointer_[i][b]NAME[/b][/i]))
But then it errors on certain ones such as:
Code:
action.cpp: In function 'PyObject* PYXBMC::Action_GetAmount2(PYXBMC::Action*, PyObject*)':
action.cpp:159: error: 'pointer_Py_BuildValue' was not declared in this scope

Thanks in advance for the help guys
¤ [McGeagh] ¤
Reply
#56
it's not *supposed* to be a must, however all platforms have it so the define has probably rotted away. that should definitely be fixed.
Reply
#57
Ive gone through applying various defines such as HAS_PYTHON to where its needed in order for xbmc to build without python.... made a patch and created a ticket on trac for it also (http://trac.xbmc.org/ticket/6372)

Now have to battle samba! and then, unless something else creeps out, convert all OpenGL code to GL ES! (lawl)

Thanks!
¤ [McGeagh] ¤
Reply
#58
Nice!

getting it to OpenGL ES will be great!
If you have problems please read this before posting

Always read the XBMC online-manual, FAQ and search the forum before posting.
Do not e-mail XBMC-Team members directly asking for support. Read/follow the forum rules.
For troubleshooting and bug reporting please make sure you read this first.

Image

"Well Im gonna download the code and look at it a bit but I'm certainly not a really good C/C++ programer but I'd help as much as I can, I mostly write in C#."
Reply
#59
Ive gotten rid of samba, and now have 3 obscure undefined reference errors to do with MD5 in libGoAhead

The Makefile in xbmc/lib/libGoAhead has md5 commented out (along wth cgi), hence why its undefined. What I dont get is why its commented out? And why it fails for my setup, and not for normal x86 linux setup. (Im 90% sure ive not changed anything to affect this)
Can someone shed some light on why this is so?
¤ [McGeagh] ¤
Reply
#60
files/lines? I'd just cut out the webserver (and most anything else that uses some external lib that we compile) too until you have the basics going.
Reply
  • 1
  • 2
  • 3
  • 4(current)
  • 5
  • 6
  • 48

Logout Mark Read Team Forum Stats Members Help
[LINUX] XBMC for Linux port to ARM architecture CPU and SoC chips?7