![“旧”arm64 上的 .NET 5 问题/如何发布arm64/gcc4.x](https://linux22.com/image/196704/%E2%80%9C%E6%97%A7%E2%80%9Darm64%20%E4%B8%8A%E7%9A%84%20.NET%205%20%E9%97%AE%E9%A2%98%2F%E5%A6%82%E4%BD%95%E5%8F%91%E5%B8%83arm64%2Fgcc4.x.png)
背景
我比预期更成功地从C#
“过时”的(相对简单的)程序运行二进制文件arm
以及使用s和arm64
构建linux-x64
和发布的系统。RID
linux-arm
linux-arm64
然而,在一台机器上我得到以下信息:symbol _ZTTNSt7__cxx1118basic_stringstreamIcSt11char_traitsIcESaIcEEE, version GLIBCXX_3.4.21 not defined in file libstdc++.so.6 with link time reference
根据我查到的一些资料,原因是从gcc-5
现在开始,c++
ABI发生了变化。事实上,这个系统是glibc-2.20
用gcc-4.9.4
.
我的问题:
- 是否有任何已经可用的发布已知与on
RID
兼容的二进制文件(所有s 都是gcc-4.9
arm64
RID
这里)? (我已经尝试了一些我可以从列表中找到的“最古老的”支持arm64
,但没有一个起作用)。 - 如果没有,在容器中构建 SDK 是否可行
wheezy arm64
(我已经成功地进行了glibc-2.19
兼容性编译)。 - 如果我有一个自定义构建的跨 SDK,我如何添加一个
RID
以便我可以在标准dotnet publish
工作流程中使用它? (我建立linux-x64
在linux-arm*
)