2017-06-06 45 views
0

我有一個在cygwin中編譯的應用程序。 exe暫時崩潰。如果從cygwin終端運行exe,則會創建一個堆棧轉儲文件。如果exe被複制到cygwin1.dll以及exe崩潰的另一個文件夾中,則不會創建堆棧轉儲文件。如果未從cygwin終端運行exe,則不會創建stackdump

我想要創建一個堆棧轉儲文件,即使這個exe不是從cygwin終端運行。

這是如何實現的?

回答

0

當您從Windows或命令提示符啓動cygwin可執行文件時,通常不會設置CYGWIN環境變量。啓動cygwin終端的快捷方式或批處理文件有時會設置此變量。其中一個可由此變量設置的選項決定了應用程序崩潰時由Windows調用的程序。 /bin/dumper.exe程序會生成所需的堆棧轉儲。

要解決你的問題,我總是從控制面板,計算機性能的CYGWIN變量,先進的系統設置,環境變量,用戶變量。 (Win7 - YMMV)。例如。 CYGWIN=error_start=d:\cygwin64\bin\dumper.exe

更多信息請參見The CYGWIN Environment variable