Kodi 18a2 build fails on Arch Linux. How to fix?
#16
OK. Here is my "CMakeCache.txt" content:

https://paste.ubuntu.com/p/x37CmrMxnp/

And I was able to do a valid build now.

To get this, I added the red line to my build process:

Code:

  cmake -DCMAKE_INSTALL_PREFIX=/usr \
    -DCMAKE_INSTALL_LIBDIR=/usr/lib \
    -DENABLE_EVENTCLIENTS=ON \
    -Dlibdvdcss_URL="$srcdir/libdvdcss-$_libdvdcss_version.tar.gz" \
    -Dlibdvdnav_URL="$srcdir/libdvdnav-$_libdvdnav_version.tar.gz" \
    -Dlibdvdread_URL="$srcdir/libdvdread-$_libdvdread_version.tar.gz" \
    -DFFMPEG_URL="$srcdir/ffmpeg-$_ffmpeg_version.tar.gz" \
    -DENABLE_INTERNAL_FMT=ON \
    ../"xbmc-$pkgver-$_codename"
  make fmt
  make
  make preinstall

With this "make fmt" in, everything works and the build runs through until I finally have my software package.

I just don't know if this is a) an official requirement to do so and b) if not, why I have to do it.
Reply
#17
@M-Reimer - You never confirmed that building in the chroot solves the issue with the PKGBUILD as-is.
Need help programming a Streamzap remote?
Reply
#18
No, but even building without makepkg at all should work.

It should also be possible to just "make" and "make install" without making a software package at all.

I'm just interested why I need this additional step. And I don't seem to be the only one with this problem:

https://forum.kodi.tv/showthread.php?tid=332568

What could be the reason for this failure and how can I help to track this down?

In the end I need a PKGBUILD that works with my build system as my plan is to have Kodi 18 as a part of a bigger repository of Arch Linux binary packages.
Reply
#19
(2018-07-21, 19:51)M-Reimer Wrote: No, but even building without makepkg at all should work.

It should also be possible to just "make" and "make install" without making a software package at all.

I'm just interested why I need this additional step.
 Asked and answered.  Why would you think running steps outside of the PKGBUILD would produce a different result?  See my previous post and the link therein.  Compile in a clean chroot unmodified from the AUR and you will see that it just works™.
Need help programming a Streamzap remote?
Reply
#20
It should be possible to build without "clean chroot".

At least I have not seen the point in the official Kodi build guide which says "set up a clean chroot first".

I know that Kodi tends to use system libraries. For example if ffmpeg is installed may be a bad idea. Especially as the current ffmpeg comes without vdpau support.

But on my build system there is definitively no "fmt" installed. I've used "find" to search directly from "/" for files that would be used like the header files and the statically linked library. Nothing there.
Reply
#21
(2018-07-21, 23:40)M-Reimer Wrote: It should be possible to build without "clean chroot".

At least I have not seen the point in the official Kodi build guide which says "set up a clean chroot first".

I know that Kodi tends to use system libraries. For example if ffmpeg is installed may be a bad idea. Especially as the current ffmpeg comes without vdpau support.

But on my build system there is definitively no "fmt" installed. I've used "find" to search directly from "/" for files that would be used like the header files and the statically linked library. Nothing there.

Dude, you were shown a solution several posts ago.  The fact that you continue to argue rather than just trying it is simply baffling.

<<drops the mic>>
Need help programming a Streamzap remote?
Reply
#22
My goal is not to just "build once" but to find a potential bug in the cmake system of Kodi.

Just forget about packaging at all.

Let's assume I just want to "make" and "make install" Kodi without ever packaging in between.
Reply
#23
Now I ran the build until it failed again and copied the resulting directory.

After that I did "make fmt" in the original source directory and diffed against my copy.

This is the result: https://paste.ubuntu.com/p/4F6Z6TbskY/

So I would say that the normal "make" command did not even trigger the download of the fmt library.

Any idea how to find the reason for this?
Reply
#24
It's a race condition in cmake, the internal fmt is not yet built.
Please try http://paste.ubuntu.com/p/NZx2q6cM77/
Reply
#25
I did two full build runs in a row, just to be sure.

Your patch seems to successfully fix my problem. At least I wasn't able to reproduce the build failure any more.

Thanks for the fast help!
Reply
#26
@graysky in case your are interested in my changes, you can find them here:

https://github.com/VDR4Arch/vdr4arch/tre...re-release

https://github.com/VDR4Arch/vdr4arch/com...38c7eaa654

I also added some missing items to the "source" array to make them checksum-checked by makepkg like the other "builtin dependencies".
Reply
#27
fixed in master: https://github.com/xbmc/xbmc/pull/14215
Reply
#28
Thanks for the help!!
This answer was very helpful.
Reply

Logout Mark Read Team Forum Stats Members Help
Kodi 18a2 build fails on Arch Linux. How to fix?0