2012-04-19 6 views
12

Tôi đã thử Emacs 24 (pretest 24.0.95.1) trên OS X Lion trong vài ngày qua nhưng đang chạy vào một số vấn đề với giao diện gdb/MI mới.Emacs 24 và GDB 6.3 trên Mac OS X

Với GDB 6.3 đi kèm với Xcode, nhưng giao diện gdb/MI dường như không tải chút nào. Dường như nó cố gắng khởi động chế độ GDB GUD, nhưng không có lệnh nào thực sự hoạt động.

Tôi cũng đã cố cài đặt GDB-7.4 qua Homebrew. Điều đó khiến tôi một phần ở đó. giao diện gdb-many-windows hiển thị, nhưng dấu nhắc gdb không bao giờ xuất hiện. Emacs chỉ ngồi đó ăn hết 100% CPU, nhưng chưa trở nên không phản hồi. Tôi vẫn có thể mở tệp, v.v. Tôi không thể làm gì với GDB.

Có ai khác gặp sự cố tương tự không? Bạn có thể giải quyết chúng, và nếu có, làm thế nào?


Chỉnh sửa: 2012-06-10: Tôi vừa thử lại với Emacs mới phát hành 24.1. Hành vi với GDB 6.3 (thông qua Xcode) vẫn giữ nguyên. GDB-7,4 hơi tồi tệ hơn ở chỗ nó khởi động GDB, và các emacs sử dụng hết 100% CPU nhưng bây giờ tôi không thể làm bất cứ điều gì khác. Emacs nếu đông lạnh:/

+0

Đây có thể là một vấn đề về quyền lợi hơn là một vấn đề về mã vạch. Dưới đây là các quyền lợi [LLVM lldb sử dụng] (http://github.com/llvm-mirror/lldb/blob/master/tools/debugserver/source/debugserver-entitlements.plist). – jww

Trả lời

7

tôi cố gắng sử dụng cách sửa đổi xác nhận của Keychain.app từ

http://sourceware.org/gdb/wiki/BuildingOnDarwin

Nó vẫn phàn nàn về chứng nhận ..

GNU gdb (GDB) 7.4 
Copyright (C) 2012 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 "x86_64-apple-darwin11.3.0". 
For bug reporting instructions, please see: 
<http://www.gnu.org/software/gdb/bugs/>... 
Reading symbols from /Users/hanfei/Documents/mis/mis...Reading symbols from /Users/hanfei/Documents/mis/mis.dSYM/Contents/Resources/DWARF/mis...done. 
done. 
(gdb) r 
Starting program: /Users/hanfei/Documents/mis/mis 
Unable to find Mach task port for process-id 52327: (os/kern) failure (0x5). 
(please check gdb is codesigned - see taskgated(8)) 

Sau đó, tôi đã cố gắng:

$ sudo chgrp procmod /yourpath/gdb 
$ sudo chmod g+s /yourpath/gdb 

Và nó w orks cho tôi bây giờ.

+0

Cảm ơn bạn, giống như bạn chứng chỉ đã không làm điều đó cho tôi. Làm tốt! –

+0

Tuyệt vời!Các chgrp và chmod làm việc. Bây giờ tôi có thể sử dụng GDB trên 10.6.8 – AGS

+0

Giải pháp đã đề cập đến liên kết sourceware.org làm việc cho tôi. Cảm ơn. –

4

Tôi đang sử dụng Emacs 24.1 mà tôi tự xây dựng trên Mac OSX Lion (10.7.4) từ các nguồn trong Savannah git. Việc xây dựng dựa trên thẻ emacs-24.1 và có bản vá cho hỗ trợ toàn màn hình Lion được áp dụng.

Gdb 6.3 hoạt động kỳ lạ đối với tôi. Nó phàn nàn về lá cờ -i = mi và nó giữ in dấu thời gian lạ trước mỗi dấu nhắc lệnh, đẩy (gdb) ở xa bên phải và làm cho nó thực sự khó sử dụng. Hoàn thành không hoạt động tốt và có thể có những thứ khác bị hỏng mà tôi không bận tâm điều tra nhiều hơn nữa.

Sử dụng gdb 7.4 từ homebrew/khôn khéo lừa tap, khi cố gắng chạy gdb từ Emacs có những lỗi tương mô tả trong các liên kết mà Firegun đề cập, http://sourceware.org/gdb/wiki/BuildingOnDarwin:

Starting program: /x/y/foo 
Unable to find Mach task port for process-id 28885: (os/kern) failure (0x5). 
(please check gdb is codesigned - see taskgated(8)) 

Tuy nhiên, tôi đi theo mỗi bước đi được mô tả trong để tạo một chứng chỉ và ký gdb và bây giờ nó chạy tốt. Tôi bắt đầu gdb bằng cách sử dụng M-x gdb và sau đó tải ứng dụng mà tôi muốn gỡ lỗi bằng cách sử dụng lệnh file. Khi tôi nhập run, nó sẽ nhắc mật khẩu của tôi để cho Công cụ dành cho nhà phát triển kiểm soát quá trình khác. Sau khi cho mật khẩu của tôi nó chạy tốt. Nó dừng lại trên các điểm ngắt, nó theo mã với các mũi tên ở rìa, và nếu đi đến Gud> GDB-MI> Hiển thị cửa sổ khác nó sẽ hiển thị các cửa sổ khác có thông tin.