我尝试在 ubuntu 15.10 64 位中安装 insight 调试器。以下是我所做的:
首先我/etc/apt/sources.list
在 gedit 中打开
sudo gedit /etc/apt/sources.list
然后在文件末尾添加这两行
deb http://ppa.launchpad.net/sevenmachines/dev/ubuntu natty main
deb-src http://ppa.launchpad.net/sevenmachines/dev/ubuntu natty main
然后
sudo apt-get update
最后我尝试安装 insight
sudo apt-get install insight
但这给了我一个错误,这是原始错误消息
(Reading database ... 238526 files and directories currently installed.)
Preparing to unpack .../insight_6.8.1-0ubuntu0~sevenmachines1_amd64.deb ...
Unpacking insight (6.8.1-0ubuntu0~sevenmachines1) ...
dpkg: error processing archive /var/cache/apt/archives/insight_6.8.1-0ubuntu0~sevenmachines1_amd64.deb (--unpack):
trying to overwrite '/usr/lib/libinproctrace.so', which is also in package gdbserver 7.10-1ubuntu2
dpkg-deb: error: subprocess paste was killed by signal (Broken pipe)
Errors were encountered while processing:
/var/cache/apt/archives/insight_6.8.1-0ubuntu0~sevenmachines1_amd64.deb
E: Sub-process /usr/bin/dpkg returned an error code (1)
出现此错误我该怎么办?我有什么办法可以安装 insight 吗?
答案1
感谢大家帮助我解决这个问题。我想我找到了解决这个错误的办法。感谢“fkraiem”给出提示。这是我的解决方案
首先,我备份了试图覆盖的文件(这应该以 root 身份完成)
su
mv /usr/lib/libinproctrace.so /home/(usrname)/Desktop/libinproctrace.so
mv /usr/bin/gdb-add-index /home/(username)/Desktop/gdb-add-index
然后我删除了gdbserver
拥有该文件的人/usr/liblibinproctrace.so
:
sudo apt-get remove gdbserver
但是 insight 尝试替换/usr/bin/gdb-add-index
属于 的文件gdb
。所以我也删除了 gdb:
sudo apt-get remove gdb
然后我安装了 insight
sudo apt-get install insight
它成功执行,但我无法使用,insight
因为我删除了gdb
,所以我不得不重新安装gdb
,但我无法做到这一点,因为现在gdb
正在尝试替换现在属于的那 2 个文件insight
。所以我删除了它们(没关系,因为我备份了原始文件)(以 root 身份),然后我安装了 gdb:
rm /usr/bin/gdb-add-index /usr/lib/libinproctrace.so
sudo apt-get install gdb
成功了。检查默认文件夹中是否gdb-add-index
存在libinproctrace.so
。如果不存在,请复制备份文件。
最后,
su
gedit /usr/bin/gdb-add-index
并将此代码片段添加到文件并保存
gdb --batch-silent -ex "file $file" -ex "save gdb-index $dir"
if test -f "${file}.gdb-index"; then
objcopy --add-section .gdb_index="${file}.gdb-index" --set-section-flags .gdb_index=readonly "$file" "$file"
rm -f "${file}.gdb-index"
fi
*此代码片段gdb-add-index
由 insight 安装。我不知道它有什么用,但我把它复制到了 gdb 中gdb-add-index
。