C++ 通过cygwin生成核心转储
main.cppC++ 通过cygwin生成核心转储,c++,exception,cygwin,coredump,C++,Exception,Cygwin,Coredump,main.cpp #include <stdexcept> int main() { throw std::runtime_error("AAAA"); } 我在屏幕上看不到输出。我没有看到核心文件 我也跟着走了,但没有成功 似乎cygwin下也不存在ulimit 更新 ulimit-a的输出: 在CMD中: >ulimit -a 'ulimit' is not recognized as an internal or external command, oper
#include <stdexcept>
int main()
{
throw std::runtime_error("AAAA");
}
我在屏幕上看不到输出。我没有看到核心文件
我也跟着走了,但没有成功
似乎cygwin下也不存在ulimit
更新
ulimit-a的输出:
在CMD中:
>ulimit -a
'ulimit' is not recognized as an internal or external command,
operable program or batch file.
在bash中:
$ ulimit -a
core file size (blocks, -c) unlimited
data seg size (kbytes, -d) unlimited
file size (blocks, -f) unlimited
open files (-n) 256
pipe size (512 bytes, -p) 8
stack size (kbytes, -s) 2032
cpu time (seconds, -t) unlimited
max user processes (-u) 256
virtual memory (kbytes, -v) unlimited
刚刚检查过,由我创建的核心文件是完美的。请提供ulimit-a
的输出。除此之外,我不确定您有哪些路径,因此,请以/a.exe
的形式运行二进制文件,以获得指向它的显式路径。刚刚检查,我已经完美地创建了核心文件。请提供ulimit-a
的输出。除此之外,我不确定您有哪些路径,因此,请以/a.exe
的形式运行二进制文件,以获得指向它的显式路径。该路径是显式的,您是在CMD中还是在bash中构建和运行?这两种方法都经过了测试。cmd在导出
和ulimit
方面存在问题。它一个也不认识。但是,cmd和bash都无法创建核心转储。请同时检查进程的当前目录是否可写。同时,您还可以尝试在gdb下运行它,以查看代码是否真的生成了异常(可能您运行的二进制代码与源代码不对应)。。。让我们知道结果。还请包括当前目录的列表。请告诉我是否应该使用bash或cmd。另外,我应该确切地编写什么命令?路径是明确的,您是在CMD中还是在bash中构建和运行?这两种方法都经过了测试。cmd在导出
和ulimit
方面存在问题。它一个也不认识。但是,cmd和bash都无法创建核心转储。请同时检查进程的当前目录是否可写。同时,您还可以尝试在gdb下运行它,以查看代码是否真的生成了异常(可能您运行的二进制代码与源代码不对应)。。。让我们知道结果。还请包括当前目录的列表。请告诉我是否应该使用bash或cmd。我到底应该写什么命令?这能回答你的问题吗?这回答了你的问题吗?
$ ulimit -a
core file size (blocks, -c) unlimited
data seg size (kbytes, -d) unlimited
file size (blocks, -f) unlimited
open files (-n) 256
pipe size (512 bytes, -p) 8
stack size (kbytes, -s) 2032
cpu time (seconds, -t) unlimited
max user processes (-u) 256
virtual memory (kbytes, -v) unlimited