当前位置: 首页 > news >正文

交叉编译 perl-5.40.0(riscv64)

交叉编译 perl-5.40.0(riscv64)

https://arsv.github.io/perl-cross/usage.html

https://github.com/arsv/perl-cross

借助 perl-cross 进行交叉编译

https://www.perl.org/get.html#unix_like 这里获取 perl-5.40.0 的源码

https://github.com/arsv/perl-cross/releases 这里获取 perl-cross-1.5.3 的源码(对应perl-5.40.0)

tar -zxf perl-5.24.1.tar.gz
cd perl-5.24.1
tar --strip-components=1 -zxf ../perl-cross-1.1.3.tar.gz# Proceed as usual with most autoconfed packages
./configure --target=riscv64-unknown-linux-gnu --prefix=/usr
make -j4# 这里换成要安装到的目录中
make DESTDIR=/path/to/staging/dir install

本地环境:ubuntu22.04,gcc-11.4.0,riscv64-unknown-linux-gnu-gcc-13.2.0

https://github.com/riscv-collab/riscv-gnu-toolchain/releases/tag/2024.09.03 从这里获取交叉编译工具链

直接编译会出现类似的 https://blog.csdn.net/MengH1003/article/details/122107650 这篇博客里提到的问题,所以进行如下考虑

也就是出现 undefined reference to strlcpy 的错误

sudo apt-get install libbsd-dev

在 Makefile.config 中修改 HOSTLIBS,在最后加上 -lbsd,然后就能编译了

HOSTLIBS = -lm -lcrypt -ldl -lbsd
http://www.lryc.cn/news/471768.html

相关文章:

  • Leetcode 搜索旋转排序数组
  • Spring Task—定时任务
  • Spring Boot 应用开发概述
  • Chrome谷歌浏览器加载ActiveX控件之allWebDesktop控件介绍
  • GitHub Star 数量前 5 的开源应用程序生成器
  • DBC文件当中新建CANFD等类型的报文
  • 基于SpringBoot的房地产销售管理系统【附源码】
  • 圆点虚线 Android
  • 贵州鑫宏远农业-始终致力于推动现代农业的科技创新与发展
  • 程序员做销售,从代码到客户的逆袭之路
  • Flink CDC系列之:理解学习Kubernetes模式
  • git合并相关操作详解
  • 前端经典【面试题】持续更新HTML、CSS、JS、VUE、FLUTTER、性能优化等
  • 【Linux知识】linux磁盘管理深入了解
  • Qt Essential Classes
  • 小小猫棒onu替换家用光猫,薅运营商带宽羊毛,突破1000M
  • 软件测试学习笔记丨Selenium学习笔记:css定位
  • python数据处理常用操作
  • 解决minio跨域问题
  • python 跳过当前循环
  • 数据库数据恢复—Oracle ASM磁盘组掉线 ,ASM实例无法挂载的数据恢复案例
  • jupyter notebook改变默认启动路径
  • libevent源码剖析-基本数据结构
  • 往期文章汇总——射频测量+无线通信+软件无线电+6G科普
  • 微信小程序 - 深 / 浅拷贝实现方法,微信小程序深拷贝与浅拷贝,函数方法封装直接调用使用,深拷贝cloneDeep和浅拷贝clone(深复制和浅复制)
  • Log4Net配置详解及输出自定义消息类示例代码
  • C++在实际项目中的应用第二节:C++与区块链
  • 浅记React面试丢人时刻
  • Python入门:学会Python装饰器让你的代码如虎添翼!(Python如何不改动原有函数代码添加一些额外的功能)
  • 【C++】哈希冲突的解决办法:闭散列 与 开散列