Openwrt添加python3 package出现错误:提示缺少对libssl的依赖

本文探讨了在OpenWrt中添加Python3包时遇到的依赖错误问题,详细分析了Makefile配置,并提供了正确的依赖指定方法来解决此问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在Openwrt中添加python3 package时出现错误:

Package python3-light is missing dependencies for the following libraries:

libcrypto.so.1.0.0

libssl.so.1.0.0


分析:

Makefile:

define Package/python3-base
$(call Package/python3/Default)
  TITLE:=Python $(PYTHON_VERSION) interpreter
  DEPENDS:=+libpthread +zlib  
endef

define Package/python3-light
$(call Package/python3/Default)
  TITLE:=Python $(PYTHON_VERSION) light installation
  DEPENDS:=+python3-base +libffi +libbz2 +libncurses +libpanel 
endef

该Makefile中并没有显式依赖这两个库(libssl/libcrypto),为什么make时会提示这个依赖?看来是其代码中有依赖加密库的代码。

而linux中加密库不使用libssl库,而是使用libopenssl库。

解决方案:

需要显式指定对libopenssl库的依赖了:

define Package/python3-base
$(call Package/python3/Default)
  TITLE:=Python $(PYTHON_VERSION) interpreter
  DEPENDS:=+libpthread +zlib<span style="color:#ff0000;"> +libopenssl </span>
endef

define Package/python3-light
$(call Package/python3/Default)
  TITLE:=Python $(PYTHON_VERSION) light installation
  DEPENDS:=+python3-base +libffi +libbz2 +libcrypto +libncurses +libpanel 
endef


### OpenWrt SDK 的下载与使用教程 #### 一、OpenWrt SDK 下载方法 为了获取 OpenWrt SDK,通常可以从官方发布的镜像站点或者特定版本的发布页面找到对应的 SDK 文件。以下是具体操作方式: 1. **访问官方网站** 前往 OpenWrt 官方网站 (https://openwrt.org/) 并导航至 Downloads 页面。在这里可以选择适合目标硬件架构的固件以及配套的 SDK 链接。 2. **选择合适的 SDK 版本** 不同硬件平台对应不同类型的 SDK 包名,例如 `ar71xx` 架构会提供专门针对此芯片组优化过的工具链集合[^2]。因此,在挑选时需注意确认设备所属系列是否匹配当前选项列表中的条目描述信息。 3. **下载并解压缩** 获取到 `.tar.bz2` 格式的压缩包后将其保存于本地磁盘任意位置;随后利用命令行工具执行如下指令完成提取过程: ```bash tar jxvf OpenWrt-SDK-ar71xx-generic_gcc-4.8-linaro_uClibc-0.9.33.2.Linux-i686.tar.bz2 ``` #### 二、配置开发环境 成功部署上述资源之后还需要进一步调整系统设置来支持后续构建流程顺利开展: 1. **安装依赖项** 根据实际使用的 Linux 发行版种类分别运行相应脚本来满足前置条件需求。比如 Ubuntu 用户可通过 apt-get 实现批量装载必要组件的目的[^3]: ```bash sudo apt-get update && sudo apt-get install build-essential libncurses5-dev zlib1g-dev gawk git-core subversion mercurial unzip time python perl imagemagick gettext automake autoconf bison flex quilt pkg-config libssl-dev ``` 2. **初始化工作区结构** 创建一个新的子目录用于容纳自定义模块源码,并按照既定规则组织内部布局以便集成进主项目框架之中[^1]: ```bash mkdir package/njitclient/ cp -r /path/to/source/files/* ./package/njitclient/ ``` #### 三、启动编译进程 当一切准备工作就绪以后便能够正式开启制作阶段了。通过简单的几行终端输入即可触发整个流水线运作直至最终产物生成完毕为止[^4]: ```bash make menuconfig # 设置产品特性开关状态 make V=s # 开始全面组装动作同时显示详细日志记录便于调试分析错误原因 ``` 待全部环节结束之后应该可以在指定输出路径发现所需的 .ipk 软件包形式成果物可供分发应用。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值