TA on raspberryPiOSAnswered

Hi,

using latest TA.

I would like to use TA on raspberrypiOS (downloaded here: https://www.raspberrypi.org/software/operating-systems/#raspberry-pi-os-32-bit)

unfortunately when I link TA with my app, here's what ld is telling:

/usr/bin/ld: /home/pi/dev/myApp/src/TurboActivate/RPI4/libTurboActivate.so: undefined reference to `std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >::basic_stringstream()'

collect2: error: ld returned 1 exit status

is there's something I can do about that?

best regards,

Nicolas

It's hard to know. Sounds like outdated dependencies on the raspberry pi OS.

What ARM version of TA are you using?

Answer

Use the latest compiler from linaro.

armv7-a because of 32bit

it's GCC8.3 that's installed on the pi same as on Linaro toolChain, and TA release from July2020 does not have this issue

so for now, i've reverted to an old TA… but it doesn't sounds good.

++

please note that the x64 version of libTurboActivate.so does not suffer from this issue on an not so old Ubuntu (18) with gcc 7.5.0

++

Answer

The Linux intel/amd builds (x86 and x64) use a different compiler set than the linux arm builds.

Long story short, linux dependencies are a mess. They have been for decades, there's no light at the end of the tunnel. Use the latest ARM builds of compilers if you're targeting ARM. We require it.

https://developer.arm.com/tools-and-software/open-source-software/developer-tools/gnu-toolchain/gnu-a/downloads

, edited

ok…

maybe this should be written somewhere on your website, and if you're used to it, maybe an ‘how to’ would be nice.

for example, I have a not so great PC (not very speedy) and my Linux box is virtualized. On which system do you think I should use the GNU 10.2 cross-toolchain for the A-profile processors?

anyway, thank you for your answers,

++

FWIW, I ended up using latest clang for armv7a_Linux available here:

https://github.com/llvm/llvm-project/releases/download/llvmorg-11.0.0/clang+llvm-11.0.0-armv7a-linux-gnueabihf.tar.xz

I've setup my project to use their linker and no more error with latest TA.

++