.NET 5 issue on "old" arm64 / how to publish for arm64/gcc4.x
1
vote
0
answers
69
views
### Background
I'm having more success than expected running binaries from a (relatively simple)
C#
program on "antiquated" arm
and arm64
systems built on linux-x64
and published with RID
s linux-arm
and linux-arm64
.
On one machine I get the following, however: symbol _ZTTNSt7__cxx1118basic_stringstreamIcSt11char_traitsIcESaIcEEE, version GLIBCXX_3.4.21 not defined in file libstdc++.so.6 with link time reference
According to some information I found, the reason is that from gcc-5
onward, the c++
ABI has changed. Indeed this system is a glibc-2.20
compiled with gcc-4.9.4
.
### My questions:
- is there any already available RID
which publishes binaries known to be compatible with gcc-4.9
on arm64
(all RID
s are [here](https://github.com/dotnet/runtime/blob/main/src/libraries/Microsoft.NETCore.Platforms/src/runtime.json)) ? (I've tried some of "the oldest" I could find from the list, that support arm64
, but none worked).
- if not, would it be feasible to build the SDK in e.g. a wheezy arm64
container (I've had success with this compiling for glibc-2.19
compatibility).
- if I have a custom-build cross-SDK, how can I add a RID
so I can use it in the standard dotnet publish
workflow? (I build on linux-x64
for linux-arm*
)
Asked by ppenguin
(115 rep)
Oct 6, 2021, 11:18 PM