2013-06-09 37 views
8

Tôi đang đối mặt với một vấn đề lạ. Sử dụng Pycharm (xin vui lòng không troll về thực tế này), tôi đang cố gắng để khởi động một ứng dụng ngắn sử dụng ncurses để hiển thị một số điều về thuật ngữ của tôi.Pycharm: làm thế nào để khởi động cho một thiết bị đầu cuối tiêu chuẩn (để giải quyết một vấn đề với lời nguyền)

Trong khi tôi có thể khởi động dự án trong một thuật ngữ đơn giản mà không cần bất kỳ vấn đề, khởi chạy nó từ Pycharm tăng các lỗi sau:

File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/curses/__init__.py", line 33, in initscr 
    fd=_sys.__stdout__.fileno()) 
error: setupterm: could not find terminal 

Process finished with exit code 0 

Theo như tôi thấy, tất cả là biến môi trường về thiết bị đầu cuối. Pycharm khởi chạy dự án (Chạy hoặc Gỡ lỗi) từ trường hợp của thiết bị đầu cuối và lời nguyền sẽ không hoạt động với nó. Vì vậy, tôi tự hỏi làm thế nào tôi có thể cấu hình Pycharm để khởi động dự án của tôi bên trong một thiết bị đầu cuối thường xuyên.

Dự án đang sử dụng Python 2.7. Pycharm có trong phiên bản EAP 129.258 (không hoạt động với các phiên bản khác, bao gồm chuồng)

Cảm ơn sự quan tâm của bạn.

K.

+1

Xem http://stackoverflow.com/q/135688/104891 hoặc thử chạy PyCharm như thế này: 'open -a/Applications/PyCharm.app /'. – CrazyCoder

+1

Tôi tin rằng vấn đề là PyCharm không sử dụng một thiết bị đầu cuối thực sự, do đó bạn không thể làm bất cứ điều gì về nó. Đơn giản chỉ cần khởi động các chương trình từ một thiết bị đầu cuối thực sự. – Bakuriu

+1

@Bakuriu Xin vui lòng, hãy xem toàn bộ câu hỏi trước khi bạn bình luận. Như bạn có thể thấy, câu hỏi đề cập đến vấn đề là Pycharm không tung ra một thuật ngữ thực sự, và câu hỏi cũng gợi ý rằng tôi không muốn khởi chạy nó từ một thiết bị đầu cuối thông thường. Cảm ơn sự quan tâm của bạn, anyway :) – Koreth

Trả lời

-1
  • Bắt đầu PyCharm và chắc chắn rằng ncurses được liệt kê trong File-> Settings-> Dự án Interpreter-> Python Interpreter;
  • nếu bạn đã cài đặt phiên dịch 2.7 và 3.x, hãy đảm bảo rằng phiên bản chính xác (ncurses hỗ trợ) được chọn làm mặc định cho dự án mà bạn khởi chạy ứng dụng của mình;

Tôi chắc chắn rằng bạn đã cài đặt cả 2.7 và 3.x trên máy của mình - tôi có hầu hết các vấn đề với pycharm trong trường hợp cả nhánh của Python được cài đặt.

5

Tôi đã giải quyết được vấn đề gỡ lỗi curses bằng cách đính kèm trình gỡ rối vào quy trình.

  • Bắt đầu chương trình trong một thiết bị đầu cuối
  • Pycharm -> Tools -> Đính kèm để trình
  • Chọn prog tôi
  • Xong

Đang cố gắng để đính kèm như không phải root đòi hỏi thêm ptrace quyền truy cập.

Giải thích ở đây: http://blog.mellenthin.de/archives/2010/10/18/gdb-attach-fails-with-ptrace-operation-not-permitted/#comment-141535

Trên máy tính ubuntu của tôi: echo 0 > /proc/sys/kernel/yama/ptrace_scope (như root)

lần lượt thiết lập ptrace_scope to 0 in /etc/sysctl.d/10-ptrace.conf