安装 MIPS-GCC 交叉编译工具

文章介绍了如何配置龙芯的MIPS-GCC交叉编译环境,包括下载安装、路径设置和32位环境支持。在WSL2环境中遇到的‘Valuetoolargefordefineddatatype’错误,因inode号过大导致,通过将文件拷贝到Linux目录下解决该问题。

MIPS-GCC 交叉编译环境配置

NSCSCC(龙芯杯)提供的龙芯编译环境。

下载安装

下载龙芯提供的编译环境配置压缩包:
gcc-4.3-ls232.tar.gz

终端下进入 gcc-4.3-ls232.tar.gz 所在目录,将环境加压至根目录。

sudo tar -zxvf gcc-4.3-ls232.tar.gz -C /

向 .bashrc 文件添加路径。

echo "export PATH=/opt/gcc-4.3-ls232/bin:$PATH" >> ~/.bashrc

对于 64 位系统,还要安装 32 位环境支持。

sudo apt-get install lsb-core

CPU设计实战 书上还要求安装 lib32ncurses-dev,装的时候报 Unable to locate package,去查了一下发现 Ubuntu 下根本没这个包,最相近的是 lib32ncurses5-dev,装了一下,好像没什么用。

如果可以输入 mipsel-linux-gcc -v命令查看版本号则安装成功。

WSL 环境下编译测试程序的问题


如果用 WSL2 作为 Linux 环境编译测试程序(测试程序放在 Windows 目录下,在 Linux 终端中通过 /mnt 目录访问 Windows 磁盘),会产生如下报错:

Value too large for defined data type

原因是目标文件 inode 号过大,超过 32 位系统的识别范围,可以 ls -li 验证一下。

网上给了很多解决方案,试了一下没有奏效的。最后看了某佬的文章,果然最简单的办法最有效,把文件拷贝到 Linux 目录下,inode 就变得正常了,make 好了再拷回 Windows 目录。

结语

折腾半天就是为了gs132跑出的trace文件和ram_ip初始化的inst_ram.coe文件。以后有时间可能会整理一下发个仓库,避免重复劳动。

引用


好好泔,日子会越来越钿。


评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值