[20240922]gdb与rlwrap使用问题.txt

来源:这里教程网 时间:2026-03-03 20:38:26 作者:

[20240922]gdb与rlwrap使用问题.txt --//我使用centos 7.3版本遇到的问题,gdb与rlwrap无法配合使用,一些按键失效。 --//我定义别名如下: $ alias rlgdb alias rlgdb='$RLWRAP -s 9999 -c -r -i /usr/bin/gdb' --//我仔细查看发现gdb实际上链接了readline库。 $ ldd $(which gdb)         linux-vdso.so.1 =>  (0x00007ffd6679d000)         libreadline.so.6 => /lib64/libreadline.so.6 (0x00007f0a3e767000)         libselinux.so.1 => /lib64/libselinux.so.1 (0x00007f0a3e53f000)         libncurses.so.5 => /lib64/libncurses.so.5 (0x00007f0a3e318000)         libtinfo.so.5 => /lib64/libtinfo.so.5 (0x00007f0a3e0ee000)         libz.so.1 => /lib64/libz.so.1 (0x00007f0a3ded7000)         libm.so.6 => /lib64/libm.so.6 (0x00007f0a3dbd5000)         libdl.so.2 => /lib64/libdl.so.2 (0x00007f0a3d9d1000)         libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f0a3d7b4000)         libutil.so.1 => /lib64/libutil.so.1 (0x00007f0a3d5b1000)         libpython2.7.so.1.0 => /lib64/libpython2.7.so.1.0 (0x00007f0a3d1e6000)         libexpat.so.1 => /u01/app/oracle/product/21.0.0/dbhome_1/lib/libexpat.so.1 (0x00007f0a3cfbb000)         liblzma.so.5 => /lib64/liblzma.so.5 (0x00007f0a3cd95000)         libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x00007f0a3cb7f000)         libc.so.6 => /lib64/libc.so.6 (0x00007f0a3c7bd000)         libpcre.so.1 => /lib64/libpcre.so.1 (0x00007f0a3c55c000)         /lib64/ld-linux-x86-64.so.2 (0x00007f0a3e9d6000) --//好像旧版本不包括readline库,这样导致它与rlwrap配合无效。 $ cat  ~/.gdb_history y n y --//文件.gdb_history就仅仅记录3行,实际上如果我没有输入n,仅仅记录1行,如果上1个命令与下一个相同,rlwrap仅仅记录1行。 --//不像.sqlplus_history记录许多打入的历史命令。 --//导致许多按键"失效",不知道像这类情况rlwrap有什么好的方法解决。 --//我尝试在如下目录建立gdb文件。 # ls -l /usr/share/rlwrap/completions/gdb -rw-r--r--. 1 root root 1500 2024-09-22 16:38:49 /usr/share/rlwrap/completions/gdb # grep ^b  /usr/share/rlwrap/completions/gdb backtrace bookmark break break-range bt --//这样我打入的命令,输入前几个字符,按<F8>可以直接调出。因为保存失效,历史记录.gdb_history没有记录,即使我尝试加入历史 --//记录文件,按<F8>一样无效。 --//注:<F8>定义在/etc/inputrc文件。 # grep -i 'f8' /etc/inputrc "\e[19~": history-search-backward      # F8 --//实际上出现这样情况,还不如没有以前的情况好用,指gdb不包括readline库。

相关推荐