2013-05-04 85 views
2

自從v1.6以來,我一直使用Doxygen成功爲一個大型的Fortran 90項目生成PDF文檔。在最近升級到Doxygen 1.8之後,pdflatex因我無法理解的錯誤而窒息。從refman.log:如何診斷由Doxygen 1.8.x生成的LaTeX中的錯誤:LT @ LL @ FM @ cr

. 
. 
. 
<use classfate__source_a022bf629bdc1d3059ebd5fb86d13b4f4_icgraph.pdf> 
Package pdftex.def Info: classfate__source_a022bf629bdc1d3059ebd5fb86d13b4f4_ic 
graph.pdf used on input line 607. 
(pdftex.def)    Requested size: 350.0pt x 65.42921pt. 
) 
(./classm__aerosol.tex 
! Undefined control sequence. 
<recently read> \[email protected]@[email protected] 

l.25 ...1833ffa6f2fae54ededb}{ia\-\_\-nsize}), \\* 

? ? 
Type <return> to proceed, S to scroll future error messages, 
R to run without stopping, Q to run quietly, 
I to insert something, E to edit your file, 
1 or ... or 9 to ignore the next 1 to 9 tokens of input, 
H for help, X to quit. 

縱觀前25行classm__aerosol.tex的,顯然沒有任何匹配的錯誤消息:

\hypertarget{classm__aerosol}{\section{m\-\_\-aerosol Module Reference} 
\label{classm__aerosol}\index{m\-\_\[email protected]{m\-\_\-aerosol}} 
} 


Contains general aerosol-\/related constants and routines. 


\subsection*{Public Member Functions} 
\begin{DoxyCompactItemize} 
\item 
subroutine \hyperlink{classm__aerosol_aa06c1f39c6bd34f22be92d21535f0320}{aerdis} (I\-A\-E\-R\-O, M\-A\-E\-R\-O, V\-O\-L, A\-R\-E\-A, M\-U, T\-G\-A\-S, R\-H\-O, A\-G\-A\-M\-M\-A, X\-L\-A\-E\-R, D\-M\-E\-A\-N, N\-A\-E\-R, X\-N\-D\-A\-E\-R, L\-S\-D\-A\-E\-R) 
\begin{DoxyCompactList}\small\item\em Return aerosol mass given a volume, based on aerosol size distribution function. \end{DoxyCompactList}\item 
real(kind=wp) function \hyperlink{classm__aerosol_a2dff4ff413057e8788fba7270a30c093}{lamsed} (V\-O\-L, H, M\-U\-G, R\-H\-O\-A\-E\-R, A\-G\-A\-M\-M\-A, A\-C\-H\-I, A\-F\-E\-O, K\-O, M\-A\-E\-R, F\-M\-A\-E\-R, F\-A\-E\-R\-S\-S, F\-S\-E\-D\-D\-K) 
\begin{DoxyCompactList}\small\item\em Calculate aerosol removal constant and interpolation factor between steady-\/state and decaying aerosol correlations. \end{DoxyCompactList}\item 
pure real(kind=wp) function \hyperlink{classm__aerosol_a6d0a04004f49c404c67e0aa69dd39ee1}{fdbend} (V\-E\-L, H\-S\-E\-D, T\-G, R\-H\-O\-G, M\-U\-G, R\-H\-O\-P\-A\-R, C\-A\-E\-R\-O, X\-D\-B\-E\-N\-D, N90\-J) 
\begin{DoxyCompactList}\small\item\em Find total impaction efficiency for aerosol deposition considering 90-\/degree bends in a flow path. \end{DoxyCompactList}\end{DoxyCompactItemize} 
\subsection*{Public Attributes} 
\begin{DoxyCompactItemize} 
\item 
integer, parameter \hyperlink{classm__aerosol_a8f604b7ffe3c1833ffa6f2fae54ededb}{ia\-\_\-nsize} = 30 
\item 
integer, parameter \hyperlink{classm__aerosol_ae71813ecf0c7768af9d6292efb14774f}{ia\-\_\-nmass} = 10 
\item 
real(kind=wp), dimension(\hyperlink{classm__aerosol_a8f604b7ffe3c1833ffa6f2fae54ededb}{ia\-\_\-nsize}), \\* 

沒有什麼明顯的最近看了塊「匹配\ LT @ LL @ FM @ cr「,我不知道有足夠的低級TeX將它翻譯成原文中可能實際存在的內容。

懷疑這個可能已經在Doxygen的一個更高版本中解決了,它比使用Linux Mint(v1.8.1.2)的那個版本更新了,我從源碼安裝了v1.0.3.1構建了&,更新了我的doxyfile,吹掉了舊的文檔並重新生成它。我得到相同的莫名其妙的錯誤。

在refman.log中沒有任何明顯的跡象表明丟失或破碎的LaTeX軟件包,而且我完全不知道是什麼導致了這種情況。

+0

首先在TeX文件的頭部添加'\ errorcontextlines = 9999'並重新運行TeX,然後用擴展的錯誤消息更新答案。但恕我直言,這應該致力於doxygen作者。 – 2013-05-04 13:21:19

回答

2

這將很難解決,除非您提供更多的信息 - 可能使用\errorcontextlines=9999如在問題的評論中所建議的。

作爲第一短雖然,無法找到的控制序列的名稱(即\[email protected]@[email protected])是一個由longtable package定義(documentation,第15頁。) - 從而增加:

\usepackage{longtable} 

到文件的序言可能會有所幫助。

如果是這樣,根據Doxygen文檔here,添加以下到您的配置文件應該做的伎倆:

EXTRA_PACKAGES=longtable 
0

作爲此獲得在谷歌一擊,當你搜索: doxygen missing $ inserted 我會喜歡添加一些東西。

請勿使用包含下劃線的PROJECT_NAME(_)!

在簡要介紹了doxygen的當前文檔(我正在使用1.8.4)之後,並沒有明確說明。