xbianonpi / xbian

XBMC on Raspberry Pi, Bleeding Edge
https://xbian.org
GNU General Public License v3.0
294 stars 46 forks source link

How to build the custom Xbian Image #857

Closed amanharitsh123 closed 6 years ago

amanharitsh123 commented 6 years ago

I have made some changes to the kodi fork https://github.com/amanharitsh123/xbmc . I want to make a custom xbian image using this fork and want to test my changes. How can i do this ? Please Help

mkreisl commented 6 years ago

emdebian.org supplies multiarch support (incl. cross compiler) for Debian Jessie, but this is not required for Debian Stretch, because Stretch comes with complete multiarch support already included. And, you do not need to add anything as mirror

amanharitsh123 commented 6 years ago

@mkreisl I badly need to compile kodi-isengard which cant be done using stretch and debian jessie chroot is unable to apt-update from emdebian Is there anything i can do right now ?

mkreisl commented 6 years ago

I badly need to compile kodi-isengard which cant be done using stretch

Why - error messages?

Did you have sucessfully set up root environment amd64stretch?

And of course, you have to edit file .../xbian-package/xbmc/build/rpi2-cross-isengard/config, like this


...
config_build_env=schroot -c amd64stretch -p --
config_source_branch=treeIsengard
config_source_addr=https://github.com/xbianonpi/xbian-sources-xbmc.git
...
amanharitsh123 commented 6 years ago

I have done that , now there is a error for no rule to make target 'java-not-found ', needed by 'codegenerator' after compilation goes for 15 mins

Also some doxygen not installed

mkreisl commented 6 years ago

Hmmm, so seems that Isengard can not be build for Debian Stretch. I was trying it also, and my build stopped during configure process (havent looked deeper, does not make sense for me).

So, I'm currently building Isengard for Debian Jessie, that seems to work. But, unfortunately setting up root (amd64jessie) fails (got same Method gave invalid 103 redirect message errors), but I have already fixed that

You can apply the fix locally and try to setup amd64jessie again

manfred@kmnote5-debian9:/usr/src/xbian$ git diff create.buildroot
diff --git a/create.buildroot b/create.buildroot
index ea62cbb..42abad8 100644
--- a/create.buildroot
+++ b/create.buildroot
@@ -165,7 +165,7 @@ do_other()
     esac
     LC_ALL=C schroot --directory / -p -c $config_platform -- apt-get update 2>/dev/null || ( \
         case "$config_platform" in
-            *stretch*)
+            *stretch*|*jessie*)
                 # As it was written (for Debian Stretch) apt-get does not work with method mirror://
                 schroot --directory / -c $config_platform -p -- sed -i -e 's%mirror://apt.xbian.org/mirror.txt%http://apt.xbian.org/%g' /etc/apt/sources.list.d/xbian.list

^^^ Fix commited https://github.com/xbianonpi/xbian/commit/12a3f84e6d82bb78f05ed78ec37b7329027ed709 ^^^

Seems to work, but Isengard is not compatible with libcec4 library. Before building, libcec4 has to be removed and libcec3 installed manually in root amd64jessie

sudo -E schroot -c amd64jessie

and inside root, remove all cec packages and then

apt-get install libcec-dev:armhf=3.1.0.1~xbian-1462858855

Yep, that worked :smile:

t wäre (es verwendet keines der Symbole der Bibliothek).
... lib dependencies done
... creating dbg package (this may take a while)
... dbg package done
dpkg-deb: Paket »xbian-package-xbmc« wird in »xbian-package-xbmc15.2-1520369109.deb« gebaut.
dpkg-deb: Paket »xbian-package-xbmc-dbg« wird in »xbian-package-xbmc-dbg15.2-1520369109.deb« gebaut.

-------------------------------
FINISHED OK
-------------------------------
amanharitsh123 commented 6 years ago

Which Linux distro are you using ? I am still getting this error Method gave invalid 103 redirect message after sudo -E $xbiangit --arch amd64jessie --action build P.S : I have git pull the repo again , Is there are any other fix that i have to apply locally?

