2017-07-11 15 views
2

私はコンパイルされた(C++)Pythonモジュールをデバッガしています。これは、dockerコンテナ内のインポート時に不思議にクラッシュします。私はgdb内のpython3を実行すると、私は唯一のDocker内のデバッグ制限は何ですか?

# gdb /usr/bin/pyton3 
GNU gdb (Ubuntu 7.11.1-0ubuntu1~16.04) 7.11. 
... 
(gdb) run -c 'import myModule' 
warning: Error disabling address space randomization: Operation not permitted 
During startup program terminated with signal SIGSEGV, Segmentation fault. 
(gdb) bt 
No stack. 
(gdb) 

(ない)ドッカーコンテナ内で何ができるか、GDB、いくつかの制限があります取得、その後インポートし、バックトレースを印刷しようか?クラッシュ自体は驚くべきことですが、それをさらにデバッグすることができません。モジュールはできるだけ多くのデバッグ情報を含めるために-ggdb2でコンパイルされます。

答えて

5

記録の場合:デバッグ(またstrace)にはCAP_PTRACE機能が必要です。問題は、--privilegedでコンテナを実行することによって解決されました。

関連する問題