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

记录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,看看问题是否得到解决。如果问题仍然存在,可能需要更详细地检查系统和软件配置以找出问题的根本原因。

你可能感兴趣的:(linux,ffmpeg)