You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在GDB会话中指定共享库路径并加载缺失的依赖库

在GDB会话中指定共享库路径的解决办法

遇到这种共享库找不到的问题,不用退出GDB重新设置系统环境变量,直接在当前会话里就能搞定,给你两种实用的方法:

方法1:使用GDB内置的共享库搜索路径命令

GDB自带专门管理共享库搜索路径的命令,就是set solib-search-path,操作步骤很清晰:

  1. 先进入GDB并加载你的二进制文件:gdb ./your_binary
  2. 执行命令设置库路径,把/path/to/libshr1替换成实际存放libshr1.so的目录:
set solib-search-path /path/to/libshr1
  1. 可以用下面的命令验证路径是否设置成功:
show solib-search-path

设置完成后直接输入run,程序就能正常加载目标共享库了。这个路径是GDB专属的,不会影响系统全局的环境变量。

方法2:在GDB中设置LD_LIBRARY_PATH环境变量

如果你更习惯系统层面LD_LIBRARY_PATH的查找逻辑,也可以直接在GDB里设置这个环境变量:

  1. 进入GDB后,执行命令设置(替换成实际路径):
set env LD_LIBRARY_PATH /path/to/libshr1
  1. 要是想一次性完成启动和设置,也可以在启动GDB时直接指定:
gdb -ex 'set env LD_LIBRARY_PATH /path/to/libshr1' ./your_binary
  1. 验证环境变量是否生效,用这条命令:
show env LD_LIBRARY_PATH

之后运行run,程序就会按照这个环境变量的配置去查找共享库了。

小提示

如果你的共享库分散在多个目录下,两种方法都支持用冒号:分隔多个路径,比如:

set solib-search-path /path/to/first/lib:/path/to/second/lib

或者

set env LD_LIBRARY_PATH /path/to/first/lib:/path/to/second/lib

内容的提问来源于stack exchange,提问作者ibse

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.29 19:32:51