QDocの警告を解決する方法
QDocはドキュメント・セットを生成するときに警告を出すことがあります。このセクションでは、これらの警告の意味と解決方法について説明します。このドキュメントはClangによって生成された警告については説明していません。
<ターゲット>にリンクできない
QDocは、ドキュメントのある部分(警告メッセージで特定される)が他の部分を参照しようとしたときにこの警告を出しますが、その他の部分、つまりリンクのターゲットが正しく指定されていません。これは、その参照先がミスタイプされていたり、(関数や型の)名前や(別のセクションの)タイトルが変更されていたりするために発生します。
その特定のリンクターゲットについて、ソースコードを検索してください。結果が得られない場合は、一致するものが見つかるまで、徐々に検索を絞り込んでください。
リンク先が型や関数の名前に似ている場合、次のような原因が考えられます:
- ドキュメントで使用されている名前(関数の場合は、指定されている場合はシグネチャ)が、宣言で使用されている名前と一致しない。
- リンクテキストがそうでないのに、リンクターゲットが"内部 "とマークされている。
Found a \target command outside table item in a table
QDocは、テーブル内のテーブル項目の外にある "li "コマンドが前にない "target "コマンドに遭遇した場合、"endtable "ブロックを発行します。\table...endtableブロック内でliコマンドが先行しない"target "コマンドに遭遇すると、この警告を発します。この警告の後にテキストが続きます。
引用するスニペット・ファイルが見つかりません。
QDocがこの警告を発行するのは、"Cannot find snippetsfile to quote from"(引用するスニペットファイルが見つからない)です。
これを修正するための便利なステップをいくつか紹介します:
- スニペットファイル名が正しいか確認してください。QDocは、検索パスに指定された各ディレクトリにスニペットファイル名を追加して、検索する候補ファイルのパス名を取得します。これらの候補が存在しない場合、このエラーが発生します。
*.qdocconf
ファイルのexampledirs
コンフィギュレーション変数で指定されたスニペットの検索パスをチェックしてください。このパスにエントリーを追加するか、既存のエントリーを修正する必要があるかもしれません。- スニペット・ファイルが存在するか、移動、名前変更、削除されていないか確認します。これは、 QDoc が引用しようとするソース・コードに変更があった場合に発生する可能性があります。
予期しないスニペット
QDocは、"undocumented QML <文書化されていないQMLファイル>"または "undocumented QML <文書化されていないQMLファイル>"を引用しています。
文書化されていない QML <モジュール> が <タイプ> またはそのメンバによって参照されています。
QDocは、QMLタイプに関連付けられている、∕inqmlmodule または∕qmlpropertyコマンドに渡された識別子に基づいてQMLモジュールを見つけることができない場合、この警告を発します。
この場合、QMLタイプに関連付けられている QML モジュールを見つけることができま せん。このことは、その QML モジュールのドキュメントが存在しないか、ま たは誤ったモジュール識別子を使用していることを意味します。
QML <module> にそのような <type> がありません。
QDocがこの警告を発行するのは、QMLモジュール識別子が使用されているにもかかわらず、関連付けられ ているQML<type>がそのモジュールに属していない場合です。
QML モジュール識別子が定義されている場合は、QML タイプ・ドキュメンテーションの ㊟と一致しなければなりません。ほとんどの場合、QDoc はモジュール識別子がなくても QML 型を見つけることができます。
文書化されていない戻り値
戻り値の型が void でない関数の場合、QDoc はその戻り値が文書化されているかどうかを チェックします。この警告は関数やメソッドのドキュメントに "return "で始まる単語が含まれていない場合に出されます。
ドキュメント化されていないパラメータ
QDocは関数やメソッドのドキュメントにすべてのパラメーターを記述することを要求します。QDocは、(関数またはメソッドがヘッダーファイルで宣言されている場所で指定されている)各パラメーター名が"return "コマンドの後に表示されることでこれを認識します。
この要件は、関数のオーバーロードのドキュメントには課されません。 \overload
コマンドでマークされ、同じ名前を持つ完全に文書化された関数が存在する場合は、この要件は関数のオーバーロードの文書化には課されません。
そのようなパラメータはありません。
QDocがこの警告を発行するのは、ドキュメント化されている関数またはメソッドのヘッダーファイルの宣言で命名されたパラメーターのいずれとも一致しない場合です。
不明なマクロ
QDocは、バックスラッシュ(\
)の後に、組み込みコマンドまたはユーザー定義マクロの名前として認識できないトークンが続くと、この警告を発します。文字エスケープ・シーケンスを含むコードを引用するときは、エスケープ・シーケンスに対するこの警告を防止するために、その コードを「♪c{...}」で囲む必要があります。
関数シグネチャの解析に失敗しました。
コマンドに続く関数のシグネチャをClangが解析するとき、このシグネチャを \fn
コマンドに続く関数のシグネチャを解析するとき、ヘッダー・ファイルの宣言と照合します。Clangが矛盾を発見した場合、この警告メッセージが表示されます。
シグネチャは完全に修飾されていなければなりません。典型的な問題には、テンプレート引数、戻り値型、constなどの修飾子の欠落や誤りがあります。
注意: \fn
の隠れフレンドのシグネチャは、関数を宣言したクラスのスコープで完全修飾されなければなりません。
QML の型 <TypeName> は <ClassName> をネイティブ型として文書化されています。<ClassName>を<OtherClass>に置き換える
もし \nativetype
コマンドが同じドキュメント・プロジェクトに属する複数のQML型ドキュメント・コメントで同じ引数で使用されている場合、QDocはこの警告を発します。これを解決するには、\nativetype
コマンドを各 C++ クラスに対して一度だけ使用するようにしてください。
このドキュメントを何かに結びつけることができません
QDoc は /*!*/ トピック・コマンドのない /*!そのため、このコメントが何を文書化しているのかがわかりません。
この qdoc コメントには、トピック・コマンドが含まれていません (例: \module, \page)。
QDoc のコメントにトピック・コマンドが含まれていない場合、QDoc はそのコメントが何を文書化しているのか分からず、この警告を発します。Cannot tie this documentation to anythingとよく似ていますが、C++やQMLファイルにないコメントに特有です。
<名前>が複数回文書化されている
QDocは同じ項目を文書化した2つのコメントを見つけると、この警告を発します。前に見たコメントの場所は警告の詳細に記載されています。
例えば、関数の定義の前にドキュメント・コメントがあり、他の場所に別のコ メントがある場合、この警告が表示されます。
名前空間<name>が複数回ドキュメント化されています。
この警告は、ドキュメントセットに、同じ引数<name>を持つ"namespace "コマンドを含む2つのコメントが含まれていることを意味します。
<name>は文書化されていますが、名前空間<namespace>はどのモジュールにも文書化されていません。
<name>のドキュメントが見つかりましたが、<name>はドキュメント化されていないか、QDocがドキュメントを見つけられなかった名前空間の下で宣言されています。
これを解決するには、<namespace>を文書化するか、他のモジュールで既に文書化されている場合は、このモジュールがそのモジュールに依存していることを確認します。
dependsと{indexes-variable}{indexes}も参照してください。
indexes-variable}{indexes}も参照してください。
QDocのコメントで、クラス、名前空間、またはヘッダーファイルがモジュールに関連付け られていない場合、QDocはこの警告を発します。
QDoc のコメントで、他のエンティティ(通常はネームスペースやクラス)のメンバで ないエンティティを記述する場合は、それをより広いコンテキストと関連付けるために、 ˶´﹀`˵または ˶´﹀`˵ のどちらかを使用する必要があります。そうでない場合、この警告が発生します。
Cannot find <name> specified with \<command> in any header file.
これは、QDocがどのヘッダーファイルにも<name>の宣言を見つけることができないが、それを文書化すると主張するコメントを見つけたことを意味します。
例を挙げましょう:
Cannot find 'Color::Red' specified with '\enum' in any header file.
ドキュメント・コメントはenumを記述していると主張しているが、QDocはそのenumの定義をヘッダー・ファイルで見つけられなかった。
これは次のような理由によるものかもしれません:
- <name> や <command> のタイプミス。
- 名前空間またはクラス接頭辞の欠落
- <name>が別の名前空間またはクラスに移動した。
<identifier> の QML モジュール/タイプ修飾子が認識できない。
QmlModule::qmlType::identifier の組み合わせが、どこにも定義されていません。
例
Unrecognizable QML module/type qualifier for real QtQuick::DragHandler::DragAxis::minimum
DragHandler DragAxis というプロパティがありません。
<name>のプロパティタイプがありません。
プロパティタイプがありません。
例: <name> というプロパティがどこにも定義されていません。
正しくない:
\qmlproperty MyWidget::count
正しい:
\qmlproperty int MyWidget::count
QMLプロパティが複数回文書化されている: <identifier
QDocは、同じQMLプロパティを文書化した2つのQDocコメントを見つけたときにこの警告を表示します。
コマンド <command> は QML プロパティ・コマンドでは使用できません。
例
\qmlproperty real QtQuick.Controls::RangeSlider::first.value \qmlproperty real QtQuick.Controls::RangeSlider::first.position \qmlproperty real QtQuick.Controls::RangeSlider::first.visualPosition \qmlsignal void QtQuick.Controls::RangeSlider::first.moved() \qmlsignal void QtQuick.Controls::RangeSlider::second.moved()
エラー・メッセージ
Command '\\qmlsignal' not allowed with QML property commands
この警告はプロパティ・グループのドキュメントに特有のものです。QDocは、パスの最後の要素が<group>.<property>であるプロパティ・グループをドキュメント化するために、1つのドキュメント・コメント内で複数のqmlpropertyまたはqmlattachedpropertyトピック・コマンドを許可します。他のトピック・コマンドはこの警告を誘発します。
<クラス>内の<メソッド>の基底関数が見つかりません。
指定された名前とシグネチャを持つ仮想メソッドがベース・クラスに存在しない場合に、仮想メソッドのオーバーライドとしてメソッドをドキュメント化するために「the \reimp」が使用されると、QDocはこの警告を表示します。これは、オーバーライドするために書かれたメソッドがシグニチャを変更したか、仮想ではなくなったために起こる可能性があります。
<command>のドキュメント化された仮想関数がありません。
Qdocはこの関数が再インプリメントする関数へのリンクを作成しようとしましたが、リンク先が見つかりませんでした。これは、ベースクラスがこの名前とシグネチャを持つ仮想メソッドを持っていない場合にも発生します; 名前の変更、シグネチャの変更、ベースが仮想メソッドを宣言していない場合などに発生します。
<クラス>が自分自身を継承しようとします。
QMl型が他のQML型を継承していることを示すために使用します。この警告は、他のQML型が文書化されたQML型と同じ場合に発行されます。
例
\qmltype Foo \inherits Foo
\nativetypeコマンドは、QML型の中でしか使用できません。
このコマンドは、QMLタイプを文書化するQDocコメントでのみ使用できます。
グループ内のすべてのプロパティは、同じ型 <name> に属していなければなりません。
QMLプロパティ・グループを文書化する場合、コメント・ブロックにリストされているすべてのプロパティは同じQMLタイプに属していなければなりません。
Example <name> のプロジェクトファイルが見つかりません。
サンプルのソース・ディレクトリで、QDoc はCMakeLists.txt
という名前のプロジェクト・ファイルか、.pro
、.qmlproject
、.pyproject
という拡張子を持つファイルが見つかることを期待しています。例えば、examples/mymodule/helloworld/helloworld.pro
。
引用元ファイルを開けません:<ファイル名
<filename>の検索パスは、.qdocconf
ファイル内の以下の変数によって定義されます:sources
sourcedirs
およびexampledirs
。
QDocは、指定されたファイルから内容を取得するように指示するコマンド(\quotefromfile, ˶snippet, ˶include)で指定されたファイルを見つけられませんでした。検索パスで指定された各ディレクトリを検索します。これらのディレクトリのいずれにもこの名前のファイルがないか、ファイルは見つかったが読めない場合、QDocはこの警告を発行します。検索パスと<filename>の組み合わせが正しいスペルであること、ファイルの読み取りパーミッションがあることを確認してください。
注意: <filename>にはディレクトリ名のプレフィックスが含まれることがあります。<filename>全体が検索パスの各ディレクトリに付加されます。
(注)<filename>にはディレクトリ名の接頭辞が含まれていてもかまいません。
endrawコマンドは、生のマークアップ言語コードのブロックを区切ります。endrawコマンドは、生のマークアップ言語コードのブロックを区切ります。
マクロは、フォーマット固有定義とqdoc-syntax定義の両方を持つことはできません。
出力書式を指定する∕マクロは、一般的な定義も持つことはできません。
この警告をトリガーする設定の例:
macro.gui = \b macro.gui.HTML = "<b>\1</b>"
不明なコマンド <名前
QDocコメントがバックスラッシュの後にQDoc組み込みコマンドではなく、カスタム・コマンド・マクロとして定義されていないトークンを使用している場合、QDocはこの警告を生成します。コマンド名のスペルをチェックし、QDocのコンフィギュレーションにそれがカスタム・コマンドとして定義されているものが含まれていないかチェックしてください。
この警告はQDocのコメントで引用されたコードが原因で発生することもあります。例えば、作者がバックスラッシュをエスケープせずに、C言語の文字列の終端文字'\0'
、または'\n'
のような他のC言語の文字列のエスケープシーケンスの1つを参照した可能性があります。バックスラッシュを\
のようにエスケープして、ドキュメントにリテラルなバックスラッシュを含めるか、\c{...}
でコードフラグメントを囲んでください。これはバックスラッシュがQDocコマンドを導入していると解釈されないようにします。
重複したターゲット名 <target
この警告は、同じパラメータで2つのターゲットを定義した場合に表示されます。これらのコマンドのパラメータとして与えられるターゲット名は一意でなければなりません。警告の後に "The previous occurrence is here:[ここで location にはファイル名と行番号が含まれます。
qdocのインクルードファイル<ファイル名>が見つかりません。
QDocはコマンドで指定されたインクルード・ファイルを見つけることができなかった。QDocは検索パスで指定された各ディレクトリを検索する。これらのディレクトリのいずれにもこの名前のファイルがないか、その検索で見つかったファイルが読めない場合、QDocはこの警告を出す。検索パスと<filename>の組み合わせが正しいスペルであること、ファイルの読み取りパーミッションがあることを確認してください。
注意: <filename> はディレクトリ名のプレフィックスを含むことがあります; <filename> 全体が検索パスの各ディレクトリに付加されます。
<file>に<tag>が見つかりません。
これはQDocが識別子<id>をinclude<file>または{snippet-command}{snippet} <file>で見つけられないことを意味します。
<file>内の空のqdocスニペット<tag
スニペット<tag>が<file>内に見つかりましたが、空です。
コマンドをネストできません
この警告は、bold、italic、index、link、span、subscript、superscript、teletype、uicontrol、underlineの書式コマンドに関するものです。書式設定コマンドは、それが適用されるテキストの中では使えません。この例:
There is \b{no \b{super-}bold}. \encode \section1 Can't use <inner> in <outer> This warning is issued for commands that cannot be nested. Example: \badcode \list \li \table \row \li Hello \li Hi \endtable \endlist
QDoc警告 "Can't use ' \table' in ' \list'".
<inner> の前に <outer> がありません。
いくつかの例があります:
予期しない<end_command
この警告は、例えば、先行する︙listが ない︙endlistがある場合に発行されます。これは、ペアで来るすべてのコマンドに適用されます(startFoo/endFooなど)。
(例:startFoo/endFoo)
(例:startFoo/endFoo) ¦コマンドのタイトルはカンマで区切る必要があります。
マクロ <command> にデフォルト定義がありません。
QDocはマクロを展開しようとしており、そのマクロがデフォルト定義を持っていることを期待しています。マクロの中には、フォーマット固有の定義しか持たないものもあります。
例
macro.pi.HTML = "π" # encodes the pi symbol for HTML output format
しかし、マクロ展開がフォーマットに依存しないマクロを必要とする場合もあります。例えば、セクションタイトルにマクロを持つことができますが、それらはデフォルトの定義を持たなければなりません。
マクロ <macro> の引数が少なすぎる (expected <many>, got <few>)
指定されたマクロは、指定されたよりも多くのパラメータを必要とする。詳細はコンフィギュレーションのマクロ定義を参照のこと。
<text>の括弧がアンバランス
対応する')'がない'('、またはその逆を指す。
<name> のドキュメントがない
例
Warning "No documentation for QNativeInterface."
QDocはヘッダーファイルで名前空間QNativeInterface の宣言を検出しますが、その名前空間が文書化されているQDocコメントが見つかりません。
<class> にそのような enum 項目 <name> がありません。
例
Cannot find 'QSGMaterialRhiShader::RenderState::DirtyState' specified with \enum in any header file.
例: QDoc は、ドキュメント化された列挙型を宣言したヘッダー・ファイルで見つからなかった値を指定する ⽋数値ディレクティブを ⽋数値コメントで見つけると、この警告を発します。
<enum list> の <enum> 項目が文書化されていません。
ヘッダーファイルの <enum list> の宣言で指定されている<enum> の値が<enumlist> のエントリに含まれていません。
qhp.<project>.subprojects.<subproject>.indexTitle が見つかりません。
Qtヘルププロジェクトの設定で<subproject>のインデックスページとして指定されたページのタイトルをQDocが見つけられませんでした。
サブプロジェクトのインデックスタイトルは、現在のドキュメントプロジェクトにローカルでなければなりません。依存関係としてロードされた他のプロジェクトのページタイトルを使用しても、この警告が表示されます。
詳細は、「ヘルプ・プロジェクト・ファイルの作成」を参照してください。
\generatelist <group> が空です。
以下の表は、FAQの "Generatelist"に指定できるすべての引数の概要です:
- \を参照してください。
- \を参照してください。
- \をクリックします。
- \classbymodule <モジュール名>を生成します。
- \qmltypesbymodule <モジュール名>を生成します。
- \関数インデックス
- \generatelist法文
- \概要
- \generatelistの属性
- \generatelist関連
\generatelist <group>
を指定し、グループに項目がない場合、または\generatelist <group> <pattern>
を指定し、グループ内にパターンに一致する項目がない場合、QDoc はこの警告を発行します。
\そのようなグループはありません。
Generatelistの引数が存在しないグループである場合、この警告が表示されます。
例
\generatelist draganddrop
この文は、draganddrop グループのクラスまたは QML タイプのリストを生成します。クラスまたはQMLタイプは、\l {ingroup-command}{\ingroup} draganddrop
コマンドによって、その 깨class または깨qmltypeコメントでdraganddropグループに追加されます。
この\ingroup draganddrop
ステートメントを持つエンティティがない場合、QDoc はこの警告メッセージを発行します。
画像がありません: <imagefile
画像の検索パスが間違っているか、画像ファイルが存在しません。
<ターゲット>にリンクできません
これはさまざまな原因が考えられます:
- リンク・ターゲットがQDocトピック・コマンドで定義されていない。<target>で定義されていない。
- <target>にタイプミスがある。
- そのリンクターゲットを含むドキュメントがコンパイルされなかった。
- そのリンクターゲットを含むドキュメントがコンパイルパスにないモジュールにある。
- リンク・ターゲットが別のモジュールにあり、そのモジュールへの依存関係がコンフィギュレーションに設定されていないか、QDoc が依存関係のインデックス・ファイルの検索に失敗しました。
型 <name> の QML import 文を解決できませんでした。
QDoc は、QML タイプを文書化しているにもかかわらず、「inteqmlmodule」コマンドを省略すると、この警告を表示します。例
Could not resolve QML import statement for type 'ItemSelectionModel' \encode Incorrect: \badcode \qmltype ItemSelectionModel \nativetype QItemSelectionModel \since 5.5 \ingroup qtquick-models
正しいです:
\qmltype ItemSelectionModel \nativetype QItemSelectionModel \inqmlmodule QtQml.Models \since 5.5 \ingroup qtquick-models
\QMLインポート文の引数が完全なストップで終わっていません。
QDocは、QMLタイプを文書化しているにもかかわらずQMLinqmlmoduleコマン ドを省略すると、警告を表示します。また、簡潔でなければなりません。
QtDeclarativeがインストールされていません。
QDocがQMLの解析をサポートせずにコンパイルされた場合、この警告が表示されます。QDocのカスタムビルドでない限り、このようなことは起こらないはずです。
無効な正規表現 <regex
いくつかのQDocコマンドは正規表現をパラメータとして取ります。このようなパラメータとして与えられたテキストが有効な正規表現でない場合、QDocはこの警告を出します。通常は正規表現で特別な意味を持つ文字が含まれていて、エスケープされるべきであったためです。
例
notifications.qdoc:56: (qdoc) warning: Invalid regular expression '^})$'
\quotefromfile webenginewidgets/notifications/data/index.html \skipuntil resetPermission
無効な正規表現です:
\printuntil /^})$/
有効な正規表現です:
\printuntil /^\}\)$/
右中括弧と右括弧のみからなる行に出会うまで、printuntilコマンドは印刷する。この場合、中括弧と括弧は正規表現で特別な意味を持つため、エスケープする必要があります。
依存関係 <indexfile>:<depend> に複数のインデックスファイルが見つかりました。
依存関係 <depend> のインデックスファイルとして <indexfile> を使用しています。
複数の-indexdir
パスがコマンドラインオプションとして QDoc に渡され、1 つ以上に依存関係にマッチする.index
ファイルが含まれていました。QDocは自動的に最新のタイムスタンプを持つものを選びます。
通常、この警告は以前のドキュメントのビルドからビルドの成果物が残っていることを示しています。
依存関係 <depend> のインデックスファイルが見つかりません。
例
"QMake" Cannot locate index file for dependency "activeqt"
ドキュメンテーションプロジェクトのQMakeは、指定されたインデックスディレクトリのいずれにもactiveqt.indexを見つけることができませんでした。この場合、指定されたインデックスディレクトリはqmake.qdocconfで指定されています。
依存モジュールが指定されていますが、インデックス・ディレクトリが設定されていません。
QDocはコマンドラインに1つ以上の-indexdir引数があることを期待していました。これがないと、QDoc は 'depends' 設定変数で定義された依存モジュールのインデックスファイルを見つけることができません。
以前のdocを上書きする
QDocは同じ実体を記述しているように見える2つのコメントを見つけると、この警告を発します。前に見たコメントの場所は警告の詳細に記載されています。
認識できないリスト・スタイル <name
\listはオプションの引数を取ることができる。詳細は{list-command}{list}ドキュメントを参照してください。認識されない引数を使用した場合、QDocは次のような警告を発します。
Unable to parse QML snippet: <code> at line <y>, column <x>.
QDocのコメントにはQMLのコードを含めることができます。このコードはスニペットの中か、または{endqml-command}{endqml}で区切られたQDocコメントの中にあります。
例
QMLコードに構文エラーがある場合、QDocは警告を発します。
Unable to parse QML snippet: Syntax error at line 97, column 42
スニペットにもQMLを含めることができ、そこでもコードがチェックされます。例えばコードに中括弧がない場合、QDocは警告を発します。
Unable to parse QML snippet: Expected token '{' at line 63, column 52
QDocは不完全なQMLスニペットの解析に失敗することがよくあります。\という警告がQDocに表示されます。\endcodeに置き換えることで、この警告を抑制できます。
コマンド <command> はファイル <filename> の最後で失敗しました。
例
Command "\snippet (//! [2]) failed at end of file qmlbars/qml/qmlbars/main.qml".
この場合、警告は "ファイル "の終わりを示す2番目のラベル"//![2]"が見つからなかったことを意味します。また、このスニペットファイルでそのスニペットタグの出現が見つからなかったことも意味します。
もうひとつの例:
Command '\skipto' failed at end of file 'styling/CMakeLists.txt".
を押すと、そのパターンを含む次の行にカーソルが移動します。もし "Failed to open <file> for <file>"が見つからなければ、QDocは次のような警告を出します。
書き込みのために<file>を開けませんでした。
この警告は明らかに書き込みのためにファイルを開けないことを意味します。おそらくパスが間違っているか、特定のディレクトリでの書き込みパーミッションが原因でしょう。
このページタイトルは複数のファイルに存在します。
Ъタイトル・コマンドはページのタイトルを設定します。
\page activeqt-server.html \title Building ActiveX servers in Qt
特定のタイトルが複数のページで使用されている場合、QDocはこの警告を発行します。
コンテンツが長すぎます
QDocはソースファイルをトークン化する際に固定サイズのバッファを使用します。ファイル内の1つのトークンが最大制限文字数を超えている場合、QDocはこの警告を発します。
QDocはファイルの解析を続けますが、トークンのうちバッファに収まる部分だけが考慮されます。
この警告を解決するには、可能であれば分割するか、一部を削除して、関連するコンテンツのサイズを小さくする必要があります。
例えば、1つのトークンの最大文字数が警告の横に表示されます:
file.qdoc:71154: (qdoc) warning: The content is too long. [The maximum amount of characters for this content is 524288. Consider splitting it or reducing its size.]
注意: 長すぎるコンテンツは完全に解析されないので、QDocは誤検出の警告を出すかもしれません。他の警告を修正する前に、このタイプの警告をすべて解決してください。
グローバル・スコープの関数 <name> に対してドキュメントが生成されない
QDocは関数<name>のドキュメントをその宣言にマッチさせることができましたが、関数がグローバル名前空間で宣言されているため、出力が生成されませんでした。
relatesコマンドを使用して、関数をドキュメント化された型、名前空間、またはヘッダー・ファイルと関連付けます。この関数は、関連付けられた参照ページで関連する非メンバーとしてリストされます。
Documentation configuration for <project> doesn't define a help project (qhp)
有効な Qt ヘルプ設定がプロジェクトの .qdocconf ファイルで提供されていません。
ヘルププロジェクトファイルの作成と qhp も参照してください。
このプロジェクトのファイルがすでに生成されています。
プロジェクトのドキュメントを生成している間、QDoc は生成したファイルのファイル名を記録しています。QDocは書き込みのためにファイルを開くときに、そのファイルが現在の実行で以前に生成されたものであることが分かっている場合、警告を発します。これは \page
コマンドが \group
と同じ名前を使っている場合などに起こります。
環境変数QDOC_ALL_OVERWRITES_ARE_WARNINGS
を設定することで、このようなイベントに対して無条件に警告を発することができる。これは問題のある定義を追跡するときに便利です。
Cannot find qdoc include file <filename>andCannot open file to quote from: <filename>も参照のこと 。
© 2025 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.