1

レガシー プロジェクトを引き継いでいますが、コンパイルできません。taglib ツールキットの .TCC ファイルがあらゆる種類の例外をスローしています。私は C++98 と libstdc を使用しています。これにより、彼らから提供された他のプロジェクトの多くの問題が修正されました。ファイルをxcodeでC++ソースファイルに設定しました。プロパティにプレーンテキストとして含まれていたので、変更しました。ファイルの種類がどういうわけか Xcode をスローしていると推測しています。

いくつかのエラーは次のとおりです。

/src/ofxSoundTagReader/libs/taglib/toolkit/tlist.tcc:78:9: 'const TagLib::FileRef::FileTypeResolver' で削除が呼び出されました。これは抽象的ですが、非仮想デストラクタを持っています /src/ofxSoundTagReader/libs/taglib/ toolkit/tlist.tcc:41:32: 予期されるクラス名 /src/ofxSoundTagReader/libs/taglib/toolkit/tlist.tcc:51:27: 非テンプレート クラス 'List' の明示的な特殊化 /src/ofxSoundTagReader/libs/taglib /toolkit/tlist.tcc:51:36: 'ListPrivate' の定義または再宣言は、グローバル スコープに名前を付けることはできません /src/ofxSoundTagReader/libs/taglib/toolkit/tlist.tcc:50:1: テンプレートの特殊化または/src/ofxSoundTagReader/libs/taglib/toolkit/tlist.tcc:51:36: 変数 'ListPrivate' がテンプレートとして宣言されています

4

2 に答える 2

1

「tlist.tcc」には、「tlist.h」で定義されたテンプレート クラスの実装が含まれており、個別にコンパイルすることは想定されていません。クラス定義のみを含む「tlist.h」の最後にある d です
#include

于 2013-11-05T16:17:29.667 に答える
0

私は自分でそのエラーを受け取ったので、この質問に出くわしました。

問題は、TCC ファイルを「プレーン テキスト」モードに設定しても役に立たないということです。Xcode は何らかの理由でそれらを個別にコンパイルしようとします。

したがって、解決策は、「ターゲット」からそれらのファイルのチェックを外すことでした。そのため、それらをソースとしてコンパイルしようとしません。

心配しないでください。ヘッダー ファイルはそれらを参照し、ヘッダーとしてコンパイルされます。相互に完了してもエラーは発生しません...

于 2014-07-11T08:06:37.030 に答える