这是RISC-V C和 C++交叉编译器。它支持两种构建模式:通用ELF/Newlib工具链和更复杂的 Linux-ELF/glibc工具链。
要在 OS X 上构建 glibc (Linux),您需要在区分大小写的文件系统中构建。最简单的方法是创建和安装一个区分大小写格式的新磁盘映像。确保安装点不包含空格。这不是在 OS X 上构建 newlib 或 gcc 本身所必需的。
这个过程将从下载大约 200 MiB 的上游源代码开始,然后修补、构建和安装工具链。如果 $(DISTDIR) 中存在上游源的本地缓存,则将使用它;默认位置是 /var/cache/distfiles。您的计算机将需要大约 8 GiB 的磁盘空间来完成该过程。
如果安装到空目录中,构建效果最好。如果您构建硬浮动工具链,然后尝试构建具有相同 --prefix 目录的软浮动工具链,则构建脚本可能会混淆并退出并出现链接器错误,提示无法链接硬浮动代码软浮点代码。首先删除现有的工具链,或者为第二次构建使用不同的前缀,可以避免这个问题。构建一个 newlib 和一个 linux 工具链具有相同的前缀是可以的。但是您应该避免构建两个 newlib 或两个具有相同前缀的 linux 工具链。
如果在 MacOS 系统或使用 Linux 子系统或 cygwin 的 Windows 系统上构建 linux 工具链,则必须确保文件系统区分大小写。在构建 glibc 时,在不区分大小写的文件系统上构建会失败,因为 *.os 和 *.oS 文件会在构建过程中相互冲突,最终导致令人困惑的链接错误。
Centos(和 RHEL)提供旧的 GNU 工具版本,这些版本可能太旧而无法构建 RISC-V 工具链。提供了一个替代工具集,其中包括当前版本的 GNU 工具。这是作为 Software Collection 服务的一部分提供的开发工具集。有关详细信息,请参阅 devtoolset-7 URL。有多种版本的 devtoolset 可用,因此您也可以尝试其他版本,但我们至少有一份报告表明 devtoolset-7 可以工作。
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
全部0条评论
快来发表一下你的评论吧 !