gdb下用shell写环境变量的问题

hupo1982 2009-02-17 03:00:49
我们的程序启动的时候是通过一个脚本,脚本里面先写一个环境变量,然后启动可执行文件,没有这个环境变量可执行文件就起不来。每次调试的时候都要先手工设置一下这个环境变量,然后再进入gdb,进行调试。我发现在gdb里面靠“shell setenv *” 来设置这个环境变量无效,程序还是起不来。必须在gdb外面用setenv来设才行。在gdb里面用shell env来观察发现确实没有设置成功,我想请教一下这是为什么?是不是就是不能在gdb里面用shell命令来设置环境变量?
...全文
328 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
hupo1982 2009-02-18
  • 打赏
  • 举报
回复
哦,一说子shell我就明白了,谢谢
转转耳朵 2009-02-18
  • 打赏
  • 举报
回复
gdb里面用shell命令是另外起一个子shell,跟原来的shell环境没任何关系,所以在里面改应该没办法影响原来的环境变量。
fox000002 2009-02-17
  • 打赏
  • 举报
回复
shell setenv * 这种应该会用子 shell 来执行,影响不到原来的环境变量
hupo1982 2009-02-17
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 hairetz 的回复:]
你去bashprofile里把这个环境变量加进去就省得每次都得重新设置环境变量了。
[/Quote]
谢谢你的回复。
我不是不知道怎么解决,我就是想知道在gdb里能不能用shell来注册环境变量
  • 打赏
  • 举报
回复
你去bashprofile里把这个环境变量加进去就省得每次都得重新设置环境变量了。

23,110

社区成员

发帖
与我相关
我的任务
社区描述
Linux/Unix社区 应用程序开发区
社区管理员
  • 应用程序开发区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