mkreisl commented 6 years ago

Debian 9 VM for testing, fresh setup of amd64jessie root.

You have to remove amd64jessie folder (sudo -E rm -rf $XBIANROOT/build-root-dirs/amd64jessie) and setup root amd64jessie again. Did you do that?

Nope, no other fixes necessary

amanharitsh123 commented 6 years ago

Yes , I did that . but still the error with GET ftp.de.debian.org jessie/main/amd64 packages

amanharitsh123 commented 6 years ago

The same error if I try to apt-get update in schroot

mkreisl commented 6 years ago

Please show me file /etc/apt/sources.list.d/xbian.list in schroot

amanharitsh123 commented 6 years ago

https://paste.fedoraproject.org/paste/2eaOfI-5ZbC~JyNtE92LBQ Error logs : https://paste.fedoraproject.org/paste/BIK-oIzpZ1N5ND4gfTbG8w

mkreisl commented 6 years ago

That's the culprit: mirror://apt.xbian.org/mirror.txt

Either my fix does not work for you, or you did not applied this fix correctly or you did not set up root again

It must be http://apt.xbian.org

amanharitsh123 commented 6 years ago

Well , I have cloned a fresh repo again. Is there any thing else i should do?

amanharitsh123 commented 6 years ago

I can edit the /etc/apt/sources.list.d/xbian.list , may be then i can do a apt-get update

mkreisl commented 6 years ago

I can edit the /etc/apt/sources.list.d/xbian.list , may be then i can do a apt-get update

Yeah, that would be possible. And after done that, you have to continue by running sudo -E $xbiangit --arch amd64jessie --action other. But if the script does not work correctly, you will fell in the same error again

amanharitsh123 commented 6 years ago

Dependency error , libc64:amd64 multiarch support after running sudo -E $xbiangit --arch amd64jessie --action other

mkreisl commented 6 years ago

Hmmm, sorry. There is something absolutely wrong with your installation. Or maybe we're talking about different things

amanharitsh123 commented 6 years ago

Well , for the last time . What is the complete installation procedure that worked for u?

mkreisl commented 6 years ago

I'll do it again and post log here

mkreisl commented 6 years ago

I'm going crazy. Yesterday it works flawlessly, today this stupid error is back again.

Have to look what's going on today

mkreisl commented 6 years ago

So, finally it should work after that fix: https://github.com/xbianonpi/xbian/commit/54bc2cf45bd7220b4a28eff5ca1d74ccbc5763aa

Here is my log: http://paste.ubuntu.com/p/PXR2sFgYW2/

hth

amanharitsh123 commented 6 years ago

Trying :) @mkreisl Thanks a lot , finally the process successfully completed :)

mkreisl commented 6 years ago

Fine, so don't forget to install libcec3 before building Kodi Isengard

amanharitsh123 commented 6 years ago

Thanks :) I have done that , build in progress . Lets see what happens next :)

amanharitsh123 commented 6 years ago

At the time of compiling rpi-isengard , i had this error https://paste.fedoraproject.org/paste/zZV7Yor~FOYJ87w8EEbykw looks like i need to update automake to 1.15.1

But how to do that :/

mkreisl commented 6 years ago

I don't think so, because build process is building it's own autoconf/automake, see here https://github.com/xbianonpi/xbian-package-xbmc/blob/master/hooks.d/pre-configure.d/00-pre-depends#L18

amanharitsh123 commented 6 years ago

so , what should i do ?

amanharitsh123 commented 6 years ago

@mkreisl Then may be I should replace the automake in the /tools/native with the latest one

mkreisl commented 6 years ago

@mkreisl Then may be I should replace the automake in the /tools/native with the latest one

No, that version must work.

I assume that this issue is caused by another problem. As already told, yesterday I was building Isengard without any issue on my Debian Stretch VM At the moment, I'm building Isengard on my older Debian Jessie VM (I found small (CEC related) issue again, but this has nothing to do with your problem) And at least, I'm setting up build enviromnent on my stone old Ubuntu 14.04 VM, will see how it works there

