10

私は奇妙な問題に直面しています。Pycharm を使用して (この事実についてトローリングしないでください)、ncurses私の言葉でいくつかのものをレンダリングするために使用する短いアプリを起動しようとしています。

問題なく簡単な用語でプロジェクトを起動できますが、Pycharm から起動すると次のエラーが発生します。

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 

私が見る限り、すべては端末環境変数に関するものです。Pycharm は、ターミナルの独自のインスタンスからプロジェクト (実行またはデバッグ) を起動し、curses はそれでは機能しません。したがって、通常のターミナル内でプロジェクトを起動するように Pycharm を構成するにはどうすればよいか疑問に思っています。

プロジェクトは Python 2.7 を使用しています。Pycharm は EAP バージョン 129.258 です (安定版を含む他のバージョンでは動作しません)

ご清聴ありがとうございました。

K.

4

2 に答える 2

7

デバッガーをプロセスに接続することで、curses デバッグの問題を解決しました。

  • ターミナルでプログラムを起動する
  • Pycharm -> ツール -> プロセスにアタッチ
  • 私のプログラムを選択
  • 終わり

root 以外としてアタッチしようとすると、追加の ptrace アクセス権が必要になります。

ここで説明: http://blog.mellenthin.de/archives/2010/10/18/gdb-attach-fails-with-ptrace-operation-not-permitted/#comment-141535

私のubuntuマシンで:( echo 0 > /proc/sys/kernel/yama/ptrace_scopeルートとして)

それぞれ設定ptrace_scope to 0 in /etc/sysctl.d/10-ptrace.conf

于 2015-07-14T07:45:55.837 に答える
-1
  • PyCharm を起動し、ncurses が File->Settings->Project Interpreter->Python Interpreter にリストされていることを確認します。
  • 2.7 および 3.x インタープリターがインストールされている場合は、アプリケーションを起動するプロジェクトのデフォルトとして正しいインタープリター (ncurses をサポートするもの) が選択されていることを確認してください。

マシンに 2.7 と 3.x の両方がインストールされていることは間違いありません。両方の Python ブランチがインストールされている場合、pycharm でほとんどの問題が発生しました。

于 2013-06-10T07:47:14.810 に答える