当前位置: 技术问答>linux和unix
gdb下用shell写环境变量的问题
来源: 互联网 发布时间:2016-05-18
本文导语: 我们的程序启动的时候是通过一个脚本,脚本里面先写一个环境变量,然后启动可执行文件,没有这个环境变量可执行文件就起不来。每次调试的时候都要先手工设置一下这个环境变量,然后再进入gdb,进行调试。我...
我们的程序启动的时候是通过一个脚本,脚本里面先写一个环境变量,然后启动可执行文件,没有这个环境变量可执行文件就起不来。每次调试的时候都要先手工设置一下这个环境变量,然后再进入gdb,进行调试。我发现在gdb里面靠“shell setenv *” 来设置这个环境变量无效,程序还是起不来。必须在gdb外面用setenv来设才行。在gdb里面用shell env来观察发现确实没有设置成功,我想请教一下这是为什么?是不是就是不能在gdb里面用shell命令来设置环境变量?
|
shell setenv * 这种应该会用子 shell 来执行,影响不到原来的环境变量
|
gdb里面用shell命令是另外起一个子shell,跟原来的shell环境没任何关系,所以在里面改应该没办法影响原来的环境变量。
|
你去bashprofile里把这个环境变量加进去就省得每次都得重新设置环境变量了。