我有基于2.4构建的自定义apache模块,并具有yaml解析逻辑。使用https://github.com/jbeder/yaml-cpp中的yaml-cpp。
当我启动apache时看到崩溃,并通过运行gdb apache2并运行-X backstrace在yaml库中显示崩溃。
使用gcc 4.4构建yaml-cpp 0.3。提前致谢。
我尝试了旧版本的yaml-cpp,没有运气
(gdb) run -X
Starting program: /usr/sbin/apache2 -X
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
AH00557: apache2: apr_sockaddr_info_get() failed for dnsdomainname
AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.0.1. Set the 'ServerName' directive globally to suppress this message
Program received signal SIGABRT, Aborted.
0x00007ffff7193c37 in __GI_raise (sig=sig@entry=6) at ../nptl/sysdeps/unix/sysv/linux/raise.c:56
56 ../nptl/sysdeps/unix/sysv/linux/raise.c: No such file or directory.
(gdb) bt
#0 0x00007ffff7193c37 in __GI_raise (sig=sig@entry=6) at ../nptl/sysdeps/unix/sysv/linux/raise.c:56
#1 0x00007ffff7197028 in __GI_abort () at abort.c:89
#2 0x00007ffff4e88535 in __gnu_cxx::__verbose_terminate_handler() () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
#3 0x00007ffff4e866d6 in ?? () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
#4 0x00007ffff4e86703 in std::terminate() () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
#5 0x00007ffff4e86922 in __cxa_throw () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
#6 0x00007ffff5f8712f in YAML::SingleDocParser::HandleBlockMap(YAML::EventHandler&) () from /usr/lib/x86_64-linux-gnu/libyaml-cpp.so.0.3
#7 0x00007ffff5f87b12 in YAML::SingleDocParser::HandleNode(YAML::EventHandler&) () from /usr/lib/x86_64-linux-gnu/libyaml-cpp.so.0.3
#8 0x00007ffff5f86a97 in YAML::SingleDocParser::HandleBlockMap(YAML::EventHandler&) () from /usr/lib/x86_64-linux-gnu/libyaml-cpp.so.0.3
#9 0x00007ffff5f87b12 in YAML::SingleDocParser::HandleNode(YAML::EventHandler&) () from /usr/lib/x86_64-linux-gnu/libyaml-cpp.so.0.3
#10 0x00007ffff5f880a8 in YAML::SingleDocParser::HandleDocument(YAML::EventHandler&) () from /usr/lib/x86_64-linux-gnu/libyaml-cpp.so.0.3
#11 0x00007ffff5f48e9d in YAML::Parser::HandleNextDocument(YAML::EventHandler&) () from /usr/lib/x86_64-linux-gnu/libyaml-cpp.so.0.3
#12 0x00007ffff5f48ef4 in YAML::Parser::GetNextDocument(YAML::Node&) () from /usr/lib/x86_64-linux-gnu/libyaml-cpp.so.0.3