作者:qqjayzhe | 来源:互联网 | 2023-09-25 21:53
IhaveaCprojectIdocumentwithdoxygen.TheHTML-outputlooksok.WhenIgeneratelatexoutpute
I have a C project I document with doxygen. The HTML-output looks ok. When I generate latex output everything seems to work fine at first, too. When I run the "make.bat" generated by doxygen (for compiling the latex output to pdf) I get the error mentioned in the title.
我有一个C项目,我的文档是doxygen。html输出看起来好。当我生产乳胶的时候,一切看起来都很好。当我运行“make”时。由doxygen生成的bat(用于将乳胶输出编译成pdf),我得到了标题中提到的错误。
It always occurs when "Chapter 4" is being processed. Chapter 4 holds the data structure list. In the resulting pdf this chapter is empty. Obviously that's because this "annotated.tex" file is missing.
当“第4章”正在被处理时,它总是发生。第4章是数据结构列表。在结果的pdf中,这一章是空的。很明显,这是因为“注释”。特克斯文件丢失。
What went wrong here? Why is there no content being generated for this chapter? I don't even know where to start looking... Nothing in this regard struck my attention in the doxygen log.
这儿出了什么错呢?为什么这一章没有内容?我甚至不知道从哪里开始找…在这一点上,我没有注意到doxygen日志。
Is there a way to control which chapters with what content doxygen generates for latex at all? Is it somehow connected to the DoxygenLayout.xml file?
有没有一种方法可以控制哪些章节的内容是doxygen生成的乳胶?它是否与DoxygenLayout有关。xml文件吗?
Thanks in advance for any hints.
提前谢谢你的提示。
I use Doxygen version 1.8.9.1 for windows. I guess every C code that declares some sort of data structures can trigger this error. I used this for testing:
我使用Doxygen版本1.8.9.1进行windows操作。我想每一个声明某种数据结构的C代码都会触发这个错误。我用这个做测试:
common.c:
common.c:
/** @file
*
* Allgemeine Hilfsfunktionen, Implementierung.
* Siehe auch common.h
*
* @date Erstellt 08.10.2014 11:24:23
* @author Hans Wurst
*/
#include "common.h"
/// Array mit den Ziffern 0..F einer Hexadezimalzahl (ASCII).
const char hex_digits[16] PROGMEM = {'0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E', 'F'};
/// Versionsstring des Betriebssystems im Flash-Speicher.
const char mcu_version_str[5] PROGMEM = MCU_VERSION_STR;
/** Konvertiere vorzeichenlose 8Bit-Ganzzahl in 2 Zeichen String.
*
* String hat die Form "8F" (für n=8F). Kein abschließendes 0-Byte wird
* gesetzt.
*
* @param[in] n Vorzeichenlose 8Bit-Ganzzahl
* @param[out] dest Zeiger auf String, wo 2 Zeichen Hex-Zahl platziert werden
* soll.
*/
void to_hex_str(const uint8_t n, char *dest) {
// Code
}
common.h:
构成:
/** @file
* Allgemeine Hilfsfunktionen.
*
* Siehe auch common.c
*
* @date Erstellt 09.04.2014
* @author Hans Wurst
*/
/** @defgroup TEST_GRP
* Das ist einfach mal eine Testgruppe mit wenig Zeug...
*/
/// @{
#ifndef COMMON_H_
#define COMMON_H_
// **************** Definitionen ****************
/// Versionsstring des Betriebssystems
#define MCU_VERSION_STR "0.01"
/// 24Bit-Pointer-Typ
typedef uint8_t ptr24_t[3];
/// 32Bit dword-Typ mit verschiedenen Zugriffsmöglichkeiten.
union dword {
uint8_t byte[4];
uint16_t word[2];
uint32_t dword;
};
// Ende Definitionen
// **************** Variablendeklarationen ****************
#ifndef __DOXYGEN__
extern const char mcu_version_str[5];
extern const char hex_digits[16];
extern void to_hex_str(const uint8_t n, char *dest);
#endif
/// @}
#endif /* COMMON_H_ */
My doxyfile: http://pastebin.com/ZPqhsYSy It's mostly default stuff...
我的doxyfile: http://pastebin.com/ZPqhsYSy,它主要是默认的东西……
1 个解决方案