v18 RPi2 build (-DCORE_PLATFORM_NAME=rbpi) results in bin w/ NEON extensions for ARMv*8*?
#16
(2017-10-10, 22:26)asavah Wrote: First check your libgcrypt.so.* with readelf.
If it has v8 tags - that's probably it.
Here as well

Code:
[color=#000000]readelf -A /usr/lib/arm-linux-gnueabihf/libgcryp[/color]t.so | grep arch:
 Tag_CPU_arch: v6
 Tag_FP_arch: FP for ARMv8
 Tag_Advanced_SIMD_arch: NEON for ARMv8

I'll grab libgcrypt source and build up a local copy -- hopefully with correct tags

[quote pid='2653982' dateline='1507667218']
asavahMake sure that your toolchain's ${CROSS_ROOT}/bin is on PATH.
[/quote]


It is.  That's why all the bins -- other than 'ld' & 'g++' -- are being found.  ANother puzzle ...

Thanks for the toolchain file.  I may just give up trying to use provided tools, and revert to my own manual setup as well.
Reply
#17
Make sure you build libgcrypt as in the PKGBUILD I linked.
Disable crypto and neon, and after configuring sed the defines away.

I never ever used depends, can't help there, I did pick stuff from Makefiles from tools/depends/target to build the dependencies as kodi devs want them (eg. sqlite)
Do you put your toolchain on PATH before or after existing PATH?
I put it before.
Reply
#18
(2017-10-10, 23:35)asavah Wrote: Make sure you build libgcrypt as in the PKGBUILD I linked.

yep.


Code:
[font=monospace][color=#000000]readelf -A /usr/local/lib/libgcr[/color]ypt.so | grep arch:
 Tag_CPU_arch: v7
 Tag_FP_arch: VFPv4
 Tag_Advanced_SIMD_arch: NEONv1 with Fused-MAC[/font]
SIMD arch's right.  'tho, the CPU & FP arch values are ... different.
Reply
#19
These are the right values
for cortex-a7 CPU arch is v7 (armv7ve) and fpu is neon-vfpv4
that's what I get for all my binaries now.
Reply
#20
(2017-10-11, 00:46)asavah Wrote: These are the right values
for cortex-a7 CPU arch is v7 (armv7ve) and fpu is neon-vfpv4
that's what I get for all my binaries now.

I've started a 'native' (in chroot) build with the mod'd libgcrypt in place. It'll take awhile; see what happens.

Having a heck of a time getting my toolchain.cmake to find object files & libs; clearly, I'm not pointing something correctly in my paths etc.  Working on that ...
Reply
#21
Meh, sometimes building stuff is tricky, specially cross-compilation.
GNU/Linux world is a zoo, there are many buildsystems (autohell, cmake, meson, scons, plain Makefiles, custom stuff) , bugs, hacks, defines, quirks, patches, old stuff, zeroday stuff and a large etc.
It's an art, not a science  Devil
Reply
#22
with mod'd libgcrypt as above, native build now returns,

Code:
readelf -A /usr/local/kodi/lib/kodi/kodi.bin | egrep "Tag_CPU|arch:"
  Tag_CPU_name: "7-A"
  Tag_CPU_arch: v7
  Tag_CPU_arch_profile: Application
  Tag_FP_arch: VFPv4
  Tag_Advanced_SIMD_arch: NEONv1 with Fused-MAC
  Tag_CPU_unaligned_access: v6
as expected for an RPi2
Reply
#23
thanks for tracking this down.
My take to solve it in depends: https://github.com/xbmc/xbmc/pull/12910/...5f97cab638
Reply

Logout Mark Read Team Forum Stats Members Help
RPi2 build (-DCORE_PLATFORM_NAME=rbpi) results in bin w/ NEON extensions for ARMv*8*?0