crosstool icon indicating copy to clipboard operation
crosstool copied to clipboard

Coral Crosstool doesn't use Coral/Mendel OS sysroot?

Open nichite opened this issue 1 year ago • 0 comments

Description

I'm trying to use this crosstool chain to compile cc_binary targets that will run on the Coral Dev Board Mini. My host/build execution environment is an Ubuntu 22 LTS x86_64 machine.

However, because Mendel OS includes an older version of GLIBC (2.28) than my Ubuntu machine (2.35) (as well as various other shared libraries), nothing I cross-compile using this toolchain will actually run on the Coral Dev Board Mini. I get errors like:

/usr/lib/aarch64-linux-gnu/libstdc++.so.6: version `GLIBC_2.29 not found (required by [...])
/usr/lib/aarch64-linux-gnu/libstdc++.so.6: version `GLIBC_2.32' not found (required by [...])
/usr/lib/aarch64-linux-gnu/libstdc++.so.6: version `GLIBC_2.34' not found (required by [...])

After Googling around, it seems the issue is that the crosstool is compiling/linking the binaries to my workstations versions of GLIBC/other files. What I actually need to do is put together a sysroot with the Coral Dev Board Mini's versions of all these files and feed that into the toolchain, is that right?

If so, my question is:

  1. Why does the Coral Crosstool not build using the Coral Dev Board/latest Mendel OS sysroot by default?
  2. What should I do to get around this? It doesn't look like the Coral Crosstool even accepts other sysroots, will I have to make my own toolchain?
Click to expand!

Issue Type

Bug

Operating System

Mendel Linux

Coral Device

Dev Board Mini

Other Devices

No response

Programming Language

C++

Relevant Log Output

No response

nichite avatar Sep 21 '23 16:09 nichite