doxygen - sphinx+breathe doxygenfunction only works for the function has declaration? - Stack Overflow

admin2025-05-02  0

I am new to sphinx and breathe, and I try a simple project

I add the index.rst

.. doxygenfunction:: main()
   :project: MyCProject

.. doxygenfunction:: add(int, int)
   :project: MyCProject

.. doxygenfunction:: subtract(int, int)
   :project: MyCProject

and doxygen Doxygen; make -c docs html, I got some warning

/tmp/test-sphinx-breathe/docs/source/index.rst:24: WARNING: doxygenfunction: Cannot find function "main" in doxygen xml output for project "MyCProject" from directory: ../../doxygen/xml

And there is also the same warning in the html, and I found if I mask the declaration of subtract() in the header, there will be

/tmp/test-sphinx-breathe/docs/source/index.rst:30: WARNING: doxygenfunction: Cannot find function "subtract" in doxygen xml output for project "MyCProject" from directory: ../../doxygen/xml

I try doxygenfile::main.c, and everything is fine, anything I miss?

I upload my whole project to github

Sphinx version: 7.3.7, and breathe version: 4.35.0

转载请注明原文地址:http://anycun.com/QandA/1746119749a91941.html