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

交叉编译 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.kler.cn/a/370379.html

相关文章:

  • UDP 单播、多播、广播:原理、实践
  • 日志收集Day002
  • ipmitool设置带外账号权限
  • Java 8 Optional类
  • CSS:语法、样式表、选择器
  • Python自动化测试中定位隐藏菜单元素的策略
  • ngrx store中createSelector的用法?
  • Spring Boot技术在厨艺交流平台中的创新应用
  • 成品气楼参考图集有哪些?盘点5本实用图集,你都知道哪几本
  • android studio编译错误提示无法下载仓库
  • Vue.js(2) 基础:指令与功能概览
  • 第三十二篇:TCP协议粘包和滑动窗口,TCP系列七
  • 智能工厂的设计软件 谓述词(遗传/继承)的前述谓经验: 认知系统架构和灵活模块化框架的实现原理 之1
  • 人工智能的发展前景如何?
  • OpenStack 新版本 Dalmatian 发布,为人工智能工作负载、安全性和用户体验提供增强功能
  • 什么是云原生后端
  • Docker搭建开源Web云桌面操作系统Puter和DaedalOS
  • LeetCode每日一题3211---生成不含相邻零的二进制字符串
  • Javascript数据结构——哈希表常见应用
  • Ubuntu 安装php7.3 nginx mysql
  • AVI格式怎么转MP4?码住这5个视频格式转换方法就足够了!
  • 深入解析HTTP与HTTPS的区别及实现原理
  • 【PyCharm配置Conda的虚拟环境】
  • 流媒体协议.之(RTP,RTCP,RTSP,RTMP,HTTP)(一)
  • ffmpeg视频滤镜: 裁剪-crop
  • RabbitMQ 消息处理问题全解