amanharitsh123 commented 6 years ago

@mkreisl Please let me know the results :) Currently i am setting up the debian 9 vm , lets see if i can build on that

mkreisl commented 6 years ago

Sure, I will do :smile: Debian 8 VM --> built ok

amanharitsh123 commented 6 years ago

.deb created successfully ?

mkreisl commented 6 years ago

.deb created successfully ?

Yes (Debian 8 VM)

amanharitsh123 commented 6 years ago

Can you please provide the logs ?

mkreisl commented 6 years ago

Too late, already removed xbian-package-xbmc folder. Sorry

mkreisl commented 6 years ago

It seems that build on Ubuntu 14.04 fails (auto issue) Running apt-get upgrade to see if that makes any difference

mkreisl commented 6 years ago

Yep, after installing some additional packages (autopoint, openjdk-7-jre-headless, swig, doxygen, g++, fakeroot) build process ( sudo -E $xbiangit --arch rpi2-cross-isengard --action wipe,build) is running in Ubuntu 14.04 VM

mkreisl commented 6 years ago

All testbuilds completed successfully (Debian Stretch, Debian Jessie, Ubuntu 14.04 LTS)

Here you can find my 14.04 build log of sudo -E $xbiangit --arch rpi2-cross-isengard --action wipe,build: http://paste.ubuntu.com/p/TFmJXRt6Yp/ and here is my complete 14.04 package list http://paste.ubuntu.com/p/Qj785RMCVg/

hth

amanharitsh123 commented 6 years ago

Have you downgraded the libcec every time?

On Mar 8, 2018 4:28 AM, "Manfred Kreisl" notifications@github.com wrote:

All testbuilds completed successfully (Debian Stretch, Debian Jessie, Ubuntu 14.04 LTS)

Here you can find my 14.04 build log of sudo -E $xbiangit --arch rpi2-cross-isengard --action wipe,build: http://paste.ubuntu.com/p/ TFmJXRt6Yp/ and here is my complete 14.04 package list http://paste.ubuntu.com/p/ Qj785RMCVg/

hth

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/xbianonpi/xbian/issues/857#issuecomment-371315864, or mute the thread https://github.com/notifications/unsubscribe-auth/ARKnBCgEAK-ms_yYnOXdi7WkLr4iILykks5tcGYUgaJpZM4SbyhT .

mkreisl commented 6 years ago

Have you downgraded the libcec every time?

Sure, I did. It's necessary

Oh, I forgot to post final libcec fix inside of schroot. You have to copy libcec.pc

cp /usr/lib/pkgconfig/libcec.pc  /usr/lib/arm-linux-gnueabihf/pkgconfig/
amanharitsh123 commented 6 years ago

After building i have two deb packages should i install both packages simply using dpkg -i *.deb on my rpi?

mkreisl commented 6 years ago

After building i have two deb packages should i install both packages simply using dpkg -i *.deb on my rpi?

No, you need only one, the smaller one. The second holds debug information only

amanharitsh123 commented 6 years ago

Xbian image already has kodi Krypton , should I remove that before installing?

mkreisl commented 6 years ago

Xbian image already has kodi Krypton , should I remove that before installing?

You already asked that, and I was answering: NO

amanharitsh123 commented 6 years ago

Thanks :)

mkreisl commented 6 years ago

Thanks :)

But you have to consider, that you're building your package for Debian Jessie, so you have to install this package on a Debian Jessie XBian installation.

amanharitsh123 commented 6 years ago

and where can i find xbian jessie image

mkreisl commented 6 years ago

There is at least one available for download

https://sourceforge.net/projects/xbian/files/release/XBian_Jessie_latest_rpi3.img.gz/download

amanharitsh123 commented 6 years ago

Ok , trying to install deb Hope i will not face any dependencies issues :)

mkreisl commented 6 years ago

Hope i will not face any dependencies issues :)

I suppose you'll have to downgrade libcec packages there