【终端】记录mbedtls库的重新安装

文章讲述了在终端上处理mbedtls库安装问题,涉及libmbedcrypto.14.dylib找不到的错误,提供了卸载重装、更新链接、手动创建软链以及检查动态库路径等解决方案。

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

记录mbedtls库的在终端上重新安装的步骤

ffmpeg -version
dyld[17464]: Library not loaded: '/usr/local/opt/mbedtls/lib/libmbedcrypto.14.dylib'
  Referenced from: '/usr/local/Cellar/librist/0.2.7_3/lib/librist.4.dylib'
  Reason: tried: '/usr/local/opt/mbedtls/lib/libmbedcrypto.14.dylib' (no such file), '/usr/local/lib/libmbedcrypto.14.dylib' (no such file), '/usr/lib/libmbedcrypto.14.dylib' (no such file), '/usr/local/Cellar/mbedtls/3.5.1/lib/libmbedcrypto.14.dylib' (no such file), '/usr/local/lib/libmbedcrypto.14.dylib' (no such file), '/usr/lib/libmbedcrypto.14.dylib' (no such file)
Abort trap: 6

原因:看起来问题仍然与找不到 libmbedcrypto.14.dylib 文件有关。这可能是由于库文件版本的不匹配或链接问题引起的。

使用以下命令查看依赖于 librist 的软件:

brew uses --installed librist
ffmpeg                     ffmpeg@4                   opencv

这会列出使用(依赖) librist 的所有已安装软件。请注意,这可能包括一些间接依赖关系,因为某些软件可能依赖于其他使用 librist 的软件。

如果您看到列出的软件,尝试先卸载 librist,然后重新安装相关软件。

尝试以下步骤来解决问题:

  1. 重新安装 mbedtls:
    强制卸载 mbedtls 并重新安装:

    brew uninstall --ignore-dependencies mbedtls
    brew install mbedtls
    
  2. 重新安装 librist 和 ffmpeg:
    重新安装 librist 和 ffmpeg:

    brew uninstall librist
    brew uninstall ffmpeg
    brew install librist
    brew install ffmpeg
    
  3. 更新链接:
    执行以下命令重新链接 librist:

    brew unlink librist && brew link librist
    
  4. 手动创建软链接:
    尝试手动创建软链接,将现有的 libmbedcrypto 链接到 libmbedcrypto.14.dylib

    ln -s /usr/local/opt/mbedtls/lib/libmbedcrypto.dylib /usr/local/opt/mbedtls/lib/libmbedcrypto.14.dylib
    
  5. 检查动态库路径:
    确保系统中的动态库路径正确,可以通过以下命令检查:

    echo $DYLD_LIBRARY_PATH
    

    如果没有输出,或者输出为空,请确保将 /usr/local/opt/mbedtls/lib 添加到动态库路径中:

    export DYLD_LIBRARY_PATH="/usr/local/opt/mbedtls/lib:$DYLD_LIBRARY_PATH"
    

完成这些步骤后,再次运行 ffmpeg -version,看看问题是否得到解决。如果问题仍然存在,可能需要更详细地检查系统和软件配置以找出问题的根本原因。

### 如何进行MD5校验 在Linux环境中,`md5sum` 是一种常用的命令行工具用于生成文件的MD5哈希值[^1]。该工具能够帮助验证文件传输过程中的一致性和完整性。 对于嵌入式系统或其他C/C++项目,则可以通过调用mbed TLS中的API来完成相同的工作[^2]。具体来说,利用 `mbedtls_md5()` 函数可以直接计算给定输入字符串或字节数组对应的MD5散列;而对于大容量的数据集或是流媒体形式的数据源,则推荐采用基于上下文对象(`mbedtls_md5_context`) 的增量更新模式来进行高效处理。 #### 使用 md5sum 工具的例子: 假设有一个名为 example.txt 文件想要获取它的 MD5 值,在终端中执行如下指令即可得到结果: ```bash md5sum example.txt ``` 这将会返回形如下面的结果: ``` d41d8cd98f00b204e9800998ecf8427e example.txt ``` 其中前半部分即为所求得的MD5摘要码。 #### 应用场景 - **软件分发**:发布者可以在网站上提供应用程序包及其相应的MD5签名,以便下载者确认接收到的内容未被篡改。 - **数据备份与恢复**:当涉及到大量重要资料迁移时,先创建一份完整的镜像并记录下各份副本各自的唯一标识符(比如这里的MD5),之后再逐一核对这些标签是否匹配,从而判断整个过程是否有误发生过。 - **网络通信安全领域内**:发送方将消息连同它自己的指纹一起传递出去,接收端据此检验二者间是否存在差异,以此保障信息的真实性不受侵犯。 #### 实现方法概述 针对不同的编程环境和技术栈,存在多种方式去实现这一功能。上述提到两种主要途径——命令行实用程序和第三方加密接口调用——分别适用于脚本编写自动化任务以及集成到更大规模的应用框架之中。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值