Nâng cấp từ gdb 7.7 lên 7.8


10

Làm cách nào để nâng cấp trình gỡ lỗi GDB của tôi từ phiên bản hiện tại là 7.7 lên phiên bản tiếp theo là 7.8, Ngoài ra tôi đang làm việc trên Ubuntu 14.04.1?

Câu trả lời:


13

gdb 7.8 hiện không có sẵn trong repo đáng tin cậy . Nhưng bạn có thể cài đặt nó từ nguồn.

Mở terminal và gõ các lệnh sau

wget http://ftp.gnu.org/gnu/gdb/gdb-7.8.tar.xz
tar -xf gdb-7.8.tar.xz     
cd gdb-7.8/     
./configure
make
sudo cp gdb/gdb /usr/local/bin/gdb

Nó sẽ cài đặt gdbtrong /usr/local/bin/thư mục. Như /usr/local/bin/được tìm kiếm trước khi /usr/bin/bất cứ khi nào một lệnh được thực thi, chạy gdbsẽ thực thi gdb 7.8.

Sau khi cài đặt, bạn có thể kiểm tra phiên bản gdb bằng cách sử dụng

gdb --version

Nó sẽ xuất

GNU gdb (GDB) 7.8
Copyright (C) 2014 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "i686-pc-linux-gnu".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>.
Find the GDB manual and other documentation resources online at:
<http://www.gnu.org/software/gdb/documentation/>.
For help, type "help".
Type "apropos word" to search for commands related to "word".


Nếu bạn muốn gỡ cài đặt, chỉ cần xóa gdbkhỏi /usr/local/bin/bằng cách thực thi

sudo rm /usr/local/bin/gdb

Trên thực tế gdbcó sẵn trong kho. Điều gì làm cho bạn nói nó không phải là?
Thomas Ward

(lưu ý gdbtrong kho là KHÔNG 7.8. Bạn có thể muốn thêm phần làm rõ cho câu trả lời của mình ở đây)
Thomas Ward

Đồng ý. Nó đã thêm nó. Đó là một lỗi đánh máy.
g_p

1
Câu trả lời đã không giải quyết được xung đột giữa các phiên bản gdb gốc và mới được cài đặt. Ngoài ra, gdb không cung cấp phương tiện cho make uninstall. Vì vậy, người ta nên sử dụng sudo checkinstallđể theo dõi tất cả mọi thứ. Cùn make installsẽ gây ra nỗi đau lớn nếu bạn quyết định gỡ cài đặt gói đôi khi trong tương lai.
Naitree

2
Sao chép vào / usr / local / bin / gdb không làm việc cho tôi. Khi tôi sao chép vào / usr / bin, nó làm việc, nhưng tôi nhận được lỗi sau: Python ngoại lệ <type 'exceptions.NameError'> Lỗi cài đặt: gdb.execute_unwinders chức năng là mất tích:
AlwaysLearning

2

Cập nhật GDB từ 7.7.1 lên 8.2 trên Ubuntu 14.04:

sudo add-apt-repository ppa:ubuntu-toolchain-r/test
sudo apt-get update
sudo apt-get -y --force-yes install gdb
gdb -v
sudo add-apt-repository --remove ppa:ubuntu-toolchain-r/test
sudo apt-get update

0

Câu trả lời hàng đầu không làm việc cho tôi. Vì một số lý do, tôi cũng cần gói này để hoàn thành:

sudo apt-get install texinfo

Sau đó, tôi đánh giá cao đề nghị để cài đặt này đúng cách. Tôi đã cài đặt checkinstalltiện ích (sẽ tạo gói debian để tự động theo dõi tất cả các tệp của bạn được tạo bởi make):

sudo apt-get update && sudo apt-get install checkinstall

Bây giờ gọi các lệnh sau:

wget http://ftp.gnu.org/gnu/gdb/gdb-7.8.tar.xz
tar -xf gdb-7.8.tar.xz     
cd gdb-7.8/     
./configure
sudo checkinstall

Xác minh rằng cái này đóng một *.debtập tin trong thư mục hiện tại (của tôi là gdb_7.8-1_amd64.deb). Vì vậy, bây giờ hãy cài đặt nó đúng cách, tiếp tục và:

  1. gỡ cài đặt gdb nhanh
  2. đặt đường dẫn cài đặt của *.deb
  3. sau đó cài đặt nó bằng apt-get

sử dụng các lệnh tương ứng:

sudo dpkg -r gdb
sudo dpkg -i ~/gdb-7.8/gdb_7.8-1_amd64.deb
sudo apt-get install -f

Bây giờ bạn đã có một gói được cài đặt đúng, và bạn có thể loại bỏ nó bằng sudo apt-get remove gdbOR sudo dpkg -r gdb. Lưu ý rằng tôi đã thử nghiệm điều này với gdb 8.0.1, nhưng tôi cho rằng nó sẽ hoạt động cho bất kỳ phiên bản nào.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.