Segmentation fault during doxybook Finalizing step
ChoKaPeek opened this issue · 4 comments
Hi, thank you for this tool! I am trying to convert C# documentation from xml doxygen to md docsify.
Without configuration, feeding doxybook the docs/xml folder built by doxygen leads to a segfault.
The doxygen configuration is pretty much left as-is, apart from RECURSIVE (yes), GENERATE_XML (yes), and only matches ".cs" C# files.
I'm working in a CI environment, with:
- doxygen 1.8.17 from the hrektts/doxygen image,
- an unzipped doxybook 1.4 from releases
doxybook/bin/doxybook2 --input docs/xml --output docs/md
outputs:
[info] Using lookup template path: ''
[info] Parsing template: 'meta' from default
[info] Parsing template: 'header' from default
[info] Parsing template: 'details' from default
[info] Parsing template: 'footer' from default
[info] Parsing template: 'kind_page' from default
[info] Parsing template: 'index' from default
[info] Parsing template: 'index_pages' from default
[info] Parsing template: 'nonclass_members_tables' from default
[info] Parsing template: 'member_details' from default
[info] Parsing template: 'nonclass_members_details' from default
[info] Parsing template: 'kind_file' from default
[info] Parsing template: 'index_namespaces' from default
[info] Parsing template: 'index_groups' from default
[info] Parsing template: 'index_files' from default
[info] Parsing template: 'index_examples' from default
[info] Parsing template: 'breadcrumbs' from default
[info] Parsing template: 'kind_nonclass' from default
[info] Parsing template: 'class_members_tables' from default
[info] Parsing template: 'class_members_inherited_tables' from default
[info] Parsing template: 'class_members_details' from default
[info] Parsing template: 'kind_class' from default
[info] Parsing template: 'index_classes' from default
[info] Loading...
[ CUT ~500 loading lines all from docs/xml/*.xml ]
[info] Loading docs/xml/Director_8cs.xml
[info] Loading docs/xml/Mapper_8cs.xml
[info] Loading docs/xml/Range_8cs.xml
[info] Loading docs/xml/Mapper_2Searcher_8cs.xml
[info] Loading docs/xml/dir_14892ee5682954b5208e3fa15b085d3c.xml
[info] Loading docs/xml/dir_46f9f62428c69375097d90dd573fab7e.xml
[info] Loading docs/xml/App_8xaml_8cs.xml
[info] Finalizing...
/usr/bin/bash: line 115: 15 Segmentation fault (core dumped) doxybook/bin/doxybook2 --input docs/xml --output docs/md
I can't find a way to track down the origin of this error. Any help would be greatly appreciated!
Hi @ChoKaPeek Could you try to reproduce the bug with version 1.3.6 please? https://github.com/matusnovak/doxybook2/releases/tag/v1.3.6
Also, could you send me your XML files so that I can reproduce it locally? Thanks!
TLDR: I have had the same issue with doxygen 1.8.18 (and doxybook 1.4) and fixed it by upgrading to the latest doxygen version (1.9.2)
Error description:
- the output of doxygen in a class referenced itself as a base class
- this caused an issue in line 688 in your Node.cpp because you were finding yourself as a required base class recursively until a stackoverflow occured
I guess a quick check for this could be added to Doxybook2::Node::ClassReferences Doxybook2::Node::getAllBaseClasses(const NodeCacheMap& cache)
Hope this helps!
Hi, I have the same issue.
Doxyfile 1.8.17,
Default config file, but changed the following: RECURSIVE = YES, GENERATE_XML = YES, GENERATE_LATEX = NO, GENERATE_HTML = NO.
source2md | $ doxybook2 --input /app/IDL/xml --output /app/MARKDOWN/IDL
source2md | Segmentation fault
source2md | Failed to execute command doxybook2 --input /app/IDL/xml --output /app/MARKDOWN/IDL
See logs, config and my XML files below in zip
UPDATE:
I also tried generating XML with doxygen 1.9.4 (latest) and the XML output is the same.
then with doxybook2 (1.4.0) binary on alpine I get the same error Segmentation fault (core dumped).
Note: I installed doxybook2 (1.4.0) binary on windows and in the powershell it works. However, I need this working on Linux (alpine)..
A hinge, I am running this through an alpine docker container, and if I am not mistaken the problem I am having is the follwing:
A segmentation fault occurs when a program attempts to access a memory location that it is not allowed to access, or attempts to access a memory location in a way that is not allowed (for example, attempting to write to a read-only location, or to overwrite part of the operating system).
https://httptoolkit.tech/blog/how-to-debug-node-segfaults/
Next I will try to install from source to see if this yields different results
Hi. I am sorry but I have decided to archive this repository. More details in the repo readme